Это простое руководство показывает, как установить, а также как включить сервер PipeWire в Ubuntu 20.04, Ubuntu 21.04, Ubuntu 20.10 и Ubuntu 18.04.
PipeWire – это новый низкоуровневый мультимедийный фреймворк, призванный обеспечить захват и воспроизведение аудио и видео с минимальной задержкой и поддержкой приложений на базе PulseAudio, JACK, ALSA и GStreamer. Кроме того, он работает с приложениями Flatpak в песочнице.
PipeWire доступен в репозиториях Ubuntu, и официально поддерживается в Ubuntu 21.04. В Ubuntu, версия по умолчанию всегда старая, но есть репозиторий PPA с последними на данный момент пакетами для всех текущих релизов Ubuntu.
1.) Добавьте Ubuntu PPA:
sudo add-apt-repository ppa:pipewire-debian/pipewire-upstream
2.) Установите или обновите PipeWire:
sudo apt install pipewire
Для GStreamer 1.0, плагинов bluetooth, клиента jack, также установите пакеты gstreamer1.0-pipewire, libspa-0.2-bluetooth, libspa-0.2-jack.
Как включить службу PipeWire Audio Service вместо PulseAudio в Ubuntu 21.04
В Ubuntu 21.04 официально включена поддержка pipewire. И вот как я включил ее на своем ноутбуке:
Не делайте этого на рабочей машине! Замена существующего аудиосервиса в Ubuntu возможна, но в настоящее время не гарантируется, что она будет идеальной или свободной от проблем и ошибок.
Откройте терминал и выполните команду для установки пакета pipewire-audio-client-libraries:
sudo apt install pipewire-audio-client-libraries
Если вы установили Pipewire по инструкции выше, пропустите шаги 2.) и 3.), так как они уже есть! Также не требуется перезагрузка демона.
2.) Создайте пустой файл, выполнив команду:
sudo touch /etc/pipewire/media-session.d/with-pulseaudio
3.) Создайте служебные файлы pipewire-pulse, скопировав файлы примера:
sudo cp /usr/share/doc/pipewire/examples/systemd/user/pipewire-pulse.* /etc/systemd/user/
4.) Вам не нужно удалять PulseAudio, просто отключите его и включите Pipewire:
Выполните команду для перезагрузки новых служебных файлов:
systemctl --user daemon-reload
Отключите службу PulseAudio с помощью команды:
systemctl --user --now disable pulseaudio.service pulseaudio.socket
И, наконец, включите службы Pipewire:
systemctl --user --now enable pipewire pipewire-pulse
5.) Я выполнил предыдущие шаги с помощью Debian Wiki, но это не сработало. Значок звука в системном трее исчез, а pactl info выдал “Connection failure: Connection refused”.
Чтобы обойти проблему, включите службу pipewire-media-session, выполнив команду:
systemctl --user --now enable pipewire-media-session.service
Если вы пытаетесь заставить его работать в Ubuntu 20.04, попробуйте “замаскировать” службу PulseAudio перед перезагрузкой, выполнив команду:
systemctl --user mask pulseaudio
Наконец, перезагрузите машину.
После всех процедур, проверьте, работает ли Pipewire, выполнив команду pactl info. Если работает, вы увидите “PulseAudio (на PipeWire 0.3.24)” в выводе.
Вот и все.