Sunshine icon indicating copy to clipboard operation
Sunshine copied to clipboard

Error: DuplicateOutput Failed, 0x80070005

Open rubin55 opened this issue 3 years ago • 6 comments

Describe the Bug

I have Sunshine 0.14.0 set up, on a Windows 10 host, with a Radeon 6900XT. I access the host using Moonlight 3.2.0, on Linux (void, Linux kernel 5.18.5).

I verified everything works ok: I can access the Windows desktop, 4k, 60fps. I can flawlessly work and stream audio, play some video through VLC. I also tested a few games, like Skyrim and Sekiro, which worked flawlessly also, no lag, super low latency.

When I try and play Assassin's Creed: Odyssey, I start from Steam. Looking at Process Explorer, I see the ACOdyssey.exe being suspended and "handed" over to Uplay (I.e., some weird stuff going on there with the Ubisoft launcher, the parent process changes essentially). After that, Assassin's Creed: Odyssey loads, I see a few movies that I can click-skip and I end up in the main game menu.

If I click "Continue", "Benchmark", "Load" or "New Game" The loading screen shows. After that I crash to desktop and I see Uplay uploading some crash log (i.e., uplay detected that the game crashed). In the sunshine.log I see:

[2022:06:20:22:06:42]: Error: DuplicateOutput Failed [0x80070005]

Expected Behavior

I expect Assassin's Creed: Odyssey to work as awesomely as everything else does using Sunshine and Moonlight!

Additional Context

log:

[2022:06:20:21:52:32]: Info: Found encoder amdvce: [h264_amf, hevc_amf]
[2022:06:20:21:52:32]: Info: Configuration UI available at [https://localhost:47990]
[2022:06:20:21:52:33]: Info: Registered Sunshine Gamestream service
[2022:06:20:21:54:14]: Info: /CN=NVIDIA GameStream Client -- verfied
[2022:06:20:21:54:14]: Info: /CN=NVIDIA GameStream Client -- verfied
[2022:06:20:21:54:17]: Info: /CN=NVIDIA GameStream Client -- verfied
[2022:06:20:21:54:18]: Info: /CN=NVIDIA GameStream Client -- verfied
[2022:06:20:21:54:18]: Info: CLIENT CONNECTED
[2022:06:20:21:54:18]: Info:
Device Description : AMD Radeon RX 6900 XT
Device Vendor ID   : 0x00001002
Device Device ID   : 0x000073AF
Device Video Mem   : 16337 MiB
Device Sys Mem     : 0 MiB
Share Sys Mem      : 16339 MiB
Feature Level      : 0x0000B100
Capture size       : 3840x2160
Offset             : 0x0
Virtual Desktop    : 3840x2160

[2022:06:20:21:55:48]: Info:
Device Description : AMD Radeon RX 6900 XT
Device Vendor ID   : 0x00001002
Device Device ID   : 0x000073AF
Device Video Mem   : 16337 MiB
Device Sys Mem     : 0 MiB
Share Sys Mem      : 16339 MiB
Feature Level      : 0x0000B100
Capture size       : 3840x2160
Offset             : 0x0
Virtual Desktop    : 3840x2160

[2022:06:20:21:59:20]: Info:
Device Description : AMD Radeon RX 6900 XT
Device Vendor ID   : 0x00001002
Device Device ID   : 0x000073AF
Device Video Mem   : 16337 MiB
Device Sys Mem     : 0 MiB
Share Sys Mem      : 16339 MiB
Feature Level      : 0x0000B100
Capture size       : 3840x2160
Offset             : 0x0
Virtual Desktop    : 3840x2160

[2022:06:20:22:06:42]: Info:
Device Description : AMD Radeon RX 6900 XT
Device Vendor ID   : 0x00001002
Device Device ID   : 0x000073AF
Device Video Mem   : 16337 MiB
Device Sys Mem     : 0 MiB
Share Sys Mem      : 16339 MiB
Feature Level      : 0x0000B100
Capture size       : 3840x2160
Offset             : 0x0
Virtual Desktop    : 3840x2160
[2022:06:20:22:06:42]: Error: DuplicateOutput Failed [0x80070005]
[2022:06:20:22:06:43]: Info:
Device Description : AMD Radeon RX 6900 XT
Device Vendor ID   : 0x00001002
Device Device ID   : 0x000073AF
Device Video Mem   : 16337 MiB
Device Sys Mem     : 0 MiB
Share Sys Mem      : 16339 MiB
Feature Level      : 0x0000B100
Capture size       : 3840x2160
Offset             : 0x0
Virtual Desktop    : 3840x2160

Sunshine Host Operating System and Version

Windows 10 host, Linux client

Architecture

x86_64

Sunshine Version

0.14.0

GPU Type

AMD

GPU Model

AMD Radeon 6900XT

GPU Driver/Mesa Version

AMD Software PRO Edition 22.Q2

Capture Method (Linux Only)

No response

rubin55 avatar Jun 20 '22 20:06 rubin55

Here's the sunshine.log.

rubin55 avatar Jun 20 '22 20:06 rubin55

I ran across this troubleshooting article on MSDN. It seems to be about this specific error, but I have no idea what they mean by a "Microsoft Hybrid" system. My PC is a beefy AMD Ryzen 9 5950x running the latest version of Windows 10.

rubin55 avatar Jun 20 '22 20:06 rubin55

:wave: @rubin55, we use the issue tracker exclusively for bug reports. However, this issue appears to be a support request. Please use our Discord Server to get help. Thanks.

github-actions[bot] avatar Jun 20 '22 20:06 github-actions[bot]

Talked to @ReenigneArcher about this on Discord. This issue seems to happen specifically with Assassin's Creed: Odyssey. In all cases the DuplicateOutput error is logged.

I checked with about 10 other non-UbiSoft games which started normally and verified that this error is not logged.

I then enabled Verbose (it was a bit noisy) and later `Debug logging to see if there were relevant other log messages, but there were none. I then offered to dig into the code and go to this specific point where this (I assume exception) is logged and see if I can expand the logging there a bit to see what's going on at the DDA api level and/or what the driver might think at that moment.

I'll see if I can dig into this the coming week. I will also test other UbiSoft games, because I suspect Uplay could be a factor in this.

Edit: I just checked Assassin's Creed: Origins, which is the latest (except for Odyssey) UbiSoft game I had and also engine-wise as close to Odyssey as possible. Assassin's Creed: Origins works normally. This probably means it's very specific to Odyssey. Will dig deeper soon.

rubin55 avatar Jun 20 '22 21:06 rubin55

So I verified a few things:

  • AC: Odyssey fails with DuplicateOutput in sunshine.log when client is connected before the game starts up, i.e. connect to Desktop session, start game, watch the game start to the main menu, select continue or new game, observe crash-to-desktop
  • AC: Odyssey starts correctly when no client is connected and sunshine is running. When the game is up, i.e., within the 3D engine so-to-speak, you can connect a client and you will be able to play (a quirky work-around right there)

rubin55 avatar Jun 20 '22 22:06 rubin55

I found a previous issue in the old sunshine that looks remarkably similar: https://github.com/loki-47-6F-64/sunshine/issues/46

rubin55 avatar Jun 21 '22 19:06 rubin55

This issue is stale because it has been open for 30 days with no activity. Comment or remove the stale label, otherwise this will be closed in 5 days.

github-actions[bot] avatar Sep 20 '22 00:09 github-actions[bot]

I'm getting the same thing when just trying to connect Moonlight to the Sunshine host dekstop - Just keeps repeating the error over and over until it finally times out/crashes.

This is my first go with Sunshine and Moonlight - When I was running a bare metal system I had GFE and Moonlight working, then I switched to a Win10 host, Hyper V VM and have it working with Parsec. Just found out about Sunshine and am now trying to set it up - Moonlight sees the system no problem, just get that Duplicateoutput Failed error when tyring to connect

***Looks like this issue (for me) may be related to RDP. Assuming it's the same RDP type problems that GFE has. If I connected with Parsec instead of RDP, Moonlight would then connect. Looked terrible, but it would connect. Disconnecting Parsec would cause Moonlight to lose connection and would not reconnect.

I end up with Moonlight throwing an error telling me it's receiving no video from the host and to check my Firewall for UDP 47988 and 48000 (both of which are allowed in/out on the Host as well as the client)

I have usbmmidd running, the Parsec virtual adapter (when Parsec is connected) and a headless dongle. All have been verified to work with things outside Moonlight/Sunshine.

Swany6mm avatar Sep 24 '22 02:09 Swany6mm

@Swany6mm this is off topic, please reach out on discord

ReenigneArcher avatar Sep 24 '22 12:09 ReenigneArcher

This issue was closed because it has been stalled for 5 days with no activity.

github-actions[bot] avatar Oct 09 '22 00:10 github-actions[bot]

I'm getting the same thing when just trying to connect Moonlight to the Sunshine host dekstop - Just keeps repeating the error over and over until it finally times out/crashes.

This is my first go with Sunshine and Moonlight - When I was running a bare metal system I had GFE and Moonlight working, then I switched to a Win10 host, Hyper V VM and have it working with Parsec. Just found out about Sunshine and am now trying to set it up - Moonlight sees the system no problem, just get that Duplicateoutput Failed error when tyring to connect

***Looks like this issue (for me) may be related to RDP. Assuming it's the same RDP type problems that GFE has. If I connected with Parsec instead of RDP, Moonlight would then connect. Looked terrible, but it would connect. Disconnecting Parsec would cause Moonlight to lose connection and would not reconnect.

I end up with Moonlight throwing an error telling me it's receiving no video from the host and to check my Firewall for UDP 47988 and 48000 (both of which are allowed in/out on the Host as well as the client)

I have usbmmidd running, the Parsec virtual adapter (when Parsec is connected) and a headless dongle. All have been verified to work with things outside Moonlight/Sunshine.

i was getting similar firewall error several times before actually connecting on hyper-v with iddsampledriver. my workaround is :

!!!!!!!!!!!! UAC must be set to no dim or else it hangs whenever admin rights are requested !!!!!!!!!!!! shut down vm, start vm, but don't connect via enhanced rdp, (better wait a couple of minutes to be sure sunshine service started) then connect directly with moonlight, or else you get firewall port bug !!!!!!!!!!!! NEVER CONNECT to enhanced rdp and try to connect via moonlight simultaneously or else you get black screen of death (you can still connect via ssh to vm, but cannot restore display without rebooting)