Alsa: impostare l'ordine delle schede audio (e quella di default)

Tags: 

La scheda audio predefinita è la prima nell'elenco rilevato da ALSA. Questo elenco però potrebbe cambiare a ogni reboot (ad esempio se abbiamo delle schede audio USB che vanno e vengono), e questo può dare problemi sia per avere dei riferimenti certi delle schede, sia per sapere qual'è la scheda predefinita. Considerando che alcuni programmi usano questa (ad esempio Flash) e spesso cambiarla è una rottura, è importante specificare un ordine.

Per prima cosa dobbiamo capire quali sono i moduli del kernel legati alle nostre schede, con questo comando:

lsmod | grep "^snd_" | column -t

Il risultato nel mio caso è:

snd_hda_codec_hdmi     23704   1
snd_hda_codec_realtek  59331   1
snd_usb_audio          100181  2
snd_usbmidi_lib        18744   1  snd_usb_audio
snd_rawmidi            18479   1  snd_usbmidi_lib
snd_seq_device         5300    1  snd_rawmidi
snd_hda_intel          25700   2
snd_hda_codec          97464   3  snd_hda_codec_realtek,snd_hda_codec_hdmi,snd_hda_intel
snd_hwdep              6300    2  snd_usb_audio,snd_hda_codec
snd_pcm                74926   4  snd_usb_audio,snd_hda_codec_hdmi,snd_hda_codec,snd_hda_intel
snd_page_alloc         7217    2  snd_pcm,snd_hda_intel
snd_timer              18966   1  snd_pcm

I moduli effettivi in genere sono quelli che non hanno moduli collegati a destra, e che non hanno "coded" nel nome. Nel mio caso: snd_usb_audio e snd_hda_intel.

A questo punto facciamo un file /etc/modprobe.d/alsa.conf così fatto:

options snd slots=snd_hda_intel,snd_usb_audio
options snd_hda_intel index=0
options snd_usb_audio index=1

Questo specifica che la scheda intel è sempre al primo posto, e poi segue l'usb.

Riavviamo e siamo a posto.

Per verificare l'assegnamento delle schede:

aplay -l

Vedi:

https://wiki.archlinux.org/index.php/Advanced_Linux_Sound_Architecture#S...

1 Comment

Aggiungi un commento