有人真正设法在 Wayland 上使用 Zoom 屏幕共享吗(严格来说,没有 X11)?

有人真正设法在 Wayland 上使用 Zoom 屏幕共享吗(严格来说,没有 X11)?

Zoom 应用尚不支持 Wayland,因此必须使用 X11。几个月前 Zoom 曾表示他们正在努力修复此问题。

System : Ubuntu 22.04
Zoom version : 5.15.7.6521
Firefox version : 116.0.3

我的公司提供 Zoom 用于定期会议,因此无法使用其他会议平台。我尝试过:

  1. X11:我不想切换到 X11。我的系统运行非常糟糕,执行任何任务时都非常慢且持续滞后,而 Wayland 非常流畅,没有滞后,我非常喜欢它。我尝试切换到 X11 来测试 Zoom 屏幕共享是否有效,它确实有效。但由于系统中的一些随机恶作剧,我花了将近 3 个小时才切换回 Wayland 和 GDM3。我不想再切换到 X11,尤其是只为 Zoom。
  2. 从 Debian 软件包重新安装。Zoom 社区中的一个特定帖子(我忘记保存链接了)建议从 Ubuntu 中清除 Zoom 并重新安装 Debian 版本,这似乎对少数人有用。但对于包括我在内的大多数人来说,这并不能解决问题。
  3. 运行 Zoom 并XDG_CURRENT_DESKTOP=GNOME关注来自 Zoom 社区。
  4. 运行 ZoomQT_QPA_PLATFORM=xcb
  5. 火狐管线:
    • 管线安装:

       gstreamer1.0-pipewire/jammy-updates,now 0.3.48-1ubuntu3 amd64 [installed,automatic]
       libpipewire-0.3-0/jammy-updates,now 0.3.48-1ubuntu3 amd64 [installed]
       libpipewire-0.3-common/jammy-updates,jammy-updates,now 0.3.48-1ubuntu3 all [installed]
       libpipewire-0.3-modules/jammy-updates,now 0.3.48-1ubuntu3 amd64 [installed,automatic]
       pipewire-bin/jammy-updates,now 0.3.48-1ubuntu3 amd64 [installed]
       pipewire-media-session/jammy,now 0.4.1-2ubuntu1 amd64 [installed,automatic]
       pipewire/jammy-updates,now 0.3.48-1ubuntu3 amd64 [installed]
      
    • 已在 Firefox 中启用它。

    • 从以下设置enableWaylandShare为 true~/.config/zoomus.conf来自 Arch wiki 的说明. 通过浏览器进行屏幕共享仍然不起作用。

    • Zoom 社区上的 2023 年 7 月主题帖:从 Zoom 桌面客户端 --> 设置 --> 共享屏幕 --> 高级 --> 将屏幕捕获更改为 Pipewire。通过桌面应用程序共享屏幕仍然不起作用。

    • Webrtc 屏幕共享显示下拉菜单中没有可共享窗口的选项。使用默认选项时,当我单击共享时什么也没有发生。WebRTC 和 Firefox 权限如下所示:

在此处输入图片描述 在此处输入图片描述

  1. 铬合金管线:
    • chrome://flags/#enable-webrtc-pipewire-capturer已启用以下此解决方案

    • 共享屏幕时,chrome 总是崩溃。以下是错误日志:

       libva error: vaGetDriverNameByIndex() failed with unknown libva error, driver_name = (null)  
       [46896:46896:0826/083601.699022:ERROR:interface_endpoint_client.cc(702)] Message 0 rejected by interface blink.mojom.WidgetHost  
       [OpenH264] this = 0x0x2e20050e0120, Warning:bEnableFrameSkip = 0,bitrate can't be controlled for RC_QUALITY_MODE,RC_BITRATE_MODE and RC_TIMESTAMP_MODE without enabling skip frame.
       [47042:16:0826/083604.321188:ERROR:dtls_transport.cc(133)] DtlsTransport in connected state has incomplete TLS information
       [47042:16:0826/083604.321689:ERROR:dtls_srtp_transport.cc(215)] No DTLS-SRTP selected crypto suite[47042:16:0826/083604.344151:ERROR:dtls_transport.cc(133)] DtlsTransport in connected state has incomplete TLS information
       [47042:16:0826/083604.344273:ERROR:dtls_srtp_transport.cc(215)] No DTLS-SRTP selected crypto suiteINFO: Created TensorFlow Lite XNNPACK delegate for CPU.
       [46938:46938:0826/083617.066264:ERROR:gl_surface_presentation_helper.cc(260)] GetVSyncParametersIfAvailable() failed for 1 times
       [46896:47267:0826/083617.222097:ERROR:egl_dmabuf.cc(632)] Failed to bind DMA buf framebuffer
       [46896:47267:0826/083617.222261:ERROR:shared_screencast_stream.cc(940)] Dropping DMA-BUF modifier: 72057594037927935 and trying to renegotiate stream parameters
       [46896:47267:0826/083617.225915:ERROR:egl_dmabuf.cc(632)] Failed to bind DMA buf framebuffer
       [46896:47267:0826/083617.226040:ERROR:shared_screencast_stream.cc(940)] Dropping DMA-BUF modifier: 72057594037927935 and trying to renegotiate stream parameters[0826/083617.243325:ERROR:elf_dynamic_array_reader.h(64)] tag not found
       [1]46896 segmentation fault (core dumped)  google-chrome
      

      libva错误?以下是libva在我的系统中安装的:

       libva-dev/jammy,now 2.14.0-1 amd64 [installed]
       libva-drm2/jammy,now 2.14.0-1 amd64 [installed]
       libva-drm2/jammy,now 2.14.0-1 i386 [installed,automatic]
       libva-glx2/jammy,now 2.14.0-1 amd64 [installed]
       libva-glx2/jammy,now 2.14.0-1 i386 [installed,automatic]
       libva-wayland2/jammy,now 2.14.0-1 amd64 [installed]
       libva-x11-2/jammy,now 2.14.0-1 amd64 [installed]
       libva-x11-2/jammy,now 2.14.0-1 i386 [installed,automatic]
       libva2/jammy,now 2.14.0-1 amd64 [installed]
       libva2/jammy,now 2.14.0-1 i386 [installed,automatic]
       libvala-0.56-0/jammy,now 0.56.0-1 amd64 [installed]
       libvala-0.56-dev/jammy,now 0.56.0-1 amd64 [installed]
       libvalacodegen-0.56-0/jammy,now 0.56.0-1 amd64 [installed,automatic]
       libvalapanel0/jammy,now 0.5.0-2 amd64 [installed,automatic]
       libvamp-hostsdk3v5/jammy,now 2.10.0-1 amd64 [installed,automatic]
       libvariable-magic-perl/jammy,now 0.62-1build5 amd64 [installed,automatic]
      

还有什么建议我可以尝试让 Zoom 屏幕共享在 Wayland 中工作吗?截至目前,我在任何需要共享屏幕的 Zoom 会议上都使用 VMware,这也不是最佳选择,但对我来说是唯一的方法。

附言:我之前在另一个社区平台上发布过这个问题,但目前还没有解决方案。

[2023 年 10 月更新]
根据@Dan Eisenhut 的评论,我最近更新了 Firefox,确认现在可以通过浏览器共享屏幕。另一方面,我也更新了 Zoom 应用程序,共享屏幕只显示黑屏。

答案1

是的,在我需要它的一次会议中最初遇到问题之后,我现在通过安装解决了这个问题xdg-desktop-portal-gnome

sudo apt install xdg-desktop-portal-gnome

此后需要重新启动。

这是我的设置:

  • Ubuntu 22.04.3 LTS
  • GNOME 42.9
  • 韦兰
  • pipewire0.3.48-1ubuntu3
  • xdg-desktop-portal1.14.4-1ubuntu2
  • xdg-desktop-portal-gnome42.1-0buntu1(这是缺少的,我只有xdg-desktop-portal-gtk

它适用于 Firefox 网络浏览器(FF 117.0.1)和桌面应用程序(5.16.1)。

答案2

我不相信 Zoom 可以在纯 Wayland 中实现屏幕共享。我尝试了两年多,但从来没有一个版本成功过。最好的结果是屏幕共享,但你不能停止共享屏幕,除非完全结束通话/会议,因为控件的显示时间不超过五秒钟。

每个人都说 Wayland 下的 Zoom 屏幕共享对他们有用,只要我让他们仔细测试一下,他们就会发现他们实际上是在 XWayland 下运行 Zoom,但他们却没有意识到这一点。

您是否已成功使用 XWayland 运行缩放屏幕共享?对我来说,它或多或少可以正常工作。至少目前这已经足够了。

相关内容