Probleme mit der Soundkonfiguration

Als ich gestern abend so richtig schön mit der Webcam gespielt habe wollte ich auch gucken, ob das was „luvcview“ als Video aufnimmt auch mit Tonspur kommt. Kommt es nicht, aber ges gibt ja genügend Sound-Recorder unter Linux und ich habe dann mal geschaut, ob das USB-Mikrofon von „Krec“ oder „audacity“ erkannt wird. Letzteres Programm kann das, aber irgendwann später merkte ich, daß ich bei YouTube-Videos keinen Ton mehr hatte und daß die KDE-Systemklänge auch nicht mehr klingen wollten.

An dem Punkt habe ich dann mal versucht, mit „alsaconf“ den Sound wieder zu reaktivieren was auch ging, aber dafür war das exakt gleiche Problem beim nächsten Reboot wieder da. Man kann zwar im laufenden Betrieb wieder „alsaconf“ aufrufen, das entlädt alle Sound-Treiber und lädt sie wieder, aber danach muß man noch den USB-Audio-Treiber fürs Kameramikrofon laden und so richtig der Brüller ist das nicht, wenn ich bei jedem Boot erst mal die Handkurbel brauche um den Sound zu aktivieren.

Also war die Suche nach der Wurzel des Übels angesagt. Die erste Adresse zum Wühlen heißt ja „/proc/asound“ und das sieht in einer lauffähigen Konfiguration so aus:

ls -l /proc/asound
insgesamt 0
dr-xr-xr-x 7 root root 0 15. Aug 09:14 card0
dr-xr-xr-x 3 root root 0 15. Aug 09:14 card1
-r--r--r-- 1 root root 0 15. Aug 09:14 cards
-r--r--r-- 1 root root 0 15. Aug 09:14 devices
-r--r--r-- 1 root root 0 15. Aug 09:14 hwdep
-r--r--r-- 1 root root 0 15. Aug 09:14 modules
dr-xr-xr-x 2 root root 0 15. Aug 09:14 oss
-r--r--r-- 1 root root 0 15. Aug 09:14 pcm
dr-xr-xr-x 2 root root 0 15. Aug 09:14 seq
-r--r--r-- 1 root root 0 15. Aug 09:14 timers
lrwxrwxrwx 1 root root 5 15. Aug 09:14 U0x46d0x9a4 -> card1
lrwxrwxrwx 1 root root 5 15. Aug 09:14 V8237 -> card0
-r--r--r-- 1 root root 0 15. Aug 09:14 version

Man sieht also 2 Soundkarten card0 die VIA onboard Soundkarte meines Mainboards, und card1 das USB-Device.

Guckt man jetzt mal ins Bootlog eines mißglückten Startversuches, dann sieht man folgendes:

[ 5.238602] usb 5-4: configuration #1 chosen from 1 choice
[ 5.238956] usb 5-4: New USB device found, idVendor=046d, idProduct=09a4
[ 5.239016] usb 5-4: New USB device strings: Mfr=0, Product=0,
SerialNumber=2
[ 5.239076] usb 5-4: SerialNumber: 9003DC20
.
.
.
.
[ 14.462662] cannot find the slot for index 0 (range 0-0), error: -16
[ 14.462730] VIA 82xx Audio: probe of 0000:00:11.5 failed with error -12

Bedeutet: Der USB-Treiber wird als erster geladen und wenn die Module für den VIA chip geladen werden können sie nicht mehr als „card0“ konfiguriert werden. „alsaconf“ hat nämlihc eine Datei „/etc/modprobe.d/sound“ angelegt die so aussieht:

alias snd-card-0 snd-via82xx
options snd-via82xx index=0

Der VIA Soundchip wäre also gerne card0, kann es aber nicht, da der früher bediente USB-Sound schon diesesn Slot besetzt hat.

Ein Blick in den letzten Backup-Katalog hat dann gezeigt, dass damals noch gar keine solche Konfigurationsdatei in „/etc/modprobe.d/“ existierte. Also habe ich die Datei dann
mal aus dem Weg geräumt und beim nächsten Boot hatte ich tatsächlich 2 Sound-Devices, allerdings nun das USB-Mikro als „card0“ und der Soundchip als „card1“. Damit gingen die KDE-Systemsounds wieder nicht und bevor ich lange philosophiere, wie ich KDE jetzt wieder beibringe „card1“ zu nutzen habe ich die Konfigurationsdatei einfach erweiter. Nun sieht sie so aus:

alias snd-card-0 snd-via82xx
options snd-via82xx index=0
alias snd-card-1 snd-usb-audio
options snd-usb-audio index=1

Und damit funktioniert alles wieder wie gewohnt. Die Sound-Devices sind da und in der Reihenfolge wie ich sie brauche und alles ist gut. Root-Cause gefunden und verstanden und das richtige Mittel dagegen angewendet.