Pipewire as default in Manjaro in the near future?

Hey guys,
I would like to know if there are plans to replace PulseAudio with Pipewire in Manjaro in the near future, or to make Pipewire the default? As far as I have seen, Pipewire is already installed by default in other Arch-based distributions like Garuda Linux. I’m particularly interested in the question because of the support for the mSBC codec in HFP mode on Bluetooth headsets.
PulseAudio is supposed to be able to handle this from version 15.0, but it is not yet clear when this will be released. Overall, I have the impression that the development of PulseAudio seems to be more or less asleep, at least it is quite slow.
Also, other distributions like Fedora already use Pipewire by default, and it seems to work quite well from what I heard…

I would also like to know how I can use a Sony Bluetooth headset that supports mSBC with Pipewire under Manjaro without disturbing noises or such, for Zoom conferencing, Skype calls etc. I don’t want to change the distribution (and certainly not move away from Arch base), nor do I want to have to use Windows after I was happy to kick it into the garbage can. :stuck_out_tongue_winking_eye:
If necessary, I will open another thread in the support area for that.

5 Likes

it’s not a replacement it sits on top of pulseaudio. like a front end.
this is a fresh install of sway & it’s using pipewire.

2 Likes

I want to give the strongest of all +1s to this suggestion. PulseAudio’s bluetooth support is almost a decade behind, you can’t even have microphone and speaker at the same time!

Pipewire has been maturing very quickly. Fedora is already migrating to Pipewire by default, I think Manjaro should too.

4 Likes

Pipewire is installed by default, at least parts of it, you can see that clearly. My question refers to what is written about it in the ArchWiki under the following link:

“PipeWire can be used as an audio server, similar to PulseAudio and JACK. It aims to replace both PulseAudio and JACK, by providing a PulseAudio-compatible server implementation and ABI-compatible libraries for JACK clients”

Installing the manjaro-pipewire meta-package removes various dependencies from PulseAudio, and with them PulseAudio itself. The question this raises for me: To enable support for mSBC in a full Pipewire, one has to edit the file /etc/pipewire/media-session.d/bluez-monitor.conf. This file does not exist for me, I only have the folder /etc/pipewire. When I installed the metapackage manjaro-pipewire in a previous installation of Manjaro and edited the mentioned entry, the mSBC codec was still not active. Where the error lay there, I do not know anymore.

This is exactly the problem I was referring to. The simultaneous use of headphones and integrated microphone via Bluetooth with decent quality. This is exactly what the mSBC codec allows at around 16 Hz.

3 Likes

I switched to pipewire on my desktop, after using it for a while on my Pinebook Pro.

Can’t say I have any issues, so I am for this change.

If you want to switch, and help test, you can do so, by installing manjaro-pipewire and reboot.

1 Like

Installing pipewire is very easy, but if you also want mSBC codec for headsets, then you need a small config change. (set bluez5.msbc-support to true in /etc/pipewire/media-session.d/bluez-monitor.conf) It would be great to automate that as well.

Hm, seems it is disabled by default by upstream.

The reason might be this line, I found in a Merge Request:

Which could explain why it’s disabled by default.

I use a WH-CH700N headset from Sony, together with a USB Bluetooth adapter with Realtek chip. As far as I know, this works with mSBC. Under Windows I have the possibility to use simultaneously headphone and microphone function of the headset via Bluetooth, in decent quality. But this is really not a viable solution approach.
Can you tell me how you installed manjaro-pipewire? I have PulseAudio dependencies in the way that can’t be removed.

My Terminal output:

Löse Abhängigkeiten auf…
Suche nach in Konflikt stehenden Paketen…
:: manjaro-pipewire und manjaro-pulse stehen miteinander in Konflikt. manjaro-pulse entfernen? [j/N] j
:: pipewire-pulse und pulseaudio stehen miteinander in Konflikt. pulseaudio entfernen? [j/N] j
:: pipewire-pulse und pulseaudio-bluetooth stehen miteinander in Konflikt. pulseaudio-bluetooth entfernen? [j/N] j
Fehler: Konnte den Vorgang nicht vorbereiten (Kann Abhängigkeiten nicht erfüllen)
:: Entfernen von pulseaudio verletzt Abhängigkeit ‘pulseaudio=14.2-3’, benötigt von pulseaudio-equalizer
:: Entfernen von pulseaudio verletzt Abhängigkeit ‘pulseaudio=14.2-3’, benötigt von pulseaudio-jack
:: Entfernen von pulseaudio verletzt Abhängigkeit ‘pulseaudio=14.2-3’, benötigt von pulseaudio-lirc
:: Entfernen von pulseaudio verletzt Abhängigkeit ‘pulseaudio=14.2-3’, benötigt von pulseaudio-rtp
:: Entfernen von pulseaudio verletzt Abhängigkeit ‘pulseaudio=14.2-3’, benötigt von pulseaudio-zeroconf

This was not an issue on my system, so you must have installed something related to pulseaudio at some point. pulseaudio-equalizer maybe…

Seems pulseaudio-equalizer requires a specific (very specific) version of Pulseaudio, so that won’t work with pipewire, since pipewire just provides pulseaudio, not a specific version of pulseaudio.

So if you really want to try Pipewire, you need to remove pulseaudio-equalizer first.
Same with pulseaudio-lirc and pulseaudio-rtp.

1 Like

No, it’s a drop-in replacement. It doesn’t use any of the PA code or service, but it implements compatible interface (99%, still missing a few small things that most people may not care) that’s usable by applications expecting PA API, including but not limited to libpulse binaries, such as parecord and paplay.

yeah, i see now it can be used both ways.

Remove the Pulseaudio dependency packages that manjaro-pipewire does not recognise

sudo pacman -Rud pulseaudio-bluetooth pulseaudio-equalizer pulseaudio-jack pulseaudio-lirc pulseaudio-rtp pulseaudio-zeroconf
2 Likes

Doing so now, to help out with the testing
FEL: misslyckades hämta filen ‘pipewire-media-session-1:0.3.28-1-x86_64.pkg.tar.zst’ från mirror.futureweb.be : The requested URL returned error: 404
seems the files is missing on the mirrors

Thank you :blush: I did that shortly after starting this thread. It basically works as it should. :blush:

After a good 2 days of testing, I can say that Pipewire works smoothly with Manjaro. Also my Bluetooth headset now runs with the mSBC codec in the HFP/HSP profile.
I could not notice any sound problems with or without the headset. Accordingly, I would advocate a general switch from PulseAudio to Pipewire in Manjaro. As previously stated, this seems to work in other distributions as well. Also in Arch Linux on one of my notebooks.

Thanks for your help, and especially thanks for Manjaro. It is a fantastic distribution! :blush:

had wrong and faulty mirrorlists got help from @Strit over Telegram to fix it and will help test pipewire now

testing pipewire now and still got sound :slight_smile:

2 Likes

Don’t know why everyone is so excited about PipeWire. On my side it has a disastrous problem
with detecting headphones plug-in and plug-out. PulseAudio service, on the other side, works flawlessly.
I don’t know what the reason is, in latest Fedora pipewire-pulse does that correctly too. In Manjaro, on the other hand…

1 Like

I think the biggest source of excitement is that Pipewire finally brings bluetooth headset support to Linux. PulseAudio can’t handle sound and mic at the same time.