Closed drewmullen closed 1 week ago
Also getting the same issue
Hi!
I recently pushed a new version of the script that’s fixed the issue.
Please update the repo with git pull
then install Virtual Display Driver again to fix the issue.
Also the command for executing the script has changed. Please see the README.md.
Unfortunately no change for me with the changes. I've been debugging and seems to be coming from the Virtual display ps1 script.
This line in particular
pnputil /enable-device /deviceid root\iddsampledriver
Running it by itself to try and turn on my virtual display hits the same error in a console. So I'm guessing it's something to do with the name of the device which I'm not familiar with. I will raise on that repo too.
Go to Device Manager and completely uninstall the IddSampleDriver
device then execute the AIO tool again and install only Virtual Display Driver.
Tried a fresh install of everything and have ended up with no logging from the sunshine virtual monitor. But found in sunshine I'm getting this log:
Error: [powershell.exe -executionpolicy bypass -windowstyle hidden -file "C:\Sunshine-AIO\tools\sunshine-virtual-monitor-main\sunshine-virtual-monitor-main\setup_sunvdm.ps1" %SUNSHINE_CLIENT_WIDTH% %SUNSHINE_CLIENT_HEIGHT% %SUNSHINE_CLIENT_FPS% %SUNSHINE_CLIENT_HDR% > "C:\Sunshine-AIO\tools\sunshine-virtual-monitor-main\sunshine-virtual-monitor-main\sunvdm.log" 2>&1] failed with code [1]
Still trying to debug to see if I can find more info
Edit:
Running this line from the script:
pnputil /disable-device /deviceid Root\\IddSampleDriver
Ends up with a similar issue to before:
`PS C:\Sunshine-AIO> pnputil /disable-device /deviceid Root\IddSampleDriver Microsoft PnP Utility
PNPUTIL [/add-driver <...> | /delete-driver <...> | /export-driver <...> | /enum-drivers | /enum-devices [<...>] | /enum-interfaces [<...>] | /disable-device <...> | /enable-device <...> | /restart-device <...> | /remove-device <...> | /scan-devices [<...>] | /?]
Commands:
/?
Show usage screen.
/disable-device
Disable devices on the system.
/reboot - reboot system if needed to complete the operation.
Examples:
Disable device:
pnputil /disable-device "USB\VID_045E&PID_00DB\6&870CE29&0&1"`
Having the same issue, but if I enable/disable the IddSampleDriver - then it suddenly works normally to turn it on and off, but lasts only until the next restart
same issue here:
Setting up a moonlight monitor with 2560x1440@120 with hdr on
Enabling the virtual display.
Microsoft PnP Utility
Failed to enable device: ROOT\DISPLAY\0000
The device is not connected.
Setting up the virtual display and disabling other displays.
Disabling all other displays.
Failed to disable all other displays.
At F:\Sunshine-moonlight\sunshine-virtual-monitor-main\setup_sunvdm.ps1:74 char:9
+ Throw "Failed to disable all other displays."
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : OperationStopped: (Failed to disable all other displays.:String) [], RuntimeException
+ FullyQualifiedErrorId : Failed to disable all other displays.
The issue was solved with the new release.
Sunshine-AIO
, open a Windows Terminal and run the following command to get the latest release of the script:
git pull
Device Manager
and make sure to tick the Remove the driver
.Sunshine AIO Tool
script with the following command :
virtualenv-python-sunshine-aio\Scripts\python.exe src\main.py
3. Download and Install Virtual Display Driver
The problem should be solved now.
If you still have issues, try to run the install everything part and skip the Sunshine installation part by canceling the installation when it's prompted.
For me this setup repo works correctly but all the issues I have are on connection in the sunshine-virtual-monitor.
I've started fresh today to make sure and pulled this code along with latest running instructions.
My first issue is with pnputil /enable-device /deviceid root/iddsampledriver
in the setup_sunvdm.ps1 script. It doesn't like the /deviceid parameter and returns the above help usage instructions I've posted above, if I change this to my actual virtual display instance id it works:
pnputil /enable-device ROOT\DISPLAY\0000
The script then looks for a display source description matching "IddSampleDriver Device HDR" I've logged out each description and all of mine are NVIDIA GeFore RTX 3070 so it never sets the vdDisplay variable.
And then because of that when it tries to set the primary monitor and disable all the others it fails as the vdDisplay is empty.
@LeGeRyChEeSe switching to the script in your branch dev-AIO
fixed this issue for me. However, I had to re-set the Execution-Policy and run Unblock-File again, just FYI.
I also ran into an issue where I had to restart my PC while playnite was on and the ldd driver wasnt disabled properly... basically i had to boot into safe mode to disable it so the PC would start up properly. Is this the only way to solve that kind of issue or is there something else I can do?
The new release is out and coming with a lot of fixes. Take a look and to get a fresh install you should execute the program again because of some bugs and some issues fixed now.
The new release is out and coming with a lot of fixes. Take a look and to get a fresh install you should execute the program again because of some bugs and some issues fixed now.
fair, but how do I clean uninstall first?
You don’t need to uninstall anything. Just execute the program.
I am still having the same issue. It seems that the issue is that when my PC is restarted, the Virtual Display Device (VDD) is considered Disconnected
, rather than simply Disabled
(notice the status):
$ pnputil /enum-devices /class Display
Microsoft PnP Utility
Instance ID: ROOT\DISPLAY\0000
Device Description: IddSampleDriver Device HDR
Class Name: Display
Class GUID: {4d36e968-e325-11ce-bfc1-08002be10318}
Manufacturer Name: <Your manufacturer name>
Status: Disconnected
Driver Name: oem43.inf
If I try to enable the VDD or start a sunshine stream right now, I get the same error:
$ pnputil /enable-device /deviceid root\iddsampledriver
Microsoft PnP Utility
Failed to enable device: ROOT\DISPLAY\0000
The device is not connected.
If I then manually enable and disable the monitor in the Device Manager, the status of the Virtual display changes from Disconnected
to Disabled
and now it works:
$ pnputil /enum-devices /class Display
Microsoft PnP Utility
Instance ID: ROOT\DISPLAY\0000
Device Description: IddSampleDriver Device HDR
Class Name: Display
Class GUID: {4d36e968-e325-11ce-bfc1-08002be10318}
Manufacturer Name: <Your manufacturer name>
Status: Disabled
Driver Name: oem43.inf
$ pnputil /enable-device /deviceid root\iddsampledriver
Microsoft PnP Utility
Enabling device: ROOT\DISPLAY\0000
Device enabled successfully.
Now I can successfully start a moonlight stream without error. This is only true until I restart my computer, at which stage the VDD goes back to Disconnected
.
No idea how/what controls the "disconnected" status of the device. Any tips?
I managed to enable 'Disconnected' display by running this command
Get-PnpDevice -FriendlyName 'IddSampleDriver Device HDR' | Enable-PnpDevice -Confirm:$false
You may want to try and replace line 34 of file setup_sunvdm.ps1:
Write-Host "Enabling the virtual display."
Get-PnpDevice -FriendlyName 'IddSampleDriver Device HDR' | Enable-PnpDevice -Confirm:$false
This may not be needed, but I also replaced line 6 of file teardown_sunvdm.ps1:
Write-Host "Removing the moonlight display."
Get-PnpDevice -FriendlyName 'IddSampleDriver Device HDR' | Disable-PnpDevice -Confirm:$false
@MarcioFCMartins Thank you for the analyze, i didn’t know this particularity !
@vincjl Thanks you for the fix, this is very helpful !
I'm analyzing and adjusting the code for Sunshine Virtual Monitor. It contains a few imperfections that create a lot of mistakes for many of you. I'll test the commands and integrate them into the script if I don't have any problems.
Thanks for putting all this together. I am getting the following error in
sunvdm.log
when trying to start a stream:sunshine main dir:
device manager: