Ubuntu Wayland启动腾讯会议并实现原生屏幕共享

Intro

众所周知,长期以来,由于腾讯会议项目组的尸位素餐、极度不作为,在Wayland成为Ubuntu 24.04 LTS的默认窗口环境下,仍然选择摆烂,甚至还"贴心"地在启动脚本下增加检测Wayland退出的代码;并且即使使用一些手段成功了,仍然无法共享屏幕,导致目前共享屏幕的手段大多采用OBS虚拟摄像头的方式,但此种方法造成清晰度较低。腾讯会议项目组的做法实在是道德沦丧、令人发指,并引起民愤。

今天博主将分享在Wayland下成功启动腾讯会议,并成功通过原生 方法共享屏幕。本博客使用了wemeet-wayland-screenshare项目,支持Gnome和KDE桌面,其中KDE桌面下效果更佳。

修改启动脚本

  1. 腾讯会议官网上下载Linux版腾讯会议并安装。安装后,可在左下角菜单栏中找到腾讯会议,发现其由/opt/wemeet/wemeetapp.sh启动。

  2. 编辑上述脚本:

    shell 复制代码
    sudo vim /opt/wemeet/wemeetapp.sh

    并在该启动脚本开头加入如下命令:

    shell 复制代码
    export XDG_SESSION_TYPE=x11
    export QT_QPA_PLATFORM=xcb
    unset WAYLAND_DISPLAY

修复共享屏幕

  1. 安装必要依赖:

    shell 复制代码
    sudo apt install build-essential cmake ninja-build pkg-config wireplumber xdg-desktop-portal xdg-desktop-portal-gtk xdg-desktop-portal-wlr xwaylandvideobridge libopencv-dev libportal-dev libpipewire-0.3-dev -y
  2. 克隆Github项目:

    shell 复制代码
    git clone --recursive https://github.com/xuwd1/wemeet-wayland-screenshare.git && cd wemeet-wayland-screenshare 
    mkdir build && cd build
  3. 编译该项目:

    shell 复制代码
    cmake .. -GNinja -DCMAKE_BUILD_TYPE=Release && ninja
  4. 编译完成后,在该目录下可以找到名为 libhook.so 的文件,将其安装到系统目录/usr/local/lib/wemeet中:

    shell 复制代码
    sudo ninja install
  5. 使用如下命令启动腾讯会议,可将此命令编写为脚本以便启动:

    shell 复制代码
    LD_PRELOAD=$(readlink -f /usr/local/lib/wemeet/libhook.so) /opt/wemeet/wemeetapp.sh
  6. 至此安装完毕。可将克隆的本项目源代码删除

Bonus

Flatpak版腾讯会议已集成该项目,也可以直接从 Flathub 安装。

相关推荐
cqsztech3 小时前
oracle linux 10 +pg18 源码安装要点
linux·数据库·oracle
奥尔特星云大使3 小时前
ALTER 与 UPDATE、DROP 与 DELETE区别
linux·运维·数据库·mysql
duangww4 小时前
部署sapui5应用到linux
linux·sap fiori
siriuuus4 小时前
Linux ssh/scp/sftp命令使用及免密登录配置
linux·ssh·sftp·scp
teacher伟大光荣且正确6 小时前
Linux 下编译openssl
linux·运维·服务器
dlz08366 小时前
--group-start/--group-end 能不能解决 OpenSSL 1.0 vs 1.1 的优先级问题?
linux·运维·服务器·软件需求
小池先生7 小时前
activemq延迟消息变成实时收到了?
linux·数据库·activemq
tryCbest7 小时前
Linux系统下安装使用Redis
linux·运维·redis
AuroBreeze9 小时前
xv6-2023 - primes Lab
linux·运维·服务器
DIY机器人工房9 小时前
NAT 模式、命令行版、桥接模式方式给ubuntu虚拟机配网步骤:
linux·网络协议·ubuntu·嵌入式·桥接模式·diy机器人工房