Pipewire issues since updating

After I updated packages last sunday evening and booted into Fedora (36) yesterday (monday), I’ve been having strange issues with audio that weren’t there before. At first, my sound card wasn’t getting detected, but I discovered that this was a kernel issue (5.19.8-200) and it was fixed by booting into an older kernel.

However, in KDE my audio settings are gone, I’m unable to adjust the volume or mute with my keyboard, and the sound icon in the system tray is gone. Pipewire services (pipewire.service and pipewire-pulse.service) all give messages like these:

Sep 13 20:33:00 fedora systemd[1474]: Started pipewire.service - PipeWire Multimedia Service.
Sep 13 20:33:00 fedora pipewire[4495]: mod.rt: RTKit error: org.freedesktop.DBus.Error.AccessDenied
Sep 13 20:33:00 fedora pipewire[4495]: mod.rt: could not make thread 4500 realtime using RTKit: Permission denied
Sep 13 20:56:22 fedora systemd[1474]: pipewire.service: Current command vanished from the unit file, execution of the command list won't be resumed.

The wireplumber service says things like this:

Sep 13 20:59:18 fedora wireplumber[6209]: SPA handle 'api.libcamera.enum.manager' could not be loaded; is it installed?
Sep 13 20:59:18 fedora wireplumber[6209]: PipeWire's libcamera SPA missing or broken. libcamera not supported.
Sep 13 21:03:15 fedora wireplumber[6209]: dbus[6209]: Attempted to unregister path (path[0] = MediaEndpoint path[1] = A2DPSink) which isn't registered
Sep 13 21:03:15 fedora wireplumber[6209]: dbus[6209]: Attempted to unregister path (path[0] = MediaEndpoint path[1] = A2DPSink) which isn't registered
Sep 13 21:03:15 fedora wireplumber[6209]: dbus[6209]: Attempted to unregister path (path[0] = MediaEndpoint path[1] = A2DPSink) which isn't registered
Sep 13 21:03:15 fedora wireplumber[6209]: dbus[6209]: Attempted to unregister path (path[0] = MediaEndpoint path[1] = A2DPSink) which isn't registered
Sep 13 21:03:15 fedora wireplumber[6209]: dbus[6209]: Attempted to unregister path (path[0] = MediaEndpoint path[1] = A2DPSink) which isn't registered
Sep 13 21:03:15 fedora wireplumber[6209]: dbus[6209]: Attempted to unregister path (path[0] = MediaEndpoint path[1] = A2DPSink) which isn't registered
Sep 13 21:03:15 fedora wireplumber[6209]: Error opening hctl device: Permission denied
Sep 13 21:03:15 fedora wireplumber[6209]: can't open control for card hw:3: Permission denied

I do have to add that initially when I stumbled upon the missing sound issue, the audio settings, media key functionality and audio icon were still there, albeit the sound card was missing from the output. But I tried some things like reinstalling and downgrading pipewire and adjacent packages, and at some point all of these just disappeared.

After a recent update to F36 (~3 days ago) the audio on my laptop started breaking if I opened sound settings before playing any sounds. The error disappeared after upgrade to F37 but reappeared once all packages were upgraded to the lasted version.

I attempted to clean install F37 and ended up with the same result - after install everything was fine, after full upgrade the error started appearing.

I tested the error and confirmed it with several kernels (all the kernels tested):

5.19.8

5.19.7

5.19.2

pipewire version:libpipewire 0.3.57

How reproducible:

It does not work with every device. My laptop with a Skylake CPU running F37 does not suffer from this issue. Maybe it is purely Alder Lake related?

Steps to Reproduce:

1.Reboot

2.Login

3.Go straight to Audio settings and play a test sound from one of the speakers

Actual results -There is no sound

Additional info:

Laptop: Inspiron 16 Plus 7620
DE: GNOME 43.rc
CPU: 12th Gen Intel i7-12700H

systemctl --user status pipewire.service

Sep 14 12:11:07 fedora pipewire[2138]: spa.alsa: hw:sofhdadsp: snd_pcm_avail after recover: Broken pipe
Sep 14 12:11:07 fedora pipewire[2138]: spa.alsa: hw:sofhdadsp: snd_pcm_avail after recover: Broken pipe
Sep 14 12:11:07 fedora pipewire[2138]: spa.alsa: hw:sofhdadsp: snd_pcm_avail after recover: Broken pipe
Sep 14 12:11:07 fedora pipewire[2138]: spa.alsa: hw:sofhdadsp: snd_pcm_avail after recover: Broken pipe
Sep 14 12:11:07 fedora pipewire[2138]: spa.alsa: hw:sofhdadsp: snd_pcm_avail after recover: Broken pipe

systemctl --user status wireplumber

Sep 14 12:10:22 fedora systemd[2005]: Started wireplumber.service - Multimedia Service Session Manager.
Sep 14 12:10:22 fedora wireplumber[2139]: Can't find xdg-portal: (null)
Sep 14 12:10:22 fedora wireplumber[2139]: found session bus but no portal
Sep 14 12:10:22 fedora wireplumber[2139]: RTKit error: org.freedesktop.DBus.Error.AccessDenied
Sep 14 12:10:22 fedora wireplumber[2139]: could not make thread 2181 realtime using RTKit: Permission denied
Sep 14 12:10:22 fedora wireplumber[2139]: Failed to set scheduler settings: Operation not permitted
Sep 14 12:10:22 fedora wireplumber[2139]: reserve-device plugin is not connected to D-Bus, disabling device reservation
Sep 14 12:10:22 fedora wireplumber[2139]: SPA handle 'api.libcamera.enum.manager' could not be loaded; is it installed?
Sep 14 12:10:22 fedora wireplumber[2139]: PipeWire's libcamera SPA missing or broken. libcamera not supported.

journalctl is also spammed:

Sep 14 12:29:52 fedora pipewire[2138]: spa.alsa: hw:sofhdadsp: snd_pcm_avail after recover: Broken pipe
Sep 14 12:29:52 fedora pipewire[2138]: spa.alsa: hw:sofhdadsp: snd_pcm_avail after recover: Broken pipe
Sep 14 12:29:52 fedora pipewire[2138]: spa.alsa: hw:sofhdadsp: snd_pcm_avail after recover: Broken pipe

alsa.info.sh:

http://alsa-project.org/db/?f=68f2a6f9e9b66a3efe5c5b9b951cfdafee63583d

I created a bug report: 2126722 – Broken audio on F36 and F37 after latest updates, pipewire reports errors

Updated Pipewire to 0.3.58. Error messages in the pipewire and pipewire-pulse services are gone now, although the one in wireplumber persists. Audio controls and settings are still gone.

For me it was similar, but after stating here that it was the same, the maintainer stated that the issue was different and advised creating a new bug report, which I did here.

While following and filling out the template given during the bug report, it included instructions on how to test with the rawhide kernel (step 5 of the template), which worked for me. So, I can recommend trying it.

One thing I’ve noticed is that if I boot my PC, the error messages in the pipewire and pipewire-pulse services are still there, but if I restart them they’re gone. The wireplumber service always has error messages though, no matter whether I restart it or not.

In any case, audio settings and controls still gone.

Okay, fixed it.

Sorry Pipewire, I actually seemed to have removed kmix and plasma-pa when the problem occurred, and it’s fixed now that I reinstalled them.