unknownskl / greenlight

Greenlight is an open-source client for xCloud and Xbox home streaming made in Typescript.
MIT License
2.21k stars 124 forks source link

Streaming at 1080p #973

Closed Shoaibr closed 9 months ago

Shoaibr commented 1 year ago

Hello,

System: Windows 11 Greenlight Build: v2.0.0-beta14 Network setup: PC and Xbox connected by wired on the same switch Problem: Greenlight not streaming at 1080p, feels like 720p. Local Bitrate: 0 (unlimited)

So I have my Xbox Series X and PC hardwired to the network having 1 gb/s connectivity with latency of almost a max of 1 ms or 2 ms. When I play a game using remote play on Moonlight it feels 720p resolution.

Similarly, I have also connected the Nvidia Shield TV device on the same switch which is streaming the game at 1080p with no problem using the XBXplay app.

Does Greenlight support 1080p resolution? Any suggestions?

Regards.

Kobi-Blade commented 1 year ago

There no options in Greenlight to increase quality, and even the official app quality is extremely low.

I know the Xbox Series X supports this, cause we can easily change the Stream quality on it when streaming to Twitch, and on Xbox One we could increase the quality for remote play.

Shoaibr commented 1 year ago

Yes even XBXPlay app is able to get stream at 1080p on android !

Am sure it can be implemented in greenlight as well with some effort ofcourse.

If any dev can give out suggestions!

It seems that the whole purpose of local bitrate settings is kind a misleading imo!

Kobi-Blade commented 1 year ago

As the option states is local bitrate, you asking to change the Xbox bitrate, cause is the Xbox streaming to your PC, so the option is not entirely misleading.

This is also a restriction set by Microsoft itself on the Xbox App and Xbox Series S/X, with Xbox One we had the option to actually change the Stream quality with the Xbox Companion App.

We need a way to tell Xbox to increase the Stream quality remotely.

Shoaibr commented 1 year ago

I am just curious how XBXPlay app is doing it then, Its also third-party app. Maybe its not officially disclose by Microsoft or something.

Does capturing traffic between XBXPlay and xbox helps in order to analyze? I can do that!

After checking other third party app currently available, have found following and all have 1080p support:

XBXPlay ( Android ) (1080p supported) XBPlay ( Android / iOS) (1080p supported) Onecast ( Mac ) (1080p supported)

unknownskl commented 1 year ago

Greenlight should stream at 1080p. You can verify this by enabling the debug menu (Bug icon when streaming on the top right) and then check for the video resolution (you can scroll in the list of text). There you should be able to confirm if it is 1080p. The quality is mostly determined by the Xbox. The bitrate selector is only for the client side.

Shoaibr commented 1 year ago

Greenlight should stream at 1080p. You can verify this by enabling the debug menu (Bug icon when streaming on the top right) and then check for the video resolution (you can scroll in the list of text). There you should be able to confirm if it is 1080p. The quality is mostly determined by the Xbox. The bitrate selector is only for the client side.

First of all thanks for this awesome application!

I am attaching the parameters snaps, I couldn't find anywhere saying video resolution. The nearest I could see is FrameHeight & FrameWidth.

image

image

image

Thanks for looking into it.

lyndonguitar commented 1 year ago

The stream itself looks pixelated even at 1080p. I wonder how can the quality be increased?

Shoaibr commented 1 year ago

The stream itself looks pixelated even at 1080p. I wonder how can the quality be increased?

Its not 1080 or is it?, the game shows blur menus etc.

This doesn't happen in other apps (thirdparty) i mentioned..

Kobi-Blade commented 1 year ago

That is due to bitrate and not resolution, which I covered above.

We would need to have a way to increase the bitrate on Xbox Series X itself, this is a system feature for sure cause we can do it on the Xbox Companion App (for Xbox One X).

I won't deny the quality is extremely low, but is using Microsoft default values (it looks just as bad on the official app).

Shoaibr commented 1 year ago

That is due to bitrate and not resolution, which I covered above.

We would need to have a way to increase the bitrate on the Xbox Series X itself, this is a system feature for sure cause we can do it on the Xbox Companion App (for Xbox One X).

I won't deny the quality is extremely low, but is using Microsoft default values (it looks just as bad on the official app).

Yes, Xbox is also the same but the question is how come other third-party apps have better results? Apart from that xbox companion app has been obsolete if you download it. It asks you to use the Xbox app.

So I started checking how the Xbox App setting works etc., and it seems it brings its json configuration from the following URL, (could be wrong) :

https://settings.data.microsoft.com/settings/v2.0/xbox/xboxapp

image

Doesn't this mean that the Xbox official app is running on very high quality?

Kobi-Blade commented 1 year ago

The Xbox Companion App is a requirement for remote play with Xbox One, since the Xbox App is exclusive for the Xbox Series.

I can guarantee the official Xbox App does not run on high quality, the quality is extremely low. I've had way better results with the Xbox Companion App on High Quality back when I was using remote play with Xbox One.

Plus keep in mind I'm not saying anything is possible or impossible, but just making it clear Greenlight is running on Default settings and doesn't offer us the option to change the Stream quality just like the Xbox app.

If you want my honest opinion, I would not recommend Greenlight with Xbox One since the Xbox Companion App gives us quality settings with way better results (as for Xbox Series, any help to give us the quality option on Greenlight would be appreciated).

unknownskl commented 9 months ago

It is not possible to increase the bitrate unfortunately. Greenlight uses a different protocol compared to the Xbox Companion App.