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

https://wiki.archlinux.org/title/PipeWire