Sunday, 16 August 2015

Xbox App - Hidden "Very High/Low" Quality Setting & Other Manual Settings

I noticed a few posts and updates about OomaThurman's discovery of the hidden "Very High" quality setting. After a very brief poke around I noticed it wasn't only limited to this "Very High" setting.


http://i.imgur.com/8Lrw7TE.jpg

By adjusting settings.json, and forcing it to use the local version, you can also get "Very Low Quality" and edit more advanced quality settings, such as resolution, bandwidth, and max FPS.

Each time the Xbox App is started, it fetches various information from the Xbox server (app colors, non-editable profile information, etc). One piece of information is the general configuration containing various streaming settings. These settings are fetched from https://settings.data.microsoft.com/settings/v2.0/xbox/xboxapp and stored in C:\Users{USER}\AppData\Local\Packages\Microsoft.XboxApp_{...}\LocalState\settings.json. Microsoft wants this bit of configuration adjustable from their end without any large updates, so they programmed the Xbox App to fetch a "live" version of it from their server. If this "live" version doesn't exist, it resorts to using the local version. However, in most cases, an internet connection is available (if not required) when using the Xbox App.

The 'settings.json' file contains neat little tweaks, two of which include activating the otherwise unavailable "Very High" and "Very Low" streaming settings and individual advanced streaming quality adjustments. I haven't tested much else other than the "hidden" quality settings but if you're having quality issues, this may help out or it may not help at all. I'd also like to note that this small guide BLOCKS settings.data.microsoft.com, so it may cause configuration issues in the future..


Microsoft (most likely) plans on adding an interface for adjusting these settings in the future, however for the impatient, instructions on how to change these settings can be found below.

  1. Open "C:/Windows/system32/drivers/etc/hosts" in a text editor

  2. Add the line below to the end of the file

    127.0.0.1 settings.data.microsoft.com

  3. Save the edited file on your desktop

  4. Rename "C:/Windows/system32/drivers/etc/hosts" to "C:/Windows/system32/drivers/etc/hosts.old"

  5. Copy the saved "hosts" file to "C:/Windows/system32/drivers/etc/"

In the steps above, we've prevented your PC from contacting settings.data.microsoft.com. This prevents the Xbox App from fetching a fresh copy of settings.json and forces it to use the local version. You can now edit "C:\Users{USER}\AppData\Local\Packages\Microsoft.XboxApp_{...}\LocalState\settings.json" with your own configuration. After playing with a few settings, I was able to get the "Very High" and "Very Low" quality settings to work, without changing the "IsInternalPreview" toggle within userconsoledata.


You can activate the hidden quality settings by finding the following line...

"GAME_STREAMING_AVAILABLE_QUALITY_SETTINGS":"VeryHigh:FALSE,VeryLow:FALSE" 

And changing it to...

"GAME_STREAMING_AVAILABLE_QUALITY_SETTINGS":"VeryHigh:TRUE,VeryLow:TRUE" 

There are also per-setting adjustments...

"GAME_STREAMING_HIGH_QUALITY_SETTINGS":"8000000,720,60,59,0,10,40,170" 

... they can be used to fine-tune quality. The numbers represent values (bandwidth, resolution, max FPS, and so on). This may be of assistance to users with low-end PCs or anyone that just wants to poke around.

Of course there are more settings, such as the self explanatory one below that may prevent dropped connections...

"GAME_STREAMING_DROPPED_FRAMES_CUTOFF_PERCENT": "50.0" 

... or maybe something to check out promotions out of your region?

"PROMOTIONAL_CONTENT_RESTRICTED_REGIONS": "US|CA" 

As stated before, I haven't tested too much, so this may either be the tip of the iceberg, or a useless "tweak". Let me know what you find! Big thanks to OomaThurman for their discovery: https://www.reddit.com/r/xboxone/comments/3gq0pk/very_high_settings_in_xbox_streaming/



Submitted by h00k3d0nchr0n1cz Xbox 720 Release Date 2015

No comments:

Post a Comment