I know there have been a lot of topics about the wireplumber hotfix this past week, but I’m needing advice. Over the last day I’ve been researching and narrowed down reproducing the problem.
I know many installations, like mine, have pipewire and pulseaudio servers running at the same time. I’ve also read that some applications require pipewire, and some require pulseaudio. This is where my confusion is coming from, as I’m nervous to remove one.
inxi -Faz |grep Sound
Sound Server-1: ALSA v: k5.14.16-zen1-1-zen running: yes
Sound Server-2: JACK v: 1.9.19 running: no
Sound Server-3: PulseAudio v: 15.0 running: yes
Sound Server-4: PipeWire v: 0.3.39 running: yes
I applied the hotfix via update, and I also have garuda-maintenance installed.
I have wireplumber, but not pipewire-media-session installed:
sudo pacman -Qi pipewire-media-session wireplumber
error: package 'pipewire-media-session' was not found
Name : wireplumber
Version : 0.4.4-4
Description : Session / policy manager implementation for PipeWire
Architecture : x86_64
URL : https://gitlab.freedesktop.org/pipewire/wireplumber
Licenses : MIT
Groups : None
Provides : libwireplumber-0.4.so=0-64 pipewire-session-manager
Depends On : gcc-libs glibc lua libgio-2.0.so=0-64 libglib-2.0.so=0-64
libgmodule-2.0.so=0-64 libgobject-2.0.so=0-64 libpipewire-0.3.so=0-64
Optional Deps : wireplumber-docs: for documentation
Required By : gst-plugin-pipewire kwin pipewire-alsa pipewire-jack pipewire-v4l2
Optional For : pipewire
Conflicts With : pipewire-media-session
Replaces : None
Installed Size : 1894.14 KiB
Packager : David Runge <[email protected]>
Build Date : Mon 25 Oct 2021 06:16:01 PM EDT
Install Date : Tue 26 Oct 2021 02:25:28 PM EDT
Install Reason : Installed as a dependency for another package
Install Script : Yes
Validated By : Signature
The actual issue I’m having is that, at random, all output devices will vanish and I’m left with no sound until a full system restart. After digging, I’ve come to realize wireplumber is stealing control of all my sound devices, but I get no sound.
fuser -v /dev/snd/*
USER PID ACCESS COMMAND
/dev/snd/controlC0: steve 116591 F.... pulseaudio
steve 116920 F.... wireplumber
/dev/snd/controlC1: steve 116591 F.... pulseaudio
steve 116920 F.... wireplumber
/dev/snd/controlC2: steve 116591 F.... pulseaudio
steve 116920 F.... wireplumber
/dev/snd/seq: steve 24768 F.... pipewire
I can restore sound by :
kill 116920
systemctl --user restart pulseaudio
And now wireplumber is gone:
fuser -v /dev/snd/*
USER PID ACCESS COMMAND
/dev/snd/controlC0: steve 116591 F.... pulseaudio
/dev/snd/controlC1: steve 116591 F.... pulseaudio
/dev/snd/controlC2: steve 116591 F.... pulseaudio
/dev/snd/pcmC0D0p: steve 116591 F...m pulseaudio
/dev/snd/pcmC1D3p: steve 116591 F...m pulseaudio
/dev/snd/pcmC2D0c: steve 116591 F...m pulseaudio
/dev/snd/pcmC2D0p: steve 116591 F...m pulseaudio
If I restart wireplumber from this point, sound dies again until I kill it and restart pulseaudio. Sometimes wireplumber will just start running on its own, and it seems to happen when I launch some games via steam. Not an exact science here, I’m just happy I was able to narrow it down.
Also, in garuda assistant, only ALSA and PulseAudio support are ticked under Audio. This has been applied, and system restarted.
The advice I need here is, what do I do? Do I get rid of wireplumber? Do I get rid of pulseaudio and go full pipewire? Does the hotfix address this, and if so, why is it still happening?