LS3solutions / LS3solutions/openstream-server

problems with two displays

Open
#12 1 comment 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
205
Forks
24
PR merge metrics
No merged PRs in 30d

Description

Hi m4rkoup. Really loving this. The combination of widespread good moonlight clients and being able to utilize my AMD hardware is really something. But right now I am having to manually set Windows to only display on one display before utilizing openstream. I looked up the config options to specify display (dxgi-info.exe I had to use from the sunshine package, the .exe. doesn't run from open-stream package). But when I do, sometimes it still specifies wrong resolution, but if I relaunch sometimes it's correct again. But even if it is correct, my client disconnects, and it gets this weird series of messages each time (while mode switches between extend to clone seem to happen on the LCD).

>
[2021:02:05:15:30:14]: Info: /CN=NVIDIA GameStream Client -- verfied
[2021:02:05:15:30:14]: Info: /CN=NVIDIA GameStream Client -- verfied
[2021:02:05:15:30:14]: Info: CLIENT CONNECTED TO RTSP
[2021:02:05:15:30:14]: Info: CLIENT DISCONNECTED FROM RTSP
[2021:02:05:15:30:14]: Info: CLIENT CONNECTED
::::extend
[2021:02:05:15:30:14]: Info: clone
[2021:02:05:15:30:14]: Info: 1
[2021:02:05:15:30:14]: Error: Failed to locate an output device
[2021:02:05:15:30:16]: Info: /CN=NVIDIA GameStream Client -- verfied
[2021:02:05:15:30:16]: Info: /CN=NVIDIA GameStream Client -- verfied
[2021:02:05:15:30:16]: Info: /CN=NVIDIA GameStream Client -- verfied
[2021:02:05:15:30:16]: Info: /CN=NVIDIA GameStream Client -- verfied
[2021:02:05:15:30:17]: Info: /CN=NVIDIA GameStream Client -- verfied
[2021:02:05:15:30:17]: Info: /CN=NVIDIA GameStream Client -- verfied
[2021:02:05:15:30:18]: Info: /CN=NVIDIA GameStream Client -- verfied
[2021:02:05:15:30:18]: Info: /CN=NVIDIA GameStream Client -- verfied
[2021:02:05:15:30:18]: Info: /CN=NVIDIA GameStream Client -- verfied
[2021:02:05:15:30:18]: Info: /CN=NVIDIA GameStream Client -- verfied
[2021:02:05:15:30:18]: Info: /CN=NVIDIA GameStream Client -- verfied
[2021:02:05:15:30:18]: Info: /CN=NVIDIA GameStream Client -- verfied
[2021:02:05:15:30:18]: Info: extend
[2021:02:05:15:30:18]: Info: 2
[2021:02:05:15:30:19]: Info: /CN=NVIDIA GameStream Client -- verfied`

As a workaround I tried to write a cmd batch to execute as "prep" and make my steam game launch directly after forcing windows to displayswitch.exe /external but this also fails. Sorry to be a complainer, I hope this can be fixed :) Thank you!

EDIT: I did a bit more experimenting. And it seems specifying the display in the h264 file always breaks it for me, even if I then set windows to ONLY display on one monitor. When I remove that, AND set windows to one monitor then it succeeds, still some mode switches (weird). Here is that output:

> [2021:02:05:15:39:27]: Info: /CN=NVIDIA GameStream Client -- verfied
[2021:02:05:15:39:27]: Info: CLIENT CONNECTED TO RTSP
[2021:02:05:15:39:27]: Info: CLIENT DISCONNECTED FROM RTSP
[2021:02:05:15:39:27]: Info: CLIENT CONNECTED
::::external
[2021:02:05:15:39:27]: Info: clone
[2021:02:05:15:39:27]: Info: 1
[2021:02:05:15:39:28]: Info:
Device Description : Radeon (TM) RX 480 Graphics
Device Vendor ID : 0x00001002
Device Device ID : 0x000067DF
Device Video Mem : 8171 MiB
Device Sys Mem : 0 MiB
Share Sys Mem : 8164 MiB
Feature Level : 0x0000C000
Capture size : 1680x1050
[2021:02:05:15:39:31]: Info: external
[2021:02:05:15:39:31]: Info: 3
[2021:02:05:15:39:32]: Info: /CN=NVIDIA GameStream Client -- verfied
[2021:02:05:15:39:32]: Info: /CN=NVIDIA GameStream Client -- verfied
[2021:02:05:15:39:32]: Info:
Device Description : Radeon (TM) RX 480 Graphics
Device Vendor ID : 0x00001002
Device Device ID : 0x000067DF
Device Video Mem : 8171 MiB
Device Sys Mem : 0 MiB
Share Sys Mem : 8164 MiB
Feature Level : 0x0000C000
Capture size : 1920x1080
[2021:02:05:15:39:32]: Info: /CN=NVIDIA GameStream Client -- verfied
[2021:02:05:15:39:32]: Info: /CN=NVIDIA GameStream Client -- verfied

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the two-display setup described in the issue, comparing the h264 display setting with Windows set to one display. Use dxgi-info.exe and the reported "Failed to locate an output device" log as the investigation starting points; done means display selection and capture no longer disconnect during the mode switches.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.