Ho un netbook Acer Aspire One 522 che ha una scheda audio Intel HDA basata sul chipset Conexant CX20584. Anche se KDE emette l'audio all'avvio, flash e probabilmente molte altre app che cercano un /dev/dsp
dispositivo non riescono a trasmettere l'audio attraverso di esso, rendendo un'esperienza multimediale praticamente inutile.
Quando ho controllato i miei dispositivi di riproduzione ALSA con aplay -l
, ho potuto vedere il dispositivo audio principale essere riconosciuto come scheda 1 invece di 0, che invece era collegato a HDMI:
**** List of PLAYBACK Hardware Devices ****
card 0: Generic [HD-Audio Generic], device 3: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: SB [HDA ATI SB], device 0: CONEXANT Analog [CONEXANT Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
In questo modo ottengo un /dev/dsp1
, ma sembra che la maggior parte delle app sia solo hardcoded da usare /dev/dsp
, quindi sono andato alla ricerca di un modo di scambiare gli indici delle carte. Dopo alcune ricerche attraverso la documentazione ALSA, ho provato ad assegnare indici ai moduli driver utilizzati da HDMI e Intel HDA con questo /etc/modprobe.d/asound.conf
file:
options snd cards_limit=2
options snd-hda-codec-conexant index=0
options snd-hda-codec-hdmi index=1
options snd slots=snd-hda-codec-conexant,snd-hda-codec-hdmi
Tuttavia, ciò non ha funzionato, e sulla base di un link dimenticato sulla mia ricerca infinita di una risposta, sembra che queste index
direttive debbano coordinare l'ordine di caricamento del modulo, ma sia questi codec Conexant che HDMI utilizzano lo stesso Intel HDA modulo driver, quindi sembra non essere applicabile in questo caso.
Detto questo, esiste un modo per definire gli indici delle carte corretti quando i dispositivi utilizzano lo stesso modulo driver ALSA (Intel HDA in questo caso)?