Audio problem with pipewire and Intel HD Audio controller

Discussions about using Linux guests in VirtualBox.
Post Reply
cwjordan
Posts: 6
Joined: 12. Sep 2025, 01:48

Audio problem with pipewire and Intel HD Audio controller

Post by cwjordan »

I noticed that when I run speaker-test, or do anything else that should make sound, that I get very short bursts of static at regular (half second?) intervals instead of any other sound at all when I'm using the Intel HD Audio controller on the guest. If I switch to ICH AC97 then either the problem does not occur (Ubuntu 25.10), or the system won't recognize the controller at all so no sound plays (RHEL 10.1). The sound I'm trying to play doesn't play at all, just the short clicky bursts of static, which continue until I kill whatever process is trying to make the sound. So it's not a question of poor playback or distortion or lag or anything like that - just a ticking noise.

When I'm using the Intel HD Audio controller, if I run "sudo speaker-test -c 2 -D sysdefault" instead of just "speaker-test", so that pipewire is bypassed and alsa is used directly, the sound plays fine, so it appears to be a problem with pipewire and the Intel HD Audio. No idea what, and I don't see anything in the logs that suggests (to my eyes at least) a problem.

Is anyone else seeing this? Is it a known issue? (by the way, the forum search tool refuses to let me search on the word "pipewire", for what reason I know not).

Host: iMac, Apple M3, Sequoia 15.6.1
Virtualbox: 7.2.0 r170228 (Qt6.8.0 on cocoa)
Guest #1: RHEL 10.1
Guest #2: Ubuntu 25.10
cwjordan
Posts: 6
Joined: 12. Sep 2025, 01:48

Re: Audio problem with pipewire and Intel HD Audio controller

Post by cwjordan »

I tried reducing the base memory used for the guest from 8GB to 2GB and sound then plays normally on the RHEL 10.1 guest with the Intel HD Audio controller. No idea why that works, and it's not really the best workaround.
cwjordan
Posts: 6
Joined: 12. Sep 2025, 01:48

Re: Audio problem with pipewire and Intel HD Audio controller

Post by cwjordan »

As an alternative to reducing memory to 2GB, I also got some improvement by creating a /etc/modprobe.d/local.conf file with the line:

Code: Select all

options snd-hda-intel position_fix=1
which is supposed to force the snd-hda-intel driver to use the LPIB method explicitly for DMA-Position. Sound now works sometimes, but still sometimes dies with a repeated error like:

Code: Select all

pipewire[3090]: T spa.alsa [alsa-pcm.c:2998:alsa_write_sync]:# 0xaaaabc928438: early wakeup 30720 30720 1024
So, in the end I globally disabled pipewire, and set up a ~/.asoundrc file with the following

Code: Select all

pcm.!default {
  type hw
  card 0
}

ctl.!default {
  type hw
  card 0
}
which mostly works for programs that don't expect to see pipewire (e.g. gnome won't play sound), but still occasionally fails when playing sound for more than a couple of minutes.
Post Reply