Solving Onboard and USB Sound Card Issues in Alsa

Write for Us: Familiar with Smart Home Automation, Media Streaming, HTPC, and Home Server topics? Write for us and get paid. Writing experience not required. APPLY HERE.

Like I explained in my previous post, I have an Ubuntu Server playing HD audio and video using Turtle Beach USB Audio Card and Broadcom CrystalHD.

Pulseaudio worked when using VLC for some reason I did not get Dolby/DTS passthrough from XBMC. So I had to remove it as I explained in my previous post. While pulseaudio may be a better and much complex sound server, it did not work for me like most people.

After setting up everything, I had perfect 5.1 Channel Dolby Digital sound sent through a Toslink cable and decoded by my receiver. However, upon restarting, I lost sound. After research I determined that my onboard sound card was stealing the default sound card status from my USB sound card. This is how I fixed the problem.

Find what sound modules are enabled using the following command:

less /proc/asound/modules

The output may look something like this:

0 snd_hda_intel
1 snd_usb_audio

Since I do not use my onboard sound card. I wanted to disable it. This could be done through BIOS settings or by modifying ALSA configuration files. I added my onboard sound card to /etc/modprobe.d/blacklist:

sudo nano /etc/modprobe.d/blacklist

And add the onboard sound card. Use the name that you saw in the previous output:

blacklist snd_hda_intel

Then edit /etc/modprobe.d/alsa-base.conf to enable USB audio to take the default card status:

sudo nano /etc/modprobe.d/alsa-base.conf

Add the following line:

# autoloader aliases
install sound-slot-0 /sbin/modprobe snd_usb_audio

If you do not need the remaining "autoloader aliases" lines for other sound slots then comment them out. All I have is the one line mentioned above. Then change the following line:

options snd-usb-audio index=-2


#options snd-usb-audio index=-2

This allows USB sound card to take the default card status. Reboot and you should have your USB sound card as default. My XBMC audio settings are now:

DTS: Enable
Dolby: Enable
Audio: default (ALSA)
Passthrogh: default (ALSA)
Did this post help you?
SmartHomeBeginner brings in-depth tutorials easy enough to understand even for beginners. This takes a considerable amount of work. If this post helps you, please consider supporting us as a token of appreciation:
  • Feeling generous? Become a Sponsor (discounted options) or a Patron. You will receive privileges on our Discord Server.
  • Just want to thank us? Buy us a Coffee or a Ko-Fi.
  • May be another day? Shop on Amazon using our links. Your prices won't change but we get a small commission.
  • Don't feel like spending? You can still show your support by sharing this post, linking to it in forums, or even commenting below.


Anand is a self-learned computer enthusiast, hopeless tinkerer (if it ain't broke, fix it), a part-time blogger, and a Scientist during the day. He has been blogging since 2010 on Linux, Ubuntu, Home/Media/File Servers, Smart Home Automation, and related HOW-TOs.