When waking up Fedora 35 (Wayland and Gnome) after it has been at sleep, it happened the last days that the OS was really buggy and some programs crash (e.g. Firefox or Thunderbird) and the audio didn’t work.
When wanting to restart the computer, the process was taking a lot of time due to some audio procresses that didn’t want/took a lot of time to end.
I even go this message: systemd-shutdown[1]: Waiting for process: pipewire, wireplumber, alsactl
After a restart of system it works again, but this is very anoying as my system is now really instable, which wasn’t the case before!
For audio, may be you want to try with systemctl --user restart pipewire and systemctl --user restart wireplumber. Also may be you want to consider to upgrade your system. If I can recall correctly, there some update packages related to sound available.
If I can remember correctly, I also have this message couple days ago and now gone after update. But nothing wrong with my system. My guess it should be ok. For comparison my current wireplumber version at 0.4.7-2.fc35. You could check it with dnf list installed | grep wireplumber.
For above message, I search on the bugs reported on wireplumber, it’s only happen if we have sway session that use wlroots. There user reported can resolve it by edit /user/share/pipewire.conf and change:
api.v4l2.* = v4l2/libspa-v4l2
to
#api.v4l2.* = v4l2/libspa-v4l2
Then run systemctl --user restart pipewire and systemctl --user restart wireplumber.
Well I don’t really want to moify anything in my systems…I expect it to work normally without any need for tweeking. Would alsa-utils cause such an issue? (by the way my problem is still hapenning)
Hi, this only for the first error message. I think no need to uninstall it since last time I have the error report, everything works normal.
For the second error message, there a way to only configure it for current user only (not as system wide) and easy to remove.
# Copy `/usr/share/pipewire/pipewire.conf` to `~/.config/pipewire/pipewire.conf`.
mkdir ~/.config/pipewire
cp /usr/share/pipewire/pipewire.conf ~/.config/pipewire/
# Edit newly copied file
nano ~/.config/pipewire/pipewire.conf
# Inside the file, find part:
api.v4l2.* = v4l2/libspa-v4l2
# Change it to:
#api.v4l2.* = v4l2/libspa-v4l2
# Then save it with `ctrl + x`.
# Close all windows except the terminal (important), then run:
systemctl --user restart pipewire
systemctl --user restart wireplumber
If above not work and you want to go back to original setting:
# Delete local config we crated above:
rm ~/.config/pipewire/pipewire.conf
rm -rm ~/.config/pipewire
# Close all windows except the terminal (important), then run:
systemctl --user restart pipewire
systemctl --user restart wireplumber
I’m not sure for that specific case. But if something wrong with wireplumber, any client that managed by wireplumber will run sluggish (music or video player, browser, or any audio video clients). That is why if we run either systemctl --user restart pipewire or systemctl --user restart wireplumber, it’s important (at least from my experiences) to close all windows except the terminal.