~bohwaz/blog/

Avec de vrais morceaux de 2.0 !

Utilisation des cartes sons nommées dans ALSA

D'habitude quand on veut choisir la carte son de sortie d'un logiciel spécifique, l'exemple est de ce genre (pris de la config par défaut de MPD) :

device "hw:0,0"

Problème : vas-y pour savoir quelle carte est reconnue comme étant numéro 0, 1, 2 ou plus. Sans compter qu'en fonction de la pression atmosphérique et de l'orientation des étoiles en accord avec Vénus, ALSA donnera des numéros différents aux cartes sons à chaque redémarrage. Un vrai casse-tête !

En fait la solution est très simple, il suffit d'utiliser les cartes nommées plutôt que numérotées. Pour cela, un petit aperçu des cartes présentes est nécessaire :

$ cat /proc/asound/cards
 0 [Intel          ]: HDA-Intel - HDA Intel
                      HDA Intel at 0xfebdc000 irq 16
 1 [Live           ]: EMU10K1 - SB Live! Value [CT4830]
                      SB Live! Value [CT4830] (rev.7, serial:0x80261102) at 0xcce0, irq 18
 2 [v2             ]: USB-Audio - USB Oxygen 8 v2
                      M-Audio USB Oxygen 8 v2 at usb-0000:00:1a.0-1, full speed
 3 [default        ]: USB-Audio - USB Audio CODEC 
                      Burr-Brown from TI               USB Audio CODEC  at usb-0000:00:1a.1-2, full

Vous voyez ici le numéro de la carte, suivi du nom entre crochets, puis de la description. Le nom entre crochets peut être utilisé dans tous les logiciels parlant avec ALSA.

Par exemple moi je veux que mon MPD joue de la musique sur la carte son USB externe, sur laquelle est branché l'ampli hifi. Je veux donc la carte "default" (pas "v2" qui est un clavier MIDI en fait) et ça donne :

device "hw:default"

Par contre pour MPlayer je veux la carte son Intel pour que le son sorte sur les enceintes de l'écran :

$ mplayer -ao alsa:hw=Intel http://bohwaz.net/videos/Night_Of_The_Living_Dead/Films-Night_Of_The_Living_Dead.flv

Et oui c'est aussi simple que ça, mais hélas très peu connu. Maintenant, vous savez que c'est possible ;-)

Écrire un commentaire
(facultatif)
(facultatif)
(obligatoire)
             _          
 _ __   ___ (_)_ __ ___ 
| '_ \ / _ \| | '__/ _ \
| |_) | (_) | | | |  __/
| .__/ \___/|_|_|  \___|
|_|                     
(obligatoire)

Les adresses internet seront converties automatiquement.
Tags autorisés : <blockquote> <cite> <pre> <code> <var> <strong> <em> <del> <ins> <kbd> <samp> <abbr>