Демонстрация экрана не работает в Ubuntu 22.04 (на всех платформах Zoom, Teams, Google Meet, AnyDesk и т. д.)
В Ubuntu 22.04 есть ошибка, из-за которой мы не можем поделиться своим экраном ни на одной платформе.
11 ответов
Проблема с Ubuntu 22.04 связана с использованием функции отображения под названием wayland. Wayland не поддерживает совместное использование экрана по умолчанию (по крайней мере, до сих пор!). В предыдущей версии Ubuntu у нас была функция xorg для отображения.
Чтобы проверить, какую функцию отображения использует ваша Ubuntu, введите эту команду
Если приведенная выше команда выводит wayland, ваша система использует wayland.
Мы должны отключить wayland и включить xorg (x11). Сделать это,
Пожалуйста, перейдите к этому файлу
sudo nano /etc/gdm3/custom.conf
Раскомментируйте эту строку.
WaylandEnable=false
Перезагрузите систему.
Вуаля! Вы можете поделиться своим экраном. Вы можете подтвердить это повторным вводом этой команды.
echo $XDG_SESSION_TYPE
Теперь он должен отображать x11 .
Наслаждаться!
Работает только для веб-браузера
Перейти к
chrome://flags/#enable-webrtc-pipewire-capturerс помощью адресной строки вашего браузера.
Нажмите раскрывающееся меню и нажмите «Включено».
Наконец, перезапустите браузер
Это позволит браузеру запрашивать доступ к совместному использованию экрана.
Для записи экрана Slack в приложении и демонстрации экрана:
- Полностью закройте приложение Slack (используйте
Quitсо значка в трее). - В терминале:
slack --enable-features=WebRTCPipeWireCapturer
- Посмотрите, работает ли это.
- (Необязательно) Сохраняйте изменения при перезагрузке:
gedit admin:///usr/share/applications/slack.desktop
В текстовом редакторе найдите строку, которая гласит:
Exec=/usr/bin/slack %U
Измените строку, чтобы сказать:
Exec=/usr/bin/slack --enable-features=WebRTCPipeWireCapturer %U
Вот и все. Протестировано на Ubuntu 22.04LTS и:
$ 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
Источник: https://github.com/flathub/com.slack.Slack/issues/101#issuecomment-808430530 .
Поскольку Wayland по умолчанию не поддерживает совместное использование экрана, уже есть экспериментальный способ с браузером Chrome.
Сначала вам нужно экспортировать API метаданных из медиа-сеансов pipewire.
sudo mkdir -p /etc/pipewire/media-session.d/
sudo cp /usr/share/pipewire/media-session.d/media-session.conf /etc/pipewire/media-session.d/
sudo sed -i 's/#metadata/metadata/g' /etc/pipewire/media-session.d/media-session.conf
В экспериментальных функциях Chrome включите поддержку WebRTC PipeWire.
chrome://flags/#enable-webrtc-pipewire-capturer
Перезапустите браузер, и теперь вы можете поделиться своим экраном.
я попробовал
global.context.unsafe_mode=trueРешение, но Google Meet по-прежнему показывал черные экраны, поэтому больше не проверял.
Что сработало для меня, так это переключение на X11/Xorg, что я и сделал
- выйти
- нажав значок шестеренки внизу справа
- выбрав «Ubuntu на Xorg»
- вход в систему
Как уже упоминалось, это функция безопасности Wayland. Вы можете использовать XOrg или отключить режим сохранения Wayland, выполнив следующие действия:
- Нажимать
Alt+F2 - Тип
lgи нажмите ввод - Отключите режим сохранения, набрав
global.context.unsafe_mode=trueи введите
Это будет работать до тех пор, пока вы не перезагрузитесь/выйдите из системы. Я написал небольшое расширение Gnome, которое может отключить безопасный режим по требованию. См. https://github.com/julianpollmann/zoom-wayland-gnome-extension
Я изменил графические драйверы (в меню дополнительных драйверов) с xorg-server на проприетарный Nvidia. Это сработало для меня.
У меня есть компьютер с графической картой Nvidia EVGA Geforce GTX - 1660 Super с ОС Ubuntu 22.04.3 LTS, и ни один из приведенных выше ответов не помог в моем случае. Ни флага Chrome, ни отключения безопасного режима Wayland, ни перехода на использование xorg на экране входа в систему.
Что входило в задание в разделе «Дополнительные драйверы», затем выберите этот вариант.Using NVIDIA driver metapackage from nvidia-driver-535 (proprietary, tested)среди многих других (этот поначалу справился со своей задачей, поэтому я больше не менял). Ранее выбранным былUsing X.Org X server -- Nouveau display driver from xserver-xorg-video-nouveau (open source)
Надеюсь, это кому-то поможет.
Теперь совместное использование экрана в Wayland доступно с помощью клиента масштабирования для Ubuntu.
Ознакомьтесь с примечаниями к выпуску в
5.11.0 (3540)выпускать.
Я решил пойти в
chrome://flags/#enable-webrtc-pipewire-capturer и изменив значение с
Default к
Enabled.
тогда
Найдите файл .conf в /etc/gdm3/ , в моем случае Ubuntu 20 это custom.conf .
sudo nano /etc/gdm3/custom.conf
раскомментировать строку
#WaylandEnable=false быть
WaylandEnable=false
тогда
reboot
" раскомментировав эту строку, вместо Wayland будет использоваться диспетчер отображения Xorg "

