Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support Steam video capture #130

Closed
MayeulC opened this issue Nov 15, 2020 · 7 comments
Closed

Support Steam video capture #130

MayeulC opened this issue Nov 15, 2020 · 7 comments

Comments

@MayeulC
Copy link

MayeulC commented Nov 15, 2020

Well, this is more of a Steam issue, but allowing the Steam client to leverage gamescope for video capture (and input device emulation) would help a lot with ValveSoftware/steam-for-linux#6148

This would allow Steam "in-home" streaming to work just by launching a game as a gamescope client.

Adding such support could either be done using the various wlroots protocols, or with a private API.

Use-cases:

  • launch a headless gamescope instance (maybe as a headless sway client if not directly supported by gamescope) with Steam as a client, to stream games from a computer while it is being used (sort of a virtual seat to be used with a Steam Link).
  • Make streaming compatible with wayland compositors and clients
  • Only stream the child window, not the OS (alternatively, allow selecting)
  • Possibly improve latency for streaming (plus, gamescope also controls game input)
@dron1885
Copy link

It actually working. At least under sway.

@emersion
Copy link
Collaborator

If everything is going through Xwayland, Steam Play should be working fine (works on my setup for instance). Are you trying to use Steam Play + gamescope, or just Steam Play?

@MayeulC
Copy link
Author

MayeulC commented Nov 16, 2020

Thank you for your answers. I appreciate the help, but don't really want to pollute that issue thread with Steam troubleshooting for my specific setup... This issue was more about video capture under gamescope, regardless of whether the client is X11 or Wayland.


However, since you asked:

I have not tried steamplay+gamescope that I remember. Is it more likely to succeed that way?

I mostly tried gamescope with glxgears, but the result wasn't that promising (20 FPS and very low resolution output, but that's another issue).

I performed some detailed tests in the linked issue (ValveSoftware/steam-for-linux#6148). It never worked for me on sway, and it seems to be the case for many more users. I am not at liberty to try it right now (maybe in ~10 hours), but my last attempt was two weeks ago with a steam link as a client, and "Don't starve together" as a game. It worked under lxqt and plasma/openbox but not sway, nor plasma/kwin_wayland (black screen as stream output), using flatpaked steam.

I am pretty sure the game clients I have tried were running on Xwayland.

If you'd like to investigate this further, you can also ping me in #sway on freenode, or @mayeul:mayeul.net on Matrix, or maybe in that other issue :)

@emersion
Copy link
Collaborator

Gamescope doesn't support Wayland clients. However gamescope does create a new X11 server, trying to capture gamescope's window without connecting to the inner X11 server won't work well.

@emersion
Copy link
Collaborator

emersion commented Aug 2, 2021

#219 should help with this.

@kode54
Copy link

kode54 commented Sep 9, 2021

Wow, that took a while to appear. Now to get Steam to support this, heh.

@Plagman
Copy link
Member

Plagman commented Dec 14, 2021

Should all work now!

@Plagman Plagman closed this as completed Dec 14, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants