Minulla oli vähän samantapainen ongelma, eli emolevyn äänikortti sotki asioita. Asoundconfilla sain kyllä säädettyä haluamani äänikortin defaultiksi, mutta esim. Realplayer ei käyttänyt tätä defaulttia, vaan se otti automaattisesti käyttöönsä ensimmäisen äänikortin, mikä oli emolevyn äänikortti.
Ratkaisu minun tapauksessani oli yksinkertaisesti se, että tein /etc/modprobe.d hakemistoon tiedoston nimeltä alsa, jossa asetin äänikortit haluamaani järjestykseen.
Ensin täytyy selvittää mitä äänikorttimoduuleja on ladattu, ja missä järjestyksessä ne ovat. Tämä selviää seuraavalla komennolla:
cat /proc/asound/modules
Minulla tuosta tulostuu seuraava lista:
0 snd_emu10k1
1 snd_ice1712
2 snd_hda_intel
Tuosta siis saadaan selville minkä nimisiä moduuleita on käytössä, esim. soundblaster on nimeltään snd_emu10k1 ja emolevyn äänikortti on nimeltään snd_hda_intel, ja missä järjestyksessä ne ovat. Sitten vain asetan nuo äänimoduulit haluamaani järjestykseen /etc/modprobe.d/alsa -tiedostossa. Minulla tuon tiedoston sisältö näyttää seuraavanlaiselta:
alias snd-card-0 snd_emu10k1
alias snd-card-1 snd_ice1712
alias snd-card-2 snd_hda_intel
(nämä molemmat listat ovat tietysti jo samassa järjestyksessä, koska olen jo tehnyt tämän säädön)
Eli minulla on Soundblaster ensimmäisenä (snd_emu10k1) ja emolevyn äänikortti viimeisenä (snd_hda_intel). Tuota /etc/modprobe.d/alsa -tiedostoa ei muuten oletuksena ollut olemassa, vaan se täytyi erikseen luoda.