PipeWire, Linux’ta ses, video akışları ve donanımı işlemek için bir sunucudur. Pulseaudio için daha modern bir alternatifidir. PipeWire pulseaudio için bir uyumluluk modülüne sahip olduğu için pulseaudio uyumlu uygulamalarda da sorunsuz şekilde çalışabilmektedir.
Neden pulseaudio yerine PipeWire ?
Dün arkadaşımın Pardus 21 yüklü bilgisayarında podcast kaydı için kulandığı mikrofonunu çalıştırmayı denedik. Mikrofonu pulseaudio ile düzgün bir şekilde çalıştıramadık. Bunun üzerine PipeWire yüklü şekilde kullandığım kendi bilgisayarıma (tamamen aynı marka ve model laptop) taktım ve çalıştığını fark ettim. Arkadaşımın bilgisayarına PipeWire yüklemeyi önerdim. PipeWire yükledik fakat bu sefer de bluetooth kulaklığını çalışmadığını fark ettik. Bunun üzerine bol miktarda forum, wiki araştırması ve birazda şansla sorunun kaynağını bulup giderdik. Kendisi de artık PipeWire kullanıyor.
Bu yazıyı yaşadığımız sorunu yaşayanlara rehber olması amacı ile hazırlıyoruz.
Kurulum
Pardus 21de varsayılan olarak pulseaudio kurulu gelmektedir. Bu yazıda pulseaudio silip yerine pipewire kurulumunu anlatacağız.
pipewire-pulse ile pulseaudio çakışmaya sebep olduğu için öncelikle pulseaudio paketini silelim.
apt purge pulseaudio pulseaudio-module-bluetooth
Wireplumber paketi yalnızca backports ile sağlandığı için backports deposunu etkinleştirelim.
cat > /etc/apt/sources.list.d/yirmibir-backports.list << EOF deb http://depo.pardus.org.tr/backports yirmibir-backports main contrib non-free EOF apt update
Backports deposundan tüm sistemi güncellemenizi öneririm. (İsteğe bağlı)
cat > /etc/apt/preferences.d/yirmibir-backports_default << EOF Package: * Pin: release n=yirmibir-backports Pin-Priority: 500 EOF
apt update apt full-upgrade
Şimdi pipewire yükleyelim.
apt install -t yirmibir-backports pipewire wireplumber pipewire-pulse libspa-0.2-bluetooth
Not: libspa-0.2-bluetooth paketi bluetooth aygıtlarını kullanabilmek için gerekmektedir. Bluetooth kullanmıyorsanız yüklemek zorunda değilsiniz.
Son olarak sistemi yeniden başlatalım. (veya pkill -KILL -u $USER komutunu kullanabilirsiniz.)
Çalışıp çalışmadığından emin olmak için wpctl status komutunu kullanabilirsiniz.
Kaynakça:
https://wiki.debian.org/BluetoothUser
https://wiki.debian.org/PipeWire
https://turkman.gitlab.io/devel/doc/wiki/02-donanim/02-coklu-ortam/00-pipewire.html