Version française du ALSA Multi-channel Audio mini-HOWTO
Version : 2008-02-08.fr.1.0
25 mars 2008
Résumé
Ce petit guide est conçu pour ceux qui veulent installer une sortie audio 4.1 ou 5.1 canaux sur leur machine Linux, et pouvoir utiliser tous leurs haut-parleurs. La plupart des informations de ce document proviennent de la documentation, de la FAQ, et des pages de manuel d'ALSA.
Table des matières
Merci de faire parvenir à l'auteur, en anglais, vos questions et
commentaires relatifs à la version originale de ce document, à
l'adresse <bondhugula POINT 1 CHEZ osu POINT edu>
.
N'hésitez pas à faire parvenir vos commentaires et suggestions
concernant l'adaptation française de ce document au projet Traduc.org à l'adresse :
<commentaires CHEZ traduc POINT org>
.
L'auteur décline toute responsabilité quant aux dommages que vous pourriez causer à quoi que ce soit en suivant les instructions de ce guide pratique. Cela dit, cela demanderait un talent incroyable.
Vous devez disposer d'une carte son ou d'un circuit sonore intégré 4.1 ou 5.1 canaux (par exemple un circuit Intel ICH5 ou un circuit équivalent plus récent) et de haut-parleurs 4.1, 5.1 ou 6.1 (comme par exemple pour du 5.1 : deux avants, deux arrières, un central et un caisson de basses). Je supposerai que vous disposez de l'une des dernières version d'ALSA (la version 1.0.16 est la dernière disponible à la date de traduction de ce document), et que les pilotes de votre ou de vos cartes sont correctement installés. Ce qui ne devrait pas poser de problème si vous utilisez une distribution Linux reconnue.
Vous avez effectué correctement vos branchements (en respectant le code des couleurs de chaque port) comme expliqué dans le manuel de vos haut-parleurs. Si vous avez une carte son avec les canaux 5.1 séparés, vous devez avoir des ports séparés pour avant, arrière, centre, microphone, etc.
Pour la plupart des cartes fournies avec le chipset audio ICH5, les canaux arrières sont partagés avec la sortie "line-in", et le microphone avec Center/LFE.
La meilleur façon d'installer vos haut-parleurs serait de connecter ces ports partagés aux haut-parleurs, et d'utiliser les ports du panneau frontal pour le micro et le casque.
Par défaut, vous constaterez que seuls les haut-parleurs frontaux (2 sorties avant pour le 5.1 par ex.) sont utilisés chaque fois que vous émettez du son avec xmms, mplayer, ou tout autre application (à moins que de l'audio 5.1 soit encodée).
Vous voulez du son sur tous vos haut-parleurs même pour une source stéréo; vous devez donc faire cette configuration manuelle additionnelle. Je n'aime pas dire ça, mais M$ Windows est très en avance dans ce cas précis
(Vous n'avez rien d'autre à faire que choisir votre configuration de haut-parleurs dans une liste, et les 2 canaux audio sont automatiquement envoyés vers les 5 sorties et les 5 canaux sont utilisés comme il se doit par WMP).
Si vous avez une carte audio Intel ICH5, vous pouvez copier ce .asoundrc dans votre répertoire personnel (du type /home/user). Autrement, le supplément que vous devez rajouter à votre ~/.asoundrc est le suivant :
# Pour des haut-parleurs 5.1 pcm.ch51dup { slave.pcm surround51 slave.channels 6 type route ttable.0.0 1 ttable.1.1 1 ttable.0.2 1 ttable.1.3 1 ttable.0.4 0.5 ttable.1.4 0.5 ttable.0.5 0.5 ttable.1.5 0.5 } # Pour des haut-parleurs 4.1 pcm.ch41dup { type route slave.pcm surround41 slave.channels 5 ttable.0.0 1 ttable.1.1 1 ttable.0.2 1 ttable.1.3 1 ttable.0.4 0.5 ttable.1.4 0.5 }
Le standard ALSA pour les numéros d'assignation des canaux est :
#0 – avant gauche, #1 – avant droit, #2 – arrière gauche, #3 – arrière droit, #4 – centre, et #5 – LFE (caisson de basses). Dans le dispositif ainsi crée ci-dessus, nous utilisons le plugin de routage de ALSA pour copier les canaux avants gauche et droit en canaux arrières correspondants, ainsi que pour créer les centres et LFE avec chacun 50% de la puissance des canaux gauches et droits (à faire : la méthode idéale serait d'utiliser un filtre passe-bas pour isoler les basses fréquences à envoyer au caisson de basses, mais cette possibilité est encore très récente. Quoi qu'il en soit, le plupart des caissons sont équipés d'un filtre passe bas pour être sûr de bloquer les hautes fréquences éventuelles et vous ne remarquerez probablement pas de différence significative).
Un parasitage peut apparaître dans les canaux avec certains matériels : voir la fin de la section 4.
Rajoutez ceci à la fin de votre /etc/rc.local afin que les bons contrôles ne soient pas en sourdine et que les volumes par défaut soient réglés correctement dès le démarrage du système.
... echo Setting 5.1 Channel volumes... amixer -q set Master 100% unmute amixer -q set PCM 40% unmute amixer -q set Surround 100% unmute amixer -q set "Surround Jack Mode" "Independent" amixer -q set Center 81% unmute amixer -q set LFE 100% unmute amixer -q set "Mic select" "Mic1" amixer -q set "Mic" 65% unmute amixer -q set "Channel mode" "6ch" amixer -q set "Center/LFE Down mix" mute amixer -q set "Duplicate Front" mute
Et pour le partage de la carte son avec jack (jack-sharing), utilisez plutôt dans votre /etc/rc.local :
... echo Setting 5.1 Channel volumes... amixer -q set Master 100% unmute amixer -q set PCM 40% unmute amixer -q set Surround 100% unmute amixer -q set Center 81% unmute amixer -q set LFE 100% unmute amixer -q set "Surround Jack Mode" "Shared" amixer -q set "Mic select" "Mic2" amixer -q set "Mic" 65% unmute amixer -q set "Channel mode" "6ch" amixer -q set "Center/LFE Down mix" mute amixer -q set "Duplicate Front" mute
La manière d'ajustement du volume la plus pratique est d'utiliser le beau contrôleur externe probablement fourni avec votre caisson de basse. Cela a pour effet de régler le volume proportionnellement sur tous vos haut-parleurs. C'est mieux que de les ajuster séparément. Aussi, le mieux est de régler à 100%, et vous pouvez ajuster les proportions pour votre meilleur confort. Maintenant, vous pouvez immédiatement lancer le ./etc/rc.local.
Assurez-vous d'avoir exécuté le fichier /etc/rc.local correctement dans un terminal. L'utilitaire ''speaker-test'' fourni avec alsa-utils peut être utilisé pour tester votre installation.
$ speaker-test -c 6 -D surround51 speaker-test 1.0.11rc2 Playback device is surround51 Stream parameters are 48000Hz, S16_LE, 6 channels Using 16 octaves of pink noise Rate set to 48000Hz (requested 48000Hz) Buffer size range from 3 to 5461 Period size range from 3 to 5461 Periods = 4 Buffer time size 2525 To choose buffer_size = 5460 To choose period_size = 1365 was set period_size = 1365 was set buffer_size = 5460 0 - Front Left 4 - Center 1 - Front Right 3 - Rear Right 2 - Rear Left 5 - LFE Time per period = 17.800086
Vous devriez entendre le son sur chacun de vos haut-parleurs. Un phénomène fréquent avec certains chipsets ICH5 est que les canaux centre et LFE se retrouvent permutés avec les canaux arrière. Afin de régler ça, vous devrez éditer une section de /etc/alsa/cards/ICH4.conf à l'identique de /etc/alsa/cards/ICH.conf. Vous pouvez utiliser ce ICH4.conf. Aussi, certaines anciennes versions d'ALSA ont un problème avec le canal arrière droit; dans ce cas, faites une mise à niveau.
Pour tester votre microphone, utilisez Skype.
Nous allons maintenant configurer les applications généralement utilisées (XMMS, Mplayer, Xine, Gaim, beep-media-player) afin d'utiliser le périphérique ch51dup pour dupliquer deux canaux de sortie dans tous vos haut-parleurs et caissons.
Pour XMMS, aller dans Options --> préférences --> E/S Audio. Sous ''Plugin de sortie'', sélectionner ''Plugin de sortie ALSA 1.2'', cliquer sur ''Configurer'', et dans le champ ''Périphérique Audio'', entrer ch51dup'' (ou ''ch41dup pour des haut-parleurs 4.1). Les périphériques que vous avez créé dans .asoundrc ne sont pas énumérés ici; aussi, vous devez les entrer manuellement. Une configuration similaire peut être faite pour beep-media-player. Toutes les fichiers audio encodés sur deux voies --bi-cannal--(MP3, WMA, etc.) seront maintenant émis sur chacun des cinq haut-parleurs. (Merci à Eric Browne pour avoir précisé ce problème (probablement dû à la combinaison de versions particulières de XMMS et des librairies d'ALSA?) lorsqu'on utilise ch51dup avec XMMS : au cas où la lecture avec XMMS serait variable/saccadée, rajoutez ceci à votre .asoundrc et utilisez une copie de votre périphérique au lieu de ch51dup).
Pour MPlayer, ouvrez ~/mplayer/config et copiez y les lignes suivantes :
ao=alsa:device=ch51dup channels=6
Par défaut, Mplayer n'utilisera pas le périphérique ch51dup. Cependant, si vous voulez lire une vidéo encodée en 5.1 avec (tels des DVDs), vous devrez utiliser par défaut le périphérique surround51, que l'on peut configurer dans Préférences > Audio, sélectionnez "alsa ALSA-0.9.x-1.x audio output" > "Configure driver" > "Device" > "surround51". Je ne sais pas comment dire à MPlayer de choisir automatiquement un périphérique particulier sur lequel il doit lire le contenu. Xine utiliserai par défaut le périphérique surround51 pour lire les DVDs encodés en Dolby 5.1. Ainsi, vous n'avez rien à faire à moins que vous ne lisiez des fichiers stéréos avec ce lecteur.
Vous pouvez également vouloir changer la configuration du plugin de MPlayer utilisé pour lire des vidéos dans un navigateur. Comme la plupart de ceux qui ont la stéréo, vous pouvez vouloir éditer la ligne pour l'option de sortie audio dans /etc/mplayerplug-in.conf afin de lui faire utiliser ch51dup.
# vi /etc/mplayerplug-in.conf
... ao=alsa:device=ch51dup,oss,arts,esd ...
Sur les machines où mplayerplug-in est remplacé par gecko-mediaplayer, renseignez-vouz dans la documentation de ce plug-in.
Pour Gaim (ou Pidgin), aller dans ''Preferences->Sons'',. Sous "Sortie sonore" > ''Méthode'', choisir ''Command'' et dans ''Commande pour le son'', entrer 'aplay -c 6 -r 44100 -D ch51dup'.
Commentaires, questions et réactions par email sont les bienvenus.