I have written about using PipeWire previously where I did have a very positive experience with it. Unfortunately, I did have some irritating quarks with it that ultimately resulted in my going back to using PulseAudio on my openSUSE Tumbleweed machines. They were little things needing to refresh the browser after a Bluetooth device changed status. I decided it was time to try PipeWire again when PulseAudio started to give me random Bluetooth audio device issues where the device, after connecting, would not become available.
I have heard about many of the improvements that had come to PipeWire and decided that now was the time to try it out again. I revisited the directions I had previously put together on the installation process and sure enough it worked. I did have to make one modification to it. I added a now new module called pipewire-aptx which is the Bluetooth aptX codec plugin.
If you have an installation of openSUSE Tumbleweed that is using the PulseAudio sound server, the command is quite simple to execute in the terminal to switch you over. I have tested and verified this on multiple machines with success.
sudo zypper in pipewire pipewire-pulseaudio pipewire-alsa pipewire-aptx
The initial test of PipeWire was on my HP EliteBook because of my Bluetooth issue. Since I don’t generally use this machine for any kind of mission critical activities like recording a podcast or video streaming, this was a great place to start. A few days later, it was time to my my production machine, my Commodore 64 Impostor to PipeWire due to issues with PulseEffects.
I ran into an issue where the PulseEffects application was not actually doing its job. I usually have a gate on my mic when recording to eliminate any of the background noise when I am not talking. The gate was not gating and that was the final push move my production machine to PipeWire as well. Since the momentum is seemingly behind PipeWire, the work, the bug fixes and the new features are going to be with that project. EasyEffects, the PipeWire version of PulseEffects, after some tweaking, started to do its job and I was fully operational once again.
I received a new feature that I was not expecting after moving to PipeWire. I noticed that my Bludio headset now accepts audio input on its piddly little microphone through Bluetooth as well. It caused me a bit of confusion, initially, but now I could potentially use the headset for video conferencing. The audio quality is not as good but perhaps with the right tweaking, it could work fairly well for some circumstances.
It’s not Perfect
The experience is not perfect, to say so, would be misleading. There do seem to be a few issues with Bluetooth audio. When I switch audio devices, per application, the stream doesn’t always switch to the selected audio device. Sometimes, I have to specify “Play all audio via this device” in order for the streams to redirect to the desired output.
I also want to note, that there are occasions where PipeWire seems to forget my preferences and I have to use the radio buttons to toggle off the Bluetooth device and back to get the audio stream to stick. These are rare and not reproducible but they do happen.
A neat bonus that I now have with PipeWire, probably due to the “aptx” package, different playback profiles with various codecs. I would like to tell you I notice a difference between them in sound quality… but I don’t. They all seem to be about the same for me.
The issues, really are minimal and I know that they will likely get ironed out in the near future. It should also be known that the issues here are far, far less serious than the issue of not having audio at all, as was happening with PulseAudio. The benefits do out weigh the problems.
I truly couldn’t be happier with audio on Linux. It has already been quite good as compared to other devices I have used and I still haven’t had the opportunity utilize any low latency JACK audio server capabilities to see how it compares, but at this point, the perceived lower latency, the additional features and reliability of PulseAudio with my varied Bluetooth devices makes Audio on Linux a premium level experience. If development continues along this trajectory, I’m sure all the audiophiles out there will achieve the same sort of contentment.