PulseAudio not recognizing Intel HDA after upgrading to Debian testing (Buster)

I ended up here because of the very same problem, after upgrading from Stretch, the audio disappeared. Similar symptoms and outputs (Nvidia card and Intel HDA sound). While following instructions, though, I've found that I couldn't get this step to work:

root@desk:~# aplay -D plughw:0,0 /usr/share/sounds/alsa/Front_Center.wav
aplay: main:828: audio open error: Device or resource busy

I found that the culprit was timidity:

root@desk:~# fuser -v /dev/snd/*
                     USER        PID ACCESS COMMAND
/dev/snd/pcmC0D0p:   timidity   1274 F...m timidity
/dev/snd/seq:        timidity   1274 F.... timidity

Once I killed it, I could proceed editing /etc/pulse/default.pa and everything snapped into place. I'm still not sure if the issue was the missing PA sink or timidity taking over.

I've also considered filing a bug report, but I'm not sure where would be more appropriate. If you have any suggestions, I'll be happy to follow your lead and add my support to the report.

Thank you for sharing the solution!


I just had this exact issue, and uninstalling Timidity solved it. Literally, as the package was removed by apt, I saw a notification showing I have a sound card (interpreted as a volume change).


Should anyone else run into this, here's a workaround to force PulseAudio to use the ALSA device...

First, confirm you know the correct sound card and device you want by playing some audio directly via ALSA:

aplay -D plughw:<CARD#>,<DEVICE#> /usr/share/sounds/alsa/Front_Center.wav

In my case I wanted the optical audio output so based on my aplay -l output as seen in my question above it was:

aplay -D plughw:0,1 /usr/share/sounds/alsa/Front_Center.wav

Make a note of the card and device number and add an entry to /etc/pulse/default.pa (replace 0,1 with what worked for you in the previous step):

load-module module-alsa-sink device=plughw:0,1

I added this line immediately before the .ifexists module-udev-detect.so line in the file (i.e. underneath the ### Load audio drivers statically comment)

Then run the following as the user your desktop session is logged in as (i.e. not as root):

pulseaudio --kill
pulseaudio --start

Then you should be able to open Sound Settings to see and select the card:

enter image description here

At this point, you should have audio playback through PulseAudio working again. (Something I noticed is that pacmd list-cards will still not list the card even though it now works) Reminder: this is a workaround and not the long term fix so be sure to make a note to yourself to undo this at some point in the future to see if it's been fixed properly. But it gets audio working for the time being.