Audio issues - no sound or one channel only. Sometimes fixed when playing audio from another qube

With Qubes 4.2.3 I have serious audio issues. I am a noob when it comes to audio, so please forgive me if my issues are easily-fixed.

Hardware - no external sound card, 3.5 mm aux headphones. No hardware or cabling issue.

On 4.2.3 I often can’t hear anything when playing audio, or I just hear audio through one channel only - left or right. This is sometimes fixed by playing audio in another qube.

This happens regardless of which app I play the audio from (e.g., VLC, Firefox, Fedora’s Videos app), regardless of the OS (Fedora 40, Debian 12, Whonix 17) and regardless of what type of file or stream I am trying to play.

Playing audio from different apps or qubes at the same time is also buggy. Sometimes I don’t hear anything at all, sometimes I hear only one of the “streams” (not sure about the terminology here).

The issues are in , with VLC, Firefox, the Fedora “Videos” app and other apps I can’t recall now.

This has never happened to me before 4.2.3 - I have been able to play a sound file on one qube, play an YouTube video on another qube and have a call on a third qube all at the same time without any issues before.

I don’t have a sys-audio qube, because, as I understand it, it is necessary for USB audio, but I have a standard 3.5 mm aux jack.

I saw several different forum posts and issues, but I can’t find anything specific to my setup and issues.

[user@dom0 ~]$ systemctl --user status pulseaudio
Unit pulseaudio.service could not be found.
[user@dom0 ~]$ systemctl --user status pipewire
● pipewire.service - PipeWire Multimedia Service
     Loaded: loaded (/usr/lib/systemd/user/pipewire.service; enabled; preset: enabled)
     Active: active (running) since Mon 2024-10-28 00:08:49 EET; 6 days ago
TriggeredBy: ● pipewire.socket
   Main PID: 12450 (pipewire)
      Tasks: 3 (limit: 4605)
     Memory: 42.9M
        CPU: 6min 21.379s
     CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/pipewire.service
             └─12450 /usr/bin/pipewire

Nov 02 19:38:56 dom0 pipewire[12450]: pw.node: (alsa_output.pci-0000_00_1f.3.analog-stereo-45) suspended -> error (Start error: Cannot allocate memory)
Nov 03 00:35:50 dom0 pipewire[12450]: spa.alsa: set_hw_params: Cannot allocate memory
Nov 03 00:35:50 dom0 pipewire[12450]: pw.node: (alsa_output.pci-0000_00_1f.3.analog-stereo-45) suspended -> error (Start error: Cannot allocate memory)
Nov 03 00:57:13 dom0 pipewire[12450]: spa.alsa: set_hw_params: Cannot allocate memory
Nov 03 00:57:13 dom0 pipewire[12450]: pw.node: (alsa_output.pci-0000_00_1f.3.analog-stereo-45) suspended -> error (Start error: Cannot allocate memory)
Nov 03 00:57:18 dom0 pipewire[12450]: spa.alsa: set_hw_params: Cannot allocate memory
Nov 03 00:57:18 dom0 pipewire[12450]: pw.node: (alsa_output.pci-0000_00_1f.3.analog-stereo-45) suspended -> error (Start error: Cannot allocate memory)
Nov 03 00:57:18 dom0 pipewire[12450]: pw.link: 0x5b3984b0a4f0: one of the nodes is in error out:running in:error
Nov 03 00:57:23 dom0 pipewire[12450]: spa.alsa: set_hw_params: Cannot allocate memory
Nov 03 00:57:23 dom0 pipewire[12450]: pw.node: (alsa_output.pci-0000_00_1f.3.analog-stereo-45) suspended -> error (Start error: Cannot allocate memory)
[user@dom0 ~]$ uname -r
6.6.48-1.qubes.fc37.x86_64
[user@dom0 ~]$ ps -ef | grep -iE 'pipe|audio|pulse'
user       12450   12441  0 Oct28 ?        00:06:21 /usr/bin/pipewire
user       12452   12441  0 Oct28 ?        00:10:21 /usr/bin/pipewire-pulse
user       12571   12544  0 Oct28 ?        00:13:29 /usr/lib64/xfce4/panel/wrapper-2.0 /usr/lib64/xfce4/panel/plugins/libpulseaudio-plugin.so 7 14680072 pulseaudio PulseAudio Plugin Adjust the audio volume of the PulseAudio sound system

How should I proceed with troubleshooting? Any logs I could monitor in real time?

Thanks :slight_smile:

1 Like

Try to use the kernel-latest in dom0.
Also maybe you don’t have enough memory in dom0, check the memory usage and maybe try to increase the dom0 memory.
Related:
https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3895
https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/2272

2 Likes

I think I have enough memory in dom0 - about 1.6 GB for buff/cache. I think that means that memory can be quickly reused for other things, right? Although the “free” memory is just 50-100 MB. Tested with top in dom0.

As a workaround, as I haven’t yet tried changing the kernel, restarting the pipewire service fixes the issues temporarily:

systemctl --user restart pipewire

from dom0.

If you have this amount of available memory at the time when the issue happens to you then it shouldn’t be a memory issue.
Also maybe it could be a problem with not enough memory in the qube where this issue happens.

Interestingly, after enough uptime and about 10 restarts of the pipewire service around the time I posted, the issue hasn’t reoccurred. Even after restart (and dom0 and template updates) it hasn’t reoccurred.

It wasn’t not an issue with RAM in the qubes, either. top showed OK results and the qubes had similar RAM to before I started getting the issue.

If it reoccurs, I’ll be happy with applying the workaround.