与 Wayland 共享屏幕

ema*_*ret 33 gnome video wayland 20.04

Wayland 上的屏幕共享状态如何?最近,这已成为远程办公人士的一个重要话题。

我正在尝试使用 WebRTC 在 Google Chrome 88 上共享我的屏幕,并且我使用 Wayland 运行 GNOME 3.36,并使用以下软件包:

我尝试按照以下步骤从头开始设置一切:

  1. 使用 autotools 构建软件包并安装所需的依赖项及其.pcpkg-config 文件
  2. 将 pipelinewire 的共享库复制.so/usr/local/lib/x86_64-linux-gnu并运行 ldconfig 以刷新配置
  3. 复制 systemctl 的单元文件/usr/local/lib/systemd/user并启动服务

一切都正确安装后,我启用chrome://flags/#enable-webrtc-pipewire-capturer并尝试了这个演示,它显示“成功!” 但我只看到黑屏...

编辑:从 Ubuntu 22.04 LTS 开始,问题似乎已得到解决。我尝试使用默认安装的 Thinkpad X1 笔记本电脑,并且能够在上面的演示链接上共享我的屏幕。

edd*_*eek 24

乌班图22.04

\n

支持可能是开箱即用的,但我没有从 20.04 升级所需的所有软件包。

\n

我能够使用以下内容进行屏幕共享:

\n

(!) 如果这破坏了您的音频,请参阅此错误

\n
sudo apt install xdg-desktop-portal-gnome gnome-remote-desktop\n
Run Code Online (Sandbox Code Playgroud)\n

如有必要,请重新启动(或参见故障排除部分)。

\n

YMMV,但可以肯定的pipewire-media-session是(依赖于gnome-remote-desktop) 和xdg-desktop-portal-gnome是需要的,并且从 20.04 开始没有安装do-release-upgrade

\n

之后,我能够使用 dpkg/snap/flatpak 应用程序验证屏幕共享,如下所示:

\n

火狐快照

\n

默认的Ubuntu 22.04 firefox(snap)默认使用wayland,并且支持WebRTC屏幕共享(例如用这个WebRTC实验进行测试)

\n

火狐浏览器中的门户

\n

不幸的是,目前某些软件(Hello M$ Teams)将 Firefox 列入“黑名单”。

\n

Chrome Wayland dpkg

\n

默认情况下,Chrome 99 仍然是 X11(尽管支持标志自 2021 年 4 月起就可用),因此从

\n
google-chrome-stable --enable-features=UseOzonePlatform --ozone-platform=wayland &\n
Run Code Online (Sandbox Code Playgroud)\n

要使其永久,请将/usr/share/applications/google-chrome.desktop复制+编辑到~/.local/share/applications/

\n

您还需要启用WebRTC PipeWire 支持标志 (chrome://flags/#enable-webrtc-pipewire-capturer)。

\n

[Chrome 中的门户]

\n

它仍然受到2020 年 WebRTC/Chromium 更新中讨论的“双”门户问题的困扰,但它是可用的。

\n

Kooha flatpak(屏幕录像机)

\n
google-chrome-stable --enable-features=UseOzonePlatform --ozone-platform=wayland &\n
Run Code Online (Sandbox Code Playgroud)\n

[Kooha 的门户]

\n

故障排除

\n

可以替代重启的命令:

\n
sudo apt install flatpak\nflatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo\nflatpak install io.github.seadve.Kooha\nflatpak run io.github.seadve.Kooha &\n
Run Code Online (Sandbox Code Playgroud)\n
    \n
  • 相关Arch wiki
  • \n
  • wlroots\' “它不起作用”故障排除清单
  • \n
  • 背景:Flatpak 门户 - 它们如何工作?作者:彼得·哈特勒。
  • \n
  • 提示:从命令行运行应用程序并检查输出中是否有错误消息,例如创建截屏会话时出错:GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface \xe2\x80\x9corg.freedesktop.portal.ScreenCast\ xe2\x80\x9d 位于路径 /org/freedesktop/portal/desktop 的对象上-- 这意味着您没有门户实现 -- 例如,这是预期的 dbus 设置,如下所示d-feet:\nD 脚\n如果您看到org.freedesktop.impl.portal.desktop.gnome有一些接口,但没有ScreenCast接口,则可能意味着缺少 Pipewire 设置,或者xdg-desktop-portal-gnome没有重新启动以获取它。
  • \n
\n