I use Sunshine/Moonlight, OBS, Discord screen share, all on Wayland and an AMD GPU. No issues, both on my old Arch install and now NixOS. Every now and then there’s some issues in the actual updates that get pushed to these things, but those aren’t usually specific to my system. For example just recently an update was pushed to the loopback module OBS uses for virtual camera, but the OBS update that utilized it hadn’t been pushed yet, so I got a crash.
Linux
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
I dont see anything in your post that isnt already possible on Linux. OBS and GPU-Screen-Recorder both work great, I dont know what features could be needed that they dont offer.
Gamescope is capable of upscaling games with FSR. It doesnt support as many upscaling options as Magpie, but clearly the capability is there and not restricted by anything inherent to Linux.
I’m confused, OBS works well. What is missing you are desiring?
Yeah the protocols are there, portals support it, OBS works. It is great that random applications cannot capture the framebuffer.
The screencast portal has been around for 7 years. How is it not enough? It is very much GPU-only (if the receiving program supports it, which nearly all do), and encoding the image is up to the app and does not depend on the API.
I’d say wl-screenrec (https://github.com/russelltg/wl-screenrec) shows the best screen capture performance on Linux. I guess it could be even better since Wayland has released newer protocols and newer versions of the protocols used in wl-screenrec.
I am using OBS Game Capture plugin and it works perfectly on Wayland. I have yet try it with Wine Wayland, though.
AMD has an nvdec/nvenc equivalent called AMF, on Linux it's going to be deprecated in months in favour of va-api.
To my knowledge, it does not have an nvfbc equivalent. Which anyway, Nvidia has deprecated on windows in favour of a windows-native screen capture with a name I don't remember.
For what is worth, va-api encoding + kmsgrab works pretty well for me, it does have some latency, but nothing too unacceptable. Probably less than the one caused by the Bluetooth controller. And none of this is vendor specific, you can get it working on Intel, AMD and Nvidia (Nvidia needs a compatibility layer, but it works). Also, it works on Wayland, but sunshine needs some privileges to work.
Sunshine supposedly supports nvfbc with patched Nvidia drivers, even on Linux, I haven't tried it, so I don't know if it works on Wayland. I don't see why it shouldn't, as long as you give sunshine privileged permissions (like you need for kmsgrab). Even without nvfbc you can use nvenc, so you don't need the va-api compatibility layer.
Supposedly, since this Nvidia driver release nvfbc is used as backend for pipewire screen capture, so it should just work for apps like OBS, I don't know if sunshine has intention to move to it.
In general, screen capture on Linux pretty much works, even on Wayland. The general sentiment that it's broken is actually old news.
There's a caveat though. Proprietary apps tend to use outdated stuff (e.g. electron builds from 5 years ago) and thus don't support screen sharing on Wayland.