-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
XWayland Screencapture #5248
Comments
Maybe create a new virtual output (#5216), start wf-recorder with a pipe target and use ffplay to stream it in an x window on the virtual screen? That is not the most efficient path, but it might work. A better application would connect to wayland and fetch dmabufs directly with wlr_export_dmabuf_unstable_v1 and then plumb them into a gstreamer pipeline with an X11 vaapisink. |
@progandy Thanks for the tips, but I'm looking for something that doesn't require a lot of technical knowledge on the side of the user to configure, it should work out of the box. If this can be achieved with the gstreamer setup you were mentioning, could you explain in more detail how this would be setup by the compositor? |
This is an Xwayland issue. Xwayland probably won't implement any screen-capture stuff because of security implications. |
I can't. My gstreamer-dmabuf knowledge is superficial at best. |
Hi, I saw this: #4412
But would it be possible for xwayland to implement a compatibility layer from X11's screencapture to the screencopy shell (https://github.com/swaywm/wlr-protocols/blob/master/unstable/wlr-screencopy-unstable-v1.xml)? I don't know enough about xwayland to know how it would be implemented, but it seems doable without too much effort...
Discord is by no means the only application which has this problem, and it will take many more years before many popular applications (both open source and proprietary) implement native wayland support. For instance, OBS requires a plugin to make screencasting work, and it would be nice to have native translation.
The text was updated successfully, but these errors were encountered: