New

Client Monitor EDID Tampering/Artificial Resolution & Refresh Limiting


Userlevel 3
Badge +1

Issue/Describe the bug
Client monitor EDID information is no longer being correctly passed to Shadow VM - Results in the following issues:

1. unable to set custom resolutions in nvidia control panel after launching client
2. maximum resolution/refresh seems to be artificially limited on anything over 1440p- (DQHD, 5k2k, and 5k monitors no longer work with Shadow)
3. “impersonated” EDID loaded in Shadow VM only allows 1080p when client monitor exceeds some new artificial limiter and “always match shadow resolution with local display” is checked in the client

 

Applications/Devices:
MacOS

Versions:
Current Versions of Alpha, Beta, and Official

Steps to Reproduce:

  1. Using a Monitor Higher Than 2560x1440 (Tested 3440x1440@120, 5120x1440@120, 4096x2160@60&144, 5120x2280@60)
  2. Launch Shadow and select “always match shadow resolution with local display” in the client settings
  3. Choose a custom resolution in the above ranges
  4. Note that the client monitor information is not passed to the VM
  5. Note that the VM does not show all client monitor supported resolutions
  6. Note that the “create custom resolution” button in the Nvidia Control Panel is greyed out

Additional Notes

  • The local monitor EDID information is no longer being passed to the VM correctly - In any scenario, the Nvidia Control Panel shows a generic “BladeShadow” or “Digital Display” monitor type of HDMI - HDTV type.
  • Exporting the local EDID file and importing it into the Shadow VM causes monitor information to be correctly displayed and type DisplayPort - PC Display, but some process, I think “Shadow Impersonator” is tampering with this after it is loaded
  • See attached screenshots and EDID files - https://www.dropbox.com/s/qw1dae01iilp0gq/ShadowResolutionBugInfo.zip?dl=0
  • I am available on the Shadow English Discord @Powell#1412 for live demonstration of the issue and help troubleshooting

23 replies

Userlevel 3
Badge +1

Still broken with latest beta update this morning - client tries to set the native resolution/refresh, then falls back to 1080p/60.

 

Client correctly detects native monitor resolution and attempts to set it
New ARTIFICIAL LIMITER kicks in and drops resolution/refresh back to 1080p/60

 

Userlevel 3
Badge +1
When adding a 2nd monitor - The client correctly identifies screen resolution and refresh rate, but the ARTIFICIAL LIMITER prevents it from being set in the Shadow VM

 

Userlevel 3
Badge +1
Native Resolution/Refresh Rate no longer possible on 2021 Macbook Pro 16.  The Client detects the correct settings (pictured above), but the new artificial limiter blocks it from being set in the Shadow VM.

 

Userlevel 4
Badge +4

Hey there @Powell, the bug about being locked into 1920 x 1080 should now be resolved on our latest Beta update. 

Userlevel 3
Badge +1

Hey there @Powell, this issue should now be resolved on our latest Beta update. 

It is not fixed.  The issue persists in alpha, beta, and official versions as of the time of this post. 

Support updated ticket 922269 this morning and indicated that they believe that this was an intentional change and that they had forwarded the details, including information posted here, to development.  Once they hear back from the development team, they are supposed to update the ticket.

The official word from support is that these devices were never officially supported, and the fact that they have been working for 2+ years is inconsequential. Now that development has made changes to the software to specifically exclude them does not constitute a bug, but they have forwarded the information to development for confirmation.

Userlevel 4
Badge +4

Although, Shadow might be able to detect the resolution of your monitor, this does not mean Shadow can support that specific resolution. Shadow has never supported resolutions above 4K (3840 x 2160). 

 

Shadow can only support up to 144Hz at 1080p. If you are using resolutions above 1080p up to 4K, then your refresh rate can only be 60Hz. Please change your frame rate to 60 for any resolution above 1080p in your launcher settings. This is also mentioned in the “About the Usage Stats Panel” help center article under the frame rate section:

 

Shadow can display up to 144FPS (frames per second) on screens with a 1080p resolution. 4K resolution screens can display up to 60FPS. To set a frame rate for Shadow, Open the Quick Menu and click the Display tab.

 

To clarify my comment above, our developers released an update on April 5, 2022 on our Beta app that should resolve the issue with your Shadow being locked into 1920 x 1080. You should now be able to use different resolutions that Shadow can support properly.

 

You can also try setting a custom resolution using the Nvidia Control Panel, but I am unable to guarantee that will work properly. 

Userlevel 3
Badge +1

The difference here is that you are just quoting the same document support has.  There is a BIG difference between “officially” supported as documented vs supported as in “it works fine”.  The higher resolutions and refresh rates have been “working fine” on Shadow for years (since h.265 encoding was introduced).  
 

It is a FACT that the platform supports these higher resolutions and refresh rates.  They have been “working fine” for YEARS.  
 

It is also a FACT that this previously working functionality has been disabled.  
 

So regardless of what the support document says, this change reduced the capabilities of the platform.  
 

I just want a definitive answer from the developers that the decision to break something that has worked fine for a long time was intentional, or if it is an unintended effect of another change (a bug).  If it’s a bug, I’d also love to know when I can expect an update to the alpha client.  

Userlevel 3
Badge +1

Update - Shadow now BSOD when checking “Always match shadow resolution with local display” on the monitor types identified above.

This is occurring in all versions (Official, Beta, and Alpha) on MacOS per the above conditions.

This is also reproducible with a fresh install (after reset your shadow is invoked)

Can you please stop tampering with the EDID and just pass it through to the Shadow VM like before the last major update to display management that broke everything?

Userlevel 3
Badge +1

I found a workaround to the bug I identified earlier in the automatic display management feature.  I had speculated that the EDID tampering being done by the ShadowImpersonator processes was the root cause of the issue, and have now been able to prove that out. 

See the attached screenshots below of my Shadow (official version) operating just fine again at 5120x1440@120hz.

 

Hi Powell, 

Could you share the workaround? I would also like to test it out, to check if I can enable native resolution at 120Hz on my iPad Pro. Thx.

 

Userlevel 3
Badge +1

Hi Powell, 

Could you share the workaround? I would also like to test it out, to check if I can enable native resolution at 120Hz on my iPad Pro. Thx.

 

Warning - this requires a fair bit of technical knowledge and if you mess up you may brick your shadow and need to reset it.

  1. First, you need an EDID file in hex format - This will just end up being a text file with contents that look like “00 FF 6D 50… etc”  It is important that the file format be hex with spaces between the values for the import to work correctly.  You can download binary versions of many monitor EDID files at https://edid.tv/manufacturer/ and convert them to hex, or you can use a tool like AW EDID Editor to create or modify one you already have.  For my Samsung monitor, I just downloaded the file (https://edid.tv/edid/787/) and used the command “xxd -p C49RG9x_1129797209.edid > edid.hex” on my mac to convert it to hex.  Note:  I did need to modify the output to add spaces between the hex values after conversion”
  2. Now that you have your properly formatted EDID file, you can import it into your Shadow.  Open Nvidia Control Panel and click on “View System Topology” under “Workstation” in the left hand menu. 
  3. Click the “EDID” link next to one of the “DisplayPort” items
  4. Select the “Load” tab and browse to the EDID file you created in step 1 and click the checkbox next to DisplayPort(1) to load it - If you get some kind of error here, its probably because the file isn’t formatted correctly.
  5. Click the EDID link again, and select the “Unload” tab and check the checkbox next to the item that says “BladeShadow” then click the “Unlaod EDID” button at the bottom.
  6. To enable persistence between reboots/streaming restarts, disable the “ShadowImpersonatorWatchdog” service.  *Warning - if you do this, and you use multiple devices, you will need to manually load the correct EDID file for each device when you start up each time.

Thanks, but looks like this will only work for external monitors and not for enabling 120Hz on the iPad Pro - correct? 

Userlevel 3
Badge +1

Thanks, but looks like this will only work for external monitors and not for enabling 120Hz on the iPad Pro - correct? 

No, this workaround will work for any device.  All you need is an EDID with the right settings.  

Edit: Here is a working EDID for an iPad Pro 2018 11inch for 120hz:

00 ff ff ff ff ff ff 00 09 84 01 01 b2 57 87 02 ff 1d 01 04 a5 3d 23 78 06 ee 91 a3 54 4c 99 26 0f 50 54 21 08 00 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 06 34 80 50 70 38 1f 40 08 20 38 00 00 00 00 00 00 1a 00 00 00 fc 00 42 6c 61 64 65 53 68 61 64 6f 77 0a 20 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 19 cc 54 50 90 84 62 60 08 20 38 00 00 00 00 00 00 1a 01 fb 02 03 1c 40 23 0f 04 01 83 01 00 00 67 03 0c 00 20 00 78 44 67 d8 5d c4 01 78 00 07 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b2

Edited the default EDID and just fixed the refresh rate

 

Thanks a lot, looks like without the EDID, the beta version (v3.2.3) supports native 120Hz on the 11“ iPad Pro. But the same doesn‘t work on the 12.9“ iPad Pro. I searched the internet and couldn’t find a EDID for the 12.9“ iPad Pro. Do you have a working EDID for the 12.9“ iPad Pro? That would be very helpful. 

BTW, for some strange reason setting 120Hz (even on 1080p) did not work on my 11“ iPad Pro today. So I used your EDID file, followed the steps and it worked! Thanks for the tip. 

If you could upload a 12.9“ iPad Pro 120Hz EDID file, that would be fantastic. 

Added 120Hz using CRU Tool

After spending a lot of time researching on the internet and looking at forums, I finally managed to setup 120Hz on my iPad Pro 12.9” by using the CRU tool. But the gaming experience was not that great, I guess thats due to the NVIDIA Quadro P5000 GPU. It wasnt smooth, and when I changed it to 1440p at 120Hz, the gaming experience was much better. Looks like 1440p is the sweet spot for 120Hz for this GPU. 

 

BTW, if others would also like to try it on their iPad Pro 12.9”, here is the EDID: 

00 FF FF FF FF FF FF 00 09 84 01 01 B2 57 87 02
FF 1D 01 04 A5 3D 23 78 06 EE 91 A3 54 4C 99 26
0F 50 54 21 08 00 01 01 01 01 01 01 01 01 01 01
01 01 01 01 01 01 06 34 80 50 70 38 1F 40 08 20
38 00 E0 0E 11 00 00 1A 19 CC 54 50 90 84 62 60
08 20 38 00 55 A1 21 00 00 1A B9 8A AC 50 A0 00
3B 80 08 20 38 00 AB 00 22 00 00 1A 00 00 00 FC
00 42 6C 61 64 65 53 68 61 64 6F 77 0A 20 03 12
02 03 1C 40 23 0F 04 01 83 01 00 00 67 03 0C 00
20 00 78 44 67 D8 5D C4 01 78 00 07 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 B2
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
70 20 79 00 00 22 00 14 44 33 0B 00 AB 0A 93 00
2F 80 1F 00 FF 07 4C 00 02 80 03 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 C2 90

I cannot seem to get this workaround to work, and I have been fiddling on trying to get my 5120x1440 monitor to work with shadow since forever. I upgraded to the infinite tier to try and improve things, and that just made it worse.

Can you share your working edid file? I can’t seem to edit the edid you suggested.

Hi all,

after the second round with the Shadow Support after I was allowed to successfully switch to the long awaited Power Upgrade last week, I unfortunately had to realize the limitation with 5120x1440 still exists even for the Power Upgrade. 3840x1080 is the only resolution I can get activated on my AOC AG493US3R4. It looks blurry, of course. Unfortunately, Shadow Support has only commented to me as well, they understand my / our problem. When an official solution will be available, but they could not tell me either. Had the workaround via EDID file just tested with me, but would not work with the full resolution of 5120x1440 with me. Can someone tell me what I am doing wrong?

EDID AG493US3R4:

00FFFFFFFFFFFF0005E301A33A000000
231F0104B57722783F7EE1AC4F46A727
125054BFEF00D1C081803168317C4568
457C6168617C0E6900B4F03823403020
3A00A84F4100001A000000FF00515650
4D394A41303030303538000000FC0041
4734393355533352340A2020000000FD
0030A5FAFA8C010A2020202020200282

If I don't find a solution in the next month that works well for me, that's the end of Shadow for now. It wouldn't be worth the upgrade to me anymore if I can't use the full resolution of my main monitor. And just that would be a shame, because then the only thing left is the classic local PC next to my Macbook Pro, which I really didn't want anymore. 😫

 

@F1REF1GHT3R As @Powell mentioned here, the hex values needs to be spaced. 2 digits space 2 digits space …, then it should work. Also no line breaks, just hex values. 

Btw. i tested this EDID workaround also for my 360hz (ASUS one) monitor. It works fine. Because i cant match my local monitor refresh rate with the shadow one, because it’s switching to the fallback of 60 FPS.

I currently use the 240 FPS setting in the shadow app, because this is also working fine for me. 

Thank you @dufte I tested with your help. I can Import the EDID File now - get a resolution of 3840x1080 by default. After tried to change it to 5120x1440 and get in any case a BAD_POOL_CALLER Bluescreen. 😫 can it be so difficult? 

@F1REF1GHT3R You should also contact the support, Maybe it will be taken more seriously now. Best to give a link to this forum post as well. You can't use your desired resolution through your monitor and I can't use my refresh rate from my monitor.

But what you could test is a newer Nvidia driver (the Game Ready one). All windows updates installed?

@dufte thanks for the fast reply. I Test with the latest W10 on 22H2 and latest patchlevel. Also with the latest Nvidia Drives installed with Nvidia. I am working in the IT and it feels like I somehow totally stupid in this case?! , although I'm not convinced of the workaround in the long term either for exactly the same reasons that we're experiencing at the moment. Today it works, tomorrow it doesn't.... Well, no official support.

I just want to Support Shadows Mission because I like this really. There is no other good solution like shadow if you don’t want to play mainstream games. If I don’t get a solution in the next month, I will leave shadow and for this stupid reason it is annoying. But it's not so cheap that I want to accept my monitor as a standard gaming station with black bars or low resolution...


I have contacted the Shadow Support now twice. After the migration to the OVH Datacenter in germany with the old Standard Shadow and now also with the Power Upgrade. Support show me this forum post. And after multiple Attempts, I get only this answer:

 

(Shadow) 2 Nov. 2022, 16:03 CET

Hello Micha,
 
Thank you very much for your message.
 
I can completely understand your point of view.
 
That's why we don't recommend tinkered workarounds as an official solution.
 
Currently, we do not offer an official way to set a higher resolution via Shadow.
 
Our development team is trying to make these resolutions possible again for Shadow, but we do not know when they will officially work again.
 
We're sorry that we can't offer you another solution to this problem at the moment.

@F1REF1GHT3R That's not so good, of course, especially if there's no ETA for it. Maybe you could try to draw attention to it at the livestream event. At the end, questions can be asked there, which they respond to. I had asked about Windows 11, which is supposed to come at the beginning of next year. Windows 11 would also be worth another test with this EDID workaround, if you want to wait that long.

Reply