screencast is black
Hi, so I gave Wayland a try and found that screensharing/recording doesn't work. Using OBS as an example, when adding a pipewire source, the recorded stream is only black.
I tested this on:
- Archlinux, KDE Plasma
- Fedora 36 (with test repos), GNOME
They both behave a little different.
- difference)
On Arch/KDE the screensharing does show the mouse pointer but nothing else.
On Fedora/GNOME it is completely black, not even the mouse pointer.
- difference)
On Arch/KDE OBS prints these while pipewire capture is active (full log: obs-wayland-arch-kde.txt):
21:08:54.210: [pipewire] playing stream…
21:08:54.233: glGenTextures failed, glGetError returned GL_INVALID_OPERATION(0x502)
21:08:54.233: device_texture_create (GL) failed
21:08:54.238: glDisable failed, glGetError returned GL_INVALID_OPERATION(0x502)
21:08:54.247: glDeleteBuffers failed, glGetError returned GL_INVALID_OPERATION(0x502)
21:08:54.254: glDeleteBuffers failed, glGetError returned GL_INVALID_OPERATION(0x502)
21:08:54.254: glDisable failed, glGetError returned GL_INVALID_OPERATION(0x502)
21:08:54.268: glDeleteBuffers failed, glGetError returned GL_INVALID_OPERATION(0x502)
21:08:54.271: glDisable failed, glGetError returned GL_INVALID_OPERATION(0x502)
21:08:54.283: glDeleteBuffers failed, glGetError returned GL_INVALID_OPERATION(0x502)
21:08:54.288: glDisable failed, glGetError returned GL_INVALID_OPERATION(0x502)
21:08:54.304: glDisable failed, glGetError returned GL_INVALID_OPERATION(0x502)
21:08:54.351: glDeleteBuffers failed, glGetError returned GL_INVALID_OPERATION(0x502)
21:08:54.354: glDisable failed, glGetError returned GL_INVALID_OPERATION(0x502)
21:08:54.365: glDeleteBuffers failed, glGetError returned GL_INVALID_OPERATION(0x502)
21:08:54.371: glDisable failed, glGetError returned GL_INVALID_OPERATION(0x502)
21:08:54.384: glDeleteBuffers failed, glGetError returned GL_INVALID_OPERATION(0x502)
21:08:54.386: glDeleteBuffers failed, glGetError returned GL_INVALID_OPERATION(0x502)
21:08:54.388: glDisable failed, glGetError returned GL_INVALID_OPERATION(0x502)
On Fedora/GNOME it doesn't print those errors (full log: obs-wayland-fedora-gnome.txt), but only:
21:13:22.499: [pipewire] created stream 0x56353a023d00
21:13:22.499: [pipewire] playing stream…
but still, only blackscreen is recorded.
ADDITIONAL INFORMATION
Pipewire version (arch): 1:0.3.48-1
Kernel (arch): default 'linux' package from Arch, version 5.16.16-arch1-1
Kernel (fedora): 5.17.0-300.fc36.x86_64
GPU: Nvidia GTX 1060
Nvidia driver version (arch): v510.54
Nvidia driver version (fedora): 510.60.02 (rpmfusion)