$ slack --version
4.27.156
$ echo $XDG_SESSION_TYPE
wayland
$ dpkg -l | grep -i pipewire
ii libpipewire-0.3-0:amd64 0.3.48-1ubuntu1 amd64 libraries for the PipeWire multimedia server
ii libpipewire-0.3-common 0.3.48-1ubuntu1 all libraries for the PipeWire multimedia server - common files
ii libpipewire-0.3-modules:amd64 0.3.48-1ubuntu1 amd64 libraries for the PipeWire multimedia server - modules
ii libspa-0.2-modules:amd64 0.3.48-1ubuntu1 amd64 libraries for the PipeWire multimedia server Simple Plugin API - modules
ii pipewire:amd64 0.3.48-1ubuntu1 amd64 audio and video processing engine multimedia server
ii pipewire-bin 0.3.48-1ubuntu1 amd64 PipeWire multimedia server - programs
ii pipewire-media-session 0.4.1-2ubuntu1 amd64 example session manager for PipeWire
Ubuntu 22.04 的问题在于使用了一个名为wayland的显示功能。Wayland 默认不支持屏幕共享(至少到现在为止!)。在以前的 ubuntu 版本中,我们有 xorg 用于显示功能。
要检查您的 ubuntu 正在使用哪个显示功能,请输入此命令
如果上述命令输出wayland,则您的系统正在使用 wayland。
我们必须禁用 Wayland 并启用 xorg (x11)。去做这个,
请转到此文件
取消注释此行。
重新启动系统。
瞧!您可以共享您的屏幕。您可以通过重新输入此命令来确认这一点。
现在它应该显示x11。
享受!
仅适用于网络浏览器
转到
chrome://flags/#enable-webrtc-pipewire-capturer
使用浏览器的地址栏。单击下拉菜单,然后单击启用。
最后重启浏览器
这将使浏览器能够提示屏幕共享访问
由于 Wayland 默认不支持屏幕共享,因此已经有 chrome 浏览器的实验方式。
首先,您需要从 pipewire 媒体会话中导出元数据 API。
在 chrome 实验功能启用 WebRTC PipeWire 支持
重新启动浏览器,现在您可以共享您的屏幕了。
我尝试了该
global.context.unsafe_mode=true
解决方案,但 Google Meet 仍然显示黑屏,因此没有进一步测试。对我有用的是切换到 X11/Xorg,我通过
对于Slack应用内屏幕录制和屏幕共享:
来源:https ://github.com/flathub/com.slack.Slack/issues/101#issuecomment-808430530
如前所述,这是 Wayland 的安全功能。您可以使用 XOrg 或通过执行以下操作禁用 Wayland 的保存模式:
Alt
+F2
lg
并按回车global.context.unsafe_mode=true
通过键入并输入禁用保存模式这将一直有效,直到您重新启动/注销。我写了一个小的 Gnome 扩展,它可以按需禁用安全模式。见https://github.com/julianpollmann/zoom-wayland-gnome-extension
现在,Wayland 中的屏幕共享可通过 Ubuntu 的缩放客户端使用。
https://support.zoom.us/hc/en-us/articles/205759689#:~:text=Resolved%20an%20issue%20regarding%20sharing%20content%20on%20Gnome%2041%20with%20Wayland%C2%A0
检查发行版中的发行说明
5.11.0 (3540)
。只需安装