Audio stops working a few seconds after startup

Hi everyone.

After the latest Manjaro update, sound is going silent after pausing/resuming video playback. Restarting the Pipewire-related services, sockets, or ALSA makes the sound card undetectable:

sudo alsactl restore && sudo udevadm trigger
systemctl --user restart pipewire{,-pulse} wireplumber
systemctl --user restart pipewire.socket pipewire-pulse.socket

and only a restart is bringing it back, though the audio cut out still persists.

Prior to the update, my sound card had a misconfigured UCM and because of that, the internal speaker audio sounded garbled and the internal microphone was non-functional; external audio worked fine. This is a separate issue altogether but I wanted to mention it regardless so as not to confuse anyone reading the logs generated from the grep search pattern 'sof|alsa|audio|pipewire|wireplumber'.

Oddly enough, I’m not seeing any log messages which might indicate what’s at fault here, besides the same UCM errors from before the update. PipeWire appears to be functioning normally whereas Wireplumber is only complaining about a missing libcamera plugin which I don’t think is responsible for causing this issue.

Here’s another gist with the output of:

sudo inxi --admin --verbosity=7 --filter --no-host --width

A few years ago, there was a problem with Wireplumber which was reportedly causing much the same issue like this one. However, even if that was the case, I don’t wish to remove Wireplumber because my config depends on it.

Any help towards resolving the issue would be appreciated.

You look really experienced, i don’t think that i can help you much here.

I just have a few points…

It could usefull to post your inxi:
inxi --admin --verbosity=5 --filter --no-host --width

Is this behavior the same between VLC, SMPlayer and Firefox (Youtube streams)?

A system restart? Shutdown and Power On or a Warm restart?

Maybe this helps?

sudo alsactl init

I would now assume that the audio card has stopped (stopping audio playback let it suspend with pipewire) and then has to wake up again (if you resume playing). In your case, it does not wake up again. I don’t know how to disable the power saving function on SOF via its driver parameters. snd_hda_intel has it.

Anyway, it seems to me that this is a case for Issues · thesofproject/sof · GitHub The firmware is open, but you still have to have the knowledge to correct it.

Thanks for replying back.

I already have. It’s in one of the linked gists. I’ll edit the post to make it more obvious.

Yes.

Warm restart.

Haven’t tested this yet, but I will once I’ll set a test OS on another drive.

In the meantime, I have this new log file which shows the response of the system right after invoking:

sudo alsactl restore && sudo udevadm trigger
systemctl --user restart pipewire{,-pulse} wireplumber
systemctl --user restart pipewire.socket pipewire-pulse.socket

Next time round, I’ll modify the verbosity of PipeWire, which may hopefully uncover something useful, as well as diffing the audio-related config files, which I should have backed them up before restoring :upside_down_face:.

This looks promising, thanks. I’ll test this by reloading the firmware manually:

sudo modprobe -r snd-sof-pci-intel-tgl; modprobe snd-sof-pci-intel-tgl

If it succeeds in bringing the sound card back online, then it’s quite likely an SOF-related issue and will proceed from there.

inxi data suggests pipewire.service is not active and functioning normally

system-details.txt · GitHub

Server-1: PipeWire v: 1.2.3 status: n/a

Suggest check socket and service

systemctl --user -l --no-pager status pipewire.socket pipewire.service

Also suggest turn off pipewire/wireplumber services and check if audio playback direct to ALSA device is working

systemctl --user stop pipewire-pulse.socket pipewire-pulse.service pipewire.socket pipewire.service wireplumber.service