How to disable the internal sound card?

I have an internal soundcard and an external USB soundcard that I use because the headphone jack in my laptop is broken. I need to be able to disable the internal card so sound will go through the USB card. This was acheivable through system settings > sound in 11.10 .

I tried clicking on the internal sound card in the list, and muting it, then going to the USB sound card's digital output (S/PDIF) and found that it was muted as well, so I unmuted it. Then, I hit test sound, but the sound came through internal speakers again. I checked the internal card, and it was unmuted again.

I repeated the same process with the analog output of the USB card as well. Same thing happened.

I have not tried this yet, but I believe when I plug in my Logitech webcam, I will need to disable the built-in laptop microphone, the laptop mic jack, and the USB mic jack, for the microphone in the webcam to work as well.

The input side is suffering the same problem as output about muting all devices instead of just one. Maybe I'm missing something on the dialog.

I just need to know how to selectively enable/disable sound devices through the options dialog. I'm sorry if I put this in the wrong place, probably need to file bug report.


Solution 1:

When I looked through the list of loaded kernel modules on my system:

lsmod | less

I found this:

snd_ens1370      21536   0
gameport         16776   1 snd_ens1370
snd_ak4531_codec 9856    1 snd_ens1370
snd_pcm          80388   5 snd_ens1370,snd_intel8x0,snd_ac97_codec

There was no doubt in my mind - I needed to stop the kernel from loading the module snd_ens1370.

I had considered just deleting it all together:

$ locate 1370
/lib/modules/2.6.22-14-generic/kernel/sound/pci/snd-ens1370.ko
/usr/src/linux-headers-2.6.22-14-generic/include/config/snd/ens1370.h
/usr/share/alsa/cards/ENS1370.conf

But it turns out there is a more elegant way; to disable hardware in Ubuntu blacklist the module instead. Take a look at, /etc/modprobe.d/blacklist.

To disable my Ensoniq sound card in Ubuntu - I added the following lines to that file:

# disable my PCI ensoniq sound card
blacklist snd_ens1370

then just reboot...

Solution 2:

In your particular case I would recommend just disabling the internal sound card from bios settings since it sounds like your internal card is not usable.

That being said, if you have multiple sound cards you should be able to switch between them by selecting the output device from output tab in sound preferences. You should see all your sound devices in the output tab. You can put some music to play and try switching between the devices by just clicking on them, it should reflect right away and channel the sound through the right device.