Alsa-sound-mini-HOWTO
Valentijn Sessink
[email protected]
v 1.7, 29 Juillet 1999
Ce document d�crit l'installation des gestionnaires sonores ALSA pour
Linux. Ces gestionnaires peuvent �tre utilis�s en remplacement des
gestionnaires habituels, et sont enti�rement compatibles avec eux.
______________________________________________________________________
Table des mati�res
1. Introduction
1.1 Remerciements
1.2 Historique
1.3 Nouvelles versions de ce document
1.4 Commentaires
1.5 Politique de distribution
2. Guide d'installation rapide
2.1 Installation
2.2 Jouer et enregistrer du son
3. Avant de commencer
3.1 Introduction
3.2 Informations g�n�rales sur les gestionnaires ALSA
3.3 Mat�riel support�
3.4 Autres HOWTO
3.4.1 Cartes son
3.4.2 Cartes Plug and Play
3.4.3 Modules
3.4.4 Kerneld
4. Comment installer les gestionnaires sonores ALSA
4.1 Ce dont vous avez besoin
4.2 Obtenir les gestionnaires
4.3 Les versions d'ALSA
4.4 Extraction
4.5 Compilation
4.6 Pr�parer les p�riph�riques
5. Charger les gestionnaires
5.1 Ins�rer avec modprobe
5.2 Quel module pour quelle carte ?
5.2.1 Gravis UltraSound Extreme
5.2.2 Gravis UltraSound MAX
5.2.3 ESS AudioDrive ES-1688 et ES-688
5.2.4 ESS AudioDrive ES-18xx
5.2.5 Gravis UltraSound PnP
5.2.6 UltraSound 32-Pro
5.2.7 Soundblaster
5.2.8 Soundblaster 16
5.2.9 OAK Mozart
5.2.10 OPTi 82C9xx
5.2.11 AD1847/48 et CS4248
5.2.12 Yamaha OPL3-SA2/SA3
5.2.13 S3 SonicVibes
5.2.14 Ensoniq/Soundblaster PCI64
5.2.15 CS4231
5.2.16 CS4232/4232A
5.2.17 CS4235 et sup�rieur
5.2.18 CS 4610/4612/4615 et 4680
5.2.19 ESS Solo 1
5.2.20 Trident 4DWave DX/NX
5.2.21 ForteMedia FM801
5.3 Chargement par modprobe pour les pilotes sans d�tection automatique
5.3.1 OPL3-SA2 et OPL3-SA3
5.3.2 CS4231
5.3.3 CS4232 et CS4232A
5.3.4 CS4235/CS4236/CS4236B/CS4237B/CS4238B/CS4239
5.4 Chargement par kerneld
5.5 Compatibilit� OSS
6. Tester et utiliser
6.1 Le syst�me de fichiers /proc
6.2 Le mixer
6.2.1 R�glage du mixer en lecture
6.2.2 �l�ments du mixer
6.2.3 R�glage du mixer en enregistrement
6.2.4 Autres r�glages du mixer
6.3 Les p�riph�riques /dev/snd/
6.4 Informations compl�mentaires
6.4.1 /proc/asound/N/pcmN0
6.4.2 /proc/asound/N/sb16
7. Astuces et d�pannage
7.1 Compilation des gestionnaires
7.1.1 Arborescence des sources du noyau
7.2 Chargement des gestionnaires
7.2.1 Compatibilit� des cartes son
7.2.2 �P�riph�rique ou ressource occup�e� (device busy) ou �symboles non r�solus� (unresolved symbols)
7.2.2.1 Noyaux 2.0.x
7.2.2.2 Noyaux 2.2.x
7.2.3 R�f�rences � d'autres gestionnaires
7.2.4 Symboles non r�solus, deuxi�me
7.2.5 V�rifiez le r�glage PnP
7.2.6 Vos param�tres sont-ils corrects ?
7.3 Gestionnaire charg�... mais aucun son (ou � peine audible)
7.3.1 La sourdine
7.3.2 Amplification
7.3.3 Compatibilit� avec OSS/Linux
7.3.4 Impossible d'acc�der au mixer
7.4 Quelques suggestions
7.4.1 Essayez �insmod�
7.4.2 Lisez le fichier INSTALL
7.4.3 Messages de d�boguage
7.4.4 Si rien ne va plus...
7.5 Rapports de bugs
7.6 Astuce : jouer des CD audio
7.7 Astuce : installation du gestionnaire s�rie MIDI
7.8 Astuce : � nouveau noyau, nouveaux modules !
7.9 Astuce : KDE et les gestionnaires ALSA
7.10 Astuce : utilisez les p�riph�riques ALSA
7.11 Astuce : retirer tous les modules
______________________________________________________________________
11.. IInnttrroodduuccttiioonn
Ce document explique comment installer et utiliser les gestionnaires
sonores ALSA pour votre carte son. Les gestionnaires ALSA sont
enti�rement modularis�s et supportent kerneld et kmod. Ils sont
compatibles avec l'API OSS, avec des possibilit�s sup�rieures. En deux
mots : compatibles, mais meilleurs.
11..11.. RReemmeerrcciieemmeennttss
Ce document contient des informations obtenues sur les pages des
gestionnaires ALSA. La structure est inspir�e du SB-mini-HOWTO,
principalement parce qu'il avait la structure recherch�e. Gr�ce aux
SGML Tools, ce HOWTO est disponible dans plusieurs formats, g�n�r�s �
partir d'un seul fichier source. Merci � Erik Warmelink pour sa
relecture, ainsi qu'� Alfred Munnikes pour ses quelques questions et
pr�cieuses suggestions.
Remerciements � Yamahata Isaku pour la traduction en japonais, et �
Miodrag Vallat,
[email protected], pour l'adaptation fran�aise.
De plus, merci � Steve Crowder qui a fait un excellent travail de
relecture et d'�dition du texte, ainsi qu'� Marc-Aur�le Darche, Piotr
Ingling, Juergen Kahrs, Tim Pearce, Patrick Stoddard, Rutger de Graaf,
Shuly Wintner, Jyrki Saarela, Jonas Lofwander, Kumar Sankaran et bien
d'autres personnes encore pour leurs conseils utiles et leurs ajouts.
11..22.. HHiissttoorriiqquuee
Version 1.7 - 29 juillet 1999. Quelques corrections.
Version 1.6 - 26 juillet 1999. Ajout d'une section sur les versions
d'Alsa.
Version 1.5 - 21 mai 1999. Modifi� la section sur le mixer, ajout� une
section installation rapide.
Version 1.4 - 18 mai 1999. Ajout de l'URL de la version fran�aise,
chang� quelques URL.
Version 1.3 - 16 mai 1999. Gr�ce � Jaroslav le HOWTO dispose d'une
place sur le site du projet ALSA. Du coup, quelques changements d'URL
et d'adresses email.
Version 1.2 - 11 mai 1999. Diverses mises � jour.
Version 1.1 - 11 mars 1999. Ajout� deux cartes sons des nouveaux
gestionnaires 0.3, et quelques notes � propos des noyaux 2.2.
Version 1.0 - 8 f�vrier 1999. Ajout� quelques notes � la section
d�pannage, qui semble d�sormais compl�te.
Version 0.3 beta - 20 janvier 1999. Un lien sur la page web d'ALSA.
Nous voici officiels !
Version 0.2 alpha - mi janvier 1999, premi�re version sgml.
Version 0.1 alpha - janvier 1999, premi�re version, principalement
HTML.
11..33.. NNoouuvveelllleess vveerrssiioonnss ddee ccee ddooccuummeenntt
La derni�re version peut �tre trouv�e sur
http://www.alsa-
project.org/~valentyn
Des versions en d'autres formats se trouvent dans le r�pertoire other-
formats. Malheureusement, je n'ai pas r�ussi � compiler une version
Postscript, car le script sgml2latex �choue avec un tas d'erreurs.
Yamahata Isaku a r�alis� une version en japonais, qui sera disponible
sur le site Japonais d'ALSA,
http://plaza21.mbn.or.jp/~momokuri/alsa/index.html Miodrag Vallat a
r�alis� une version en fran�ais, disponible en
http://www.freenix.fr/unix/linux/HOWTO/mini/Alsa.html.
Si vous r�alisez une traduction de ce document dans une autre langue,
faites-le moi savoir et je rajouterai une r�f�rence ici.
11..44.. CCoommmmeennttaaiirreess
Je compte sur vous, les lecteurs, pour rendre ce HOWTO utile. Si vous
avez des suggestions, des corrections, ou des commentaires, n'h�sitez
pas � me les envoyer (�
[email protected]), et je t�cherai
de les inclure dans la prochaine version.
Remarque : Je ne re�ois pas beaucoup de courrier � propos des
gestionnaires ALSA, mais toute addition sera la bienvenue. M�me un
�merci� sera appr�ci� - peut-�tre qu'il ne sera pas une mauvaise id�e
d'ajouter une section �J'ai bien appr�ci� ou �Ceci-ou-cela n'�tait
pas tr�s clair�.
Si vous publiez ce document sur CD-ROM ou sous forme imprim�e, un
exemplaire serait appr�ci�. �crivez-moi pour avoir mon adresse
postale. Pensez �galement � faire un don au Linux Documentation
Project pour aider la documentation libre pour Linux. Contactez le
coordinateur des HOWTO Linux, Guylhem Aznar, � linux-
[email protected], pour plus d'informations.
11..55.. PPoolliittiiqquuee ddee ddiissttrriibbuuttiioonn
Copyright 1998/1999 Valentijn Sessink
Ce HOWTO est une documentation libre ; vous pouvez la redistribuer
et/ou la modifier selon les termes de la Licence Publique G�n�rale GNU
publi�e par la Free Software Foundation (version 2 ou bien toute autre
version ult�rieure choisie par vous.
Ce document est distribu� car potentiellement utile, mais ssaannss aauuccuunnee
ggaarraannttiiee, ni explicite, ni implicite, y compris les garanties de
commercialisation ou d'adaptation dans un but sp�cifique. Reportez-
vous � la Licence Publique G�n�rale GNU pour plus de d�tails.
Vous pouvez obtenir une copie de la GNU General Public License en
�crivant � la Free Software Foundation, Inc., 59 Temple Place, Suite
330, Boston, MA 02111-1307, �tats-Unis.
22.. GGuuiiddee dd''iinnssttaallllaattiioonn rraappiiddee
Si vous voulez du son, imm�diatement, sans attendre d'avoir lu ce
HOWTO, ce bref aper�u de l'installation des gestionnaires ALSA peut
�tre utile.
22..11.. IInnssttaallllaattiioonn
Les gestionnaires ALSA versions 0.3.0, 0.3.1 et 0.3.2 ont divers
probl�mes d�s � la restructuration de l'interface mixer. Veuillez
utiliser une version adapt�e (cf. la section sur les versions). Vous
devriez sans aucun doute utiliser la version 0.3.0-pre4.
Puis la routine : �./configure ; make ; make install� pour lleess
ggeessttiioonnnnaaiirreess,, llaa bbiibblliiootthh��qquuee eett lleess uuttiilliittaaiirreess. Il vous faut les
trois car vous avez besoin des utilitaires pour d�sactiver la
sourdine. Les noyaux 2.2.x ddooiivveenntt �tre configur�s avec le support son
g�n�rique (�Sound card support�), mais sans choisir de carte son,
tandis que les noyaux 2.0.x doivent avoir le ssuuppppoorrtt ssoonn dd��ssaaccttiivv��.
Les gestionnaires ALSA utilisent leur propres fichiers de
p�riph�riques, que vous pouvez cr�er � l'aide du script ..//ssnnddddeevviicceess.
Vous devez charger le module pour votre carte (ou utiliser kmod) et si
vous souhaitez avoir la compatibilit� avec les gestionnaires sonores
standard du noyau Linux (qui n'en voudrait pas ?) vous devez charger
un autre module nomm� ssnndd--ppccmm11--oossss. Consultez la section ``Quel module
pour quelle carte~?'' pour d�terminer quel module charger. Une fois
les modules charg�s, vous pouvez regarder dans /proc/asound pour plus
d'informations sur les gestionnaires ALSA.
22..22.. JJoouueerr eett eennrreeggiissttrreerr dduu ssoonn
Quelques remarques. ALSA a ses propres fichiers de p�riph�riques dans
/dev/snd, par exemple /dev/snd/pcmC0D1 pour la carte 0, p�riph�rique
(device) 1. Vous pouvez utiliser les anciens fichiers /dev/pcmXY si
vous avez charg� le module snd-pcm1-oss de compatibilit�. Avant de
pouvoir jouer du son, il vous faut d�sactiver la sourdine avec amixer.
Lancez �amixer�, puis essayez quelque chose du genre
amixer pcm 100 unmute
En r�gle g�n�rale, vous pouvez utiliser les options �mute� ou
�unmute�, �rec� ou �norec�, une valeur num�rique ou une combinaison
gauche:droite.
Voil� ! Maintenant si tout fonctionne, vous avez gagn�. S'il y a des
probl�mes, vous allez devoir lire quand m�me ce HOWTO...
33.. AAvvaanntt ddee ccoommmmeenncceerr
33..11.. IInnttrroodduuccttiioonn
Ce document tente de vous aider � installer et � utiliser les
gestionnaires sonores ALSA pour votre syst�me Linux. Le syst�me de
r�f�rence est une distribution Slackware 4.0 tournant sur un
ordinateur AMD/K6 (compatible x86), mais cela devrait fonctionner avec
toute autre distribution Linux. Je ne sais pas si les pilotes ALSA
fonctionnent sur d'autres plates-formes ; d'apr�s la documentation,
ALSA fonctionne �galement sur les plates-formes Alpha. Je n'ai que des
ordinateurs x86 ici, et toute information suppl�mentaire que vous
pourriez avoir sera la bienvenue.
Il peut s'av�rer utile de lire le Linux Sound HOWTO (cf. section
Autres HOWTO), mais ce HOWTO ne traite que des gestionnaires du noyau.
33..22.. IInnffoorrmmaattiioonnss gg��nn��rraalleess ssuurr lleess ggeessttiioonnnnaaiirreess AALLSSAA
ALSA a �t� initialement �crit comme remplacement du gestionnaire
sonore pour les cartes Gravis UltraSound (GUS). Devant le succ�s de
ces gestionnaires GUS, l'auteur a lanc� le projet ALSA afin d'aboutir
� un gestionnaire g�n�rique pour plusieurs cartes sonores, avec une
conception enti�rement modulaire.
ALSA est compatible avec les gestionnaires sonores OSS/Free et
OSS/Linux (les gestionnaires du noyau), mais dispose de sa propre
interface qui est encore meilleure que celle d'OSS. Une liste des
fonctionnalit�s se trouve en
http://www.alsa-project.org/intro.html
Veuillez noter que les gestionnaires ALSA sont toujours en
d�veloppement. Ils �voluent au cours du temps, et certains programmes
utilisant ALSA ne fonctionnent qu'avec certaines versions
particuli�res. A part �a : je les trouve super. J'utilise ALSA depuis
d�j� 10 mois et je ne retournerai jamais aux temps anciens des
gestionnaires sonores non libres ;) La page Web du projet ALSA se
trouve en
http://www.alsa-project.org/
33..33.. MMaatt��rriieell ssuuppppoorrtt��
Les gestionnaires ALSA ne supportent qu'un sous-ensemble des cartes
sonores existantes. Au moment de la r�daction de ce document, les
cartes suivantes sont support�es (cependant, certaines ne le sont pas
par ALSA 0.3.0-pre4, ce qui vous obligera � utiliser ALSA 0.3.2 ou une
version plus r�cente) :
� cartes � base de chipset Trident 4D Wave DX/NX, gr�ce � Trident
Microsystems qui a fourni au projet ALSA des gestionnaires de base
sous GPL (pour les p�riph�riques mixer et PCM seulement) ainsi
qu'une documentation sur leurs chipsets audio 4D Wave PCI.
Reportez-vous �
http://www.tridentmicro.com/HTML/products%20folder/audio.htm pour
plus de d�tails. Ces gestionnaires sont fournis dans la version
ALSA 0.3.2. Parmi les cartes utilisant ce composant, on trouve :
Best Union Miss Melody 4DWave PCI, HIS 4DWave PCI, Warpspeed
ONSpeed 4DWave PCI, AzTech PCI 64-Q3D, Addonics SV 750, CHIC True
Sound 4DWave, Shark Predator4D-PCI et Jaton SonicWave 4D ;
� Gravis Ultrasound (GUS) : �PnP�, Extreme, Classic/ACE, MAX ;
� cartes � base de chipset GUS : Dynasonic 3-D, STB Sound Rage 32,
UltraSound 32-Pro (STB), ExpertColor MED3201 et d'autres utilisant
le chipset AMD InterWave(TM) ;
� Soundblaster : 1.0, 2.0, Pro, 16, AWE32/64, PCI64 ;
� ESS AudioDrive ESx688 ;
� chipsets ESS ES18xx. Notez que j'ai eu personnellement des
probl�mes insolubles avec un mod�le ES1888, malgr� tous les efforts
du d�veloppeur du gestionnaire ;
� ESS Solo-1 ES1938. Un seul des deux canaux fonctionne, ce qui
emp�che l'energistrement. L'auteur du gestionnaire est �au courant
du probl�me et en train d'en chercher les causes� ;
� Yamaha : chipsets OPL3-SA2, OPL3-SA3 ;
� OAK Mozart ;
� Schubert 32 PCI (PINE, chipset S3 SonicVibes PCI) ;
� Ensoniq AudioPCI ES1370/1371 PCI (Soundblaster PCI64) ;
� SonicVibes PCI (PINE Schubert 32 PCI) ;
� cartes � base de chipset ForteMedia FM801 (dans ALSA 0.3.2) ;
� cartes � base de chipset OPTI 82C9xx ;
� cartes � base de chipset AD1847, AD1848 et CS4248.
Un grand nombre de cartes � base de Crystal Semiconductors sont
�galement support�es. Ces puces se trouvent dans bon nombre de
mat�riels, sous forme de carte s�par�e (certaines cartes Philips
PCA) ou sur les cartes m�res (par exemple IBM Aptiva, ordinateurs
Dell). Les cartes utilisant les chipsets suivants sont support�es :
� 4231
� 4232
� 4232A
� 4235
� 4236B
� 4237B
� 4238B
� 4239
� 4610 (dans ALSA 0.3.2)
� 4612 (dans ALSA 0.3.2)
� 4615 (dans ALSA 0.3.2)
� 4680 (dans ALSA 0.3.2)
Une liste plus r�cente se trouve dans les sources du gestionnaire
lui-m�me, � savoir dans doc/SOUNDCARDS
33..44.. AAuuttrreess HHOOWWTTOO
Cet ALSA-sound-mini-HOWTO n'est qu'un mini-HOWTO. D'autres HOWTO
peuvent vous aider si celui-ci est trop concis. J'en indiquerai
quelques-uns en essayant d'installer les gestionnaires ALSA. Les HOWTO
se trouvent en g�n�ral sur les miroirs de Metalab (ex Sunsite). Allez
donc voir sur
http://metalab.unc.edu/LDP/mirrors.html quel est votre
miroir le plus proche. Vous trouverez les HOWTO dans le r�pertoire
LDP/HOWTO/. Notez que les liens dans ce document sont tous relatifs �
/LDP/HOWTO/mini. Si vous consultez ce document depuis un miroir
suffisamment convenable, vous trouverez les HOWTO indiqu�s.
Une note � propos des noyaux 2.2.x : avec cette s�rie, le support son
est comme toute autre support : il fonctionne, mais diff�remment de ce
� quoi vous �tiez habitu�. Ce HOWTO (comme tous les autres) se destine
principalement aux noyaux 2.0, bien que j'essaierai d'indiquer les
diff�rences. Je serai heureux d'ajouter tout ce qui sera n�cessaire
pour maintenir ce HOWTO � jour vis-�-vis des noyaux 2.2.
33..44..11.. CCaarrtteess ssoonn
Vous venez d'acheter une carte son, ou elle se trouve d�j� enferm�e
dans votre ordinateur depuis des lustres. Et maintenant vous allez
vous en servir ! Allez voir le Sound-HOWTO pour voir si cela en vaut
la peine (Vous pr�f�rerez peut-�tre acheter d'abord cette nouvelle
Mega-Rumble-Blaster, puis essayer les gestionnaires ALSA).
33..44..22.. CCaarrtteess PPlluugg aanndd PPllaayy
La plupart des cartes son modernes pour la plateforme Intel sont des
cartes ISA PnP, une abr�viation de �Plug and Play�, ce qui signifie
que la carte doit �tre configur�e par le syst�me d'exploitation. Ceci
a lieu via une routine d'initialisation au d�marrage. Vous allez sans
doute devoir configurer votre carte avec le paquetage PnP-utils.
Toutes les distributions Linux suffisamment r�centes l'incluent. Pour
vous en servir, jetez donc un oeil au Plug-and-Play-HOWTO.
Les gestionnaires ALSA semblent disposer de leur propre support ISA-
PnP pour quelques cartes son. Malheureusement, tant que je ne trouve
pas de documentation � ce sujet, je ne peux pas vous expliquer comment
il fonctionne. Si quelqu'un souhaite essayer ALSA en �vitant sciemment
les ISA-PnP-tools, qu'il m'envoie un message.
33..44..33.. MMoodduulleess
Les gestionnaires ALSA sont construits en tant que modules. Vous
pouvez trouver plus d'informations sur les modules dans le Kernel-
HOWTO. Il existe aussi un module-HOWTO, mais il n'est plus maintenu �
l'heure actuelle ; consultez la section �unmaintained� du Howto-HOWTO.
Il existe aussi un Modules-mini-HOWTO qui peut �tre utile.
33..44..44.. KKeerrnneelldd
Un autre HOWTO qui peut �tre utile � certains est le Kerneld-mini-
HOWTO. Kerneld est un daemon qui installe et retire les modules du
noyau quand c'est n�cessaire (je n'en ai aucune exp�rience, donc toute
information � ce sujet est la bienvenue. La documentation des
gestionnaires ALSA contient quelques informations sur la configuration
de kerneld, qui ont �t� ajout�es � ce mini-HOWTO).
44.. CCoommmmeenntt iinnssttaalllleerr lleess ggeessttiioonnnnaaiirreess ssoonnoorreess AALLSSAA
44..11.. CCee ddoonntt vvoouuss aavveezz bbeessooiinn
� un syst�me Linux en �tat de fonctionnement (par exemple une
distribution Slackware), avec les paquetages de d�veloppement
install�s (i.e. gcc, make, etc.) ;
� une carte son support�e ;
� un minimum de connaissance de Linux (savoir utiliser "ls", "cd",
"tar", etc.) ;
� l'acc�s au compte administrateur (root).
Si vous avez une carte PnP, vous aurez �galement besoin :
� du paquetage isapnptools.
Le texte INSTALL dans le r�pertoire des gestionnaires laisse
supposer que pour certaines cartes, le support PnP est int�gr�.
J'ai aussi re�u une note de Jaroslav � ce sujet. Lorsque j'aurai
plus d'informations � ce sujet je les ajouterai � ce mini-HOWTO.
Notez que vous ne devez pas avoir le moindre gestionnaire sonore actif
quand vous voulez utiliser les gestionnaires ALSA. Si votre noyau est
compil� avec les gestionnaires sonores "en dur", vous devrez le
recompiler. Si vous avez le vieux module "sound.o" actif, vous devez
le d�sactiver. Si vous utilisez kerneld, cela revient � effacer
sound.o du r�pertoire /lib/modules/<version_du_noyau>/misc. Les
syst�mes RedHat r�cents ont une configuration du son diff�rente, avec
plusieurs modules actifs. Vous devrez tous les d�sactiver.
Les noyaux 2.2 ont une autre approche du son. Vous devrez inclure le
support sonore ! H� oui, c'est vrai : vous ajoutez le support sonore
au noyau, mais sans la moindre carte son. Ensuite, compilez et
installez le noyau et ensuite, compilez les gestionnaires ALSA.
44..22.. OObbtteenniirr lleess ggeessttiioonnnnaaiirreess
Les gestionnaires ALSA sont disponibles en
ftp://ftp.alsa-
project.org/pub/, et il en existe un miroir en
ftp://linux.a2000.nl/alsa. Pour une installation ALSA totalement
fonctionnelle, il vous faut les gestionnaires, la biblioth�que et les
utilitaires ; par exemple, si vous avez choisi le miroir, vous allez
r�cup�rer
ftp://linux.a2000.nl/alsa/driver/alsa-
driver-0.3.0-pre4.tar.gz,
ftp://linux.a2000.nl/alsa/lib/alsa-
lib-0.3.0pre4.tar.gz et
ftp://linux.a2000.nl/alsa/utils/ alsa-
utils-0.3.0-pre3.tar.gz (et NON il ne s'agit pas de liens complets,
vous feriez mieux d'aller voir sur place quelles versions sont
disponibles, cf. la section suivante).
44..33.. LLeess vveerrssiioonnss dd''AALLSSAA
Les gestionnaires ALSA ont parcouru une longue route. Leur
d�veloppement � commenc� au temps des noyaux 2.0, puis les noyaux 2.2
sont apparus (avec leur propre noyau sonore).
La version actuelle d'ALSA va subir une r��criture de l'interface
mixer. L'ancienne interface �tait un classique volume, graves/aigus,
tandis que la nouvelle interface fournit des informations sur les
entr�es et les sorties de chaque �l�ment. En d'autres mots, un
programme peut d�sormais demander � la carte son si, par exemple, la
sortie cd audio est connect�e � l'entr�e enregistrement. Le mixer est
pr�t, mais les utilitaires associ�s sont encore en d�veloppement.
Si vous souhaitez utiliser ALSA sans peine, vous devriez probablement
choisir alsa-driver-0.3.0-pre4, alsa-lib-0.3.0-pre4 et alsa-
utils-0.3.0-pre3.
Les versions plus anciennes, 0.2.0-pre10p3 et plus anciennes
fonctionnent sous un noyau 2.0.x, mais je n'arrive pas � les faire
fonctionner sous 2.2.x (probablement parce qu'elles ne savent pas
s'interfacer avec le module soundcore du noyau).
La derni�re version (0.3.2) fonctionne tout aussi bien sous 2.0.x que
sous 2.2.x. Veuillez noter que cette version sera la derni�re �
supporter les noyaux 2.0.x, donc si une nouvelle version arrive, vous
devrez migrer vers le noyau 2.2.
Vous pouvez utiliser la version 0.3.2 s'il vous faut la toute derni�re
version, mais ce n'est pas recommand� � cause de la r��criture de
l'interface mixer. J'ai rencontr� des probl�mes avec le mixer OSS et
l'utilitaire amixer a une toute nouvelle interface difficile d'emploi.
44..44.. EExxttrraaccttiioonn
Vous devez extraire les sources des gestionnaires par toute commande
raisonnable, comme le bon vieux tar -zxf �fichier�. Pour les d�butants
et les amn�siques :
cd /usr/src
tar -zxf ~/alsa-driver-0.3.0-pre4.tar.gz
(Si cela a fonctionn�, soit vous �tes toujours logu� en root, ce qui
est une mauvaise id�e -- arr�tez votre lecture et allez consulter le
DOS/Win95-to-Linux-HOWTO --, soit vous avez d�j� pens� qu'il
s'agissait du genre de t�che n�cessitant les privil�ges
administrateur. Donc : il vous faut les privil�ges root, tapez "su"
puis le mot de passe).
tar -zxf ~/alsa-lib-0.3.0pre4.tar.gz
tar -zxf ~/alsa-utils-0.3.0pre3.tar.gz
�galement utilisable et plus amusant : find ~ -name alsa* -exec tar
-zxf {} \; (pas la peine d'essayer �a, c'est juste un exemple). Notez
que si vous t�l�chargez les gestionnaires avec Netscape, vous risquez
de r�cup�rer les gestionnaires d�compact�s avec l'extension �.tar.gz�.
Si tar se plaint du format de fichier, vous obtiendrez peut-�tre de
meilleurs r�sultats en retirant la lettre "z" des options de tar.
44..55.. CCoommppiillaattiioonn
Vous devez compiler les gestionnaires avant de pouvoir compiler et
utiliser la biblioth�que. Vous avez besoin de compiler la biblioth�que
avant de pouvoir compiler et utiliser les utilitaires. Commen�ons :
cd alsa-driver-0.3.0-pre4
./configure
Si vous souhaitez utiliser le support PnP int�gr�, vous devriez
utiliser
./configure --with-isapnp=yes
make
Maintenant vous avez besoin d'�tre �root� pour installer tout �a (mais
vous l'�tiez peut-�tre d�j�)
make install
Si vous obtenez un message vous indiquant que �version.h� n'a pas pu
�tre trouv�, cela vient probablement du fait que votre arborescence
des sources du noyau n'est pas correcte. Il vous faut quelques
fichiers des sources du noyau afin de compiler les gestionnaires ALSA.
D�compactez votre linux-2.x.y pr�f�r� dans /usr/src, et lancez un make
menuconfig. (En fait, make symlinks devrait suffire).
Au tour de la biblioth�que :
cd ../alsa-lib-0.3.0-pre4
./configure
make
make install
Vous avez compris le truc ? Alors pour les utilitaires :
cd ../alsa-utils-0.3.0-pre3
./configure
make
make install
Note : vous pouvez laisser de c�t� le �make install� des utilitaires
pour l'instant. Vous pouvez m�me laisser tomber la compilation de la
biblioth�que et des utilitaires, pour voir tout de suite si les
gestionnaires fonctionnent.
44..66.. PPrr��ppaarreerr lleess pp��rriipphh��rriiqquueess
Il y a un script dans le r�pertoire des gestionnaires qui va installer
les fichiers de p�riph�riques ALSA dans votre r�pertoire /dev. Lancez
./snddevices
dans le r�pertoire alsa-driver. Il devrait maintenant y avoir un
r�pertoire /dev/snd (V�rifiez sa pr�sence. Si vous n'�tes pas assez
familier avec la commande �ls�, allez plut�t consulter d'autres HOWTO
avant. Vous devez avoir un minimum de connaissances de Linux pour
installer ces pilotes).
Maintenant vous �tes pr�t � ins�rer les gestionnaires, alors jetez-
vous donc sur le paragraphe qui suit.
55.. CChhaarrggeerr lleess ggeessttiioonnnnaaiirreess
Il existe deux fa�ons d'utiliser les modules ALSA. Je pr�f�re
personnellement utiliser la m�thode manuelle, � savoir ins�rer le
gestionnaire au d�marrage. Les gestionnaires ALSA sont con�us pour
�tre chargeables et d�chargeables � volont� -- par exemple ils ne
r�initialisent pas le mixer au chargement -- donc vous pouvez
facilement utiliser l'approche kerneld.
Veuillez lire la section ``compatibilit� OSS''. Vous en aurez besoin
pour avoir un support sonore �� l'ancienne�.
55..11.. IInnss��rreerr aavveecc mmooddpprroobbee
Note : si vous avez une carte son PnP, vous devez tout d'abord la
configurer aux bons param�tres IO/IRQ/DMA (ou au moins � des valeurs
connues). Consultez le Plug-and-Play-HOWTO. Avez-vous configur� votre
carte PnP ? Bien, alors poursuivons. Le plus dur est de faire
�modprobe snd-�carte son��. Cela devrait faire l'affaire. Notez que
toutes les distributions ne mettent pas /sbin dans le PATH. Si vous
obtenez �bash: modprobe: command not found�, cela signifie
probablement que modprobe n'est pas dans votre path. Essayez
�/sbin/modprobe snd-sb16�, ou t�chez de trouver l'utilitaire modprobe
quelque part.
La plus grosse difficult� vient des chipsets Crystal, que les
gestionnaires ALSA ne d�tectent pas automatiquement. Des informations
plus r�centes peuvent �tre trouv�es dans le fichier INSTALL du
r�pertoire alsa-driver. Deux exemples, puis une liste :
Gravis UltraSound (GUS) et compatibles :
/sbin/modprobe snd-gusclassic
Pour toutes les cartes 16 bit compatibles Soundblaster (SoundBlaster
16 (PnP), SoundBlaster AWE 32 (PnP), SoundBlaster AWE 64 (PnP) :
/sbin/modprobe snd-sb16
55..22.. QQuueell mmoodduullee ppoouurr qquueellllee ccaarrttee ??
55..22..11.. GGrraavviiss UUllttrraaSSoouunndd EExxttrreemmee
modprobe snd-gusextreme
55..22..22.. GGrraavviiss UUllttrraaSSoouunndd MMAAXX
modprobe snd-gusmax
55..22..33.. EESSSS AAuuddiiooDDrriivvee EESS--11668888 eett EESS--668888
modprobe snd-audiodrive1688
55..22..44.. EESSSS AAuuddiiooDDrriivvee EESS--1188xxxx
Pour les cartes � base d'ESS AudioDrive 18xx
modprobe snd-audiodrive18xx
55..22..55.. GGrraavviiss UUllttrraaSSoouunndd PPnnPP
Gravis UltraSound PnP, Dynasonic 3-D/Pro, STB Sound Rage 32,
ExpertColor MED3201 et toute autre carte son bas�e sur un chipset AMD
InterWave(TM).
modprobe snd-interwave
55..22..66.. UUllttrraaSSoouunndd 3322--PPrroo
UltraSound 32-Pro (carte produite par STB, utilis�e par Compaq) et
toute autre carte son bas�e sur un chipset AMD InterWave(TM) avec un
circuit TEA6330T pour un contr�le �tendu des volumes grave, aigu et
principal.
modprobe snd-interwave-stb
55..22..77.. SSoouunnddbbllaasstteerr
Cartes Soundblaster 8 bits (SoundBlaster 1.0, SoundBlaster 2.0,
SoundBlaster Pro)
modprobe snd-sb8
55..22..88.. SSoouunnddbbllaasstteerr 1166
Cartes SoundBlaster 16 bits (SoundBlaster 16 (PnP), SoundBlaster AWE
32 (PnP), SoundBlaster AWE 64 (PnP). Attention, ce module ne supporte
pas la carte SoundBlaster VibraX16.
modprobe snd-sb16
55..22..99.. OOAAKK MMoozzaarrtt
modprobe snd-mozart
55..22..1100.. OOPPTTii 8822CC99xxxx
Cartes � base de chipset OPTi 82C9xx.
modprobe snd-opti9xx
55..22..1111.. AADD11884477//4488 eett CCSS44224488
modprobe snd-card-ad1848
55..22..1122.. YYaammaahhaa OOPPLL33--SSAA22//SSAA33
Un "modprobe snd-opl3sa" ne fonctionnera pas, ce gestionnaire ne
faisant pas de d�tection automatique. Voyez plus loin.
55..22..1133.. SS33 SSoonniiccVViibbeess
Cartes S3 SonicVibes PCI (PINE Schubert 32 PCI).
modprobe snd-sonicvibes
55..22..1144.. EEnnssoonniiqq//SSoouunnddbbllaasstteerr PPCCII6644
Cartes Ensoniq AudioPCI ES1370/1371 PCI (SoundBlaster PCI 64)
modprobe snd-audiopci
55..22..1155.. CCSS44223311
Un �modprobe snd-card-cs4231� ne fonctionnera pas, ce gestionnaire ne
faisant pas de d�tection automatique. Voyez plus loin.
55..22..1166.. CCSS44223322//44223322AA
Toutes les cartes � base de chipset CS4232/CS4232A. Un �modprobe snd-
card-cs4232� ne fonctionnera pas, ce gestionnaire ne faisant pas de
d�tection automatique. Voyez plus loin.
55..22..1177.. CCSS44223355 eett ssuupp��rriieeuurr
Toutes les cartes � base de chipset
CS4235/CS4236/CS4236B/CS4237B/CS4238B/CS4239. Un �modprobe snd-card-
cs4236� ne fonctionnera pas, ce gestionnaire ne faisant pas de
d�tection automatique. Voyez plus loin.
55..22..1188.. CCSS 44661100//44661122//44661155 eett 44668800
modprobe snd-card-cs461x
55..22..1199.. EESSSS SSoolloo 11
Cartes ESS Solo-1, 128iPCI (es1938, ESS-SOLO-1). Ces cartes ne
figurent pas dans le fichier INSTALL des gestionnaires. Jonas
Lofwander m'a communiqu� un lien vers un document expliquant comment
configurer ces cartes -- en gros, rien de plus qu'un modprobe snd-
esssolo1 mais...
http://195.163.39.4/~dice/alsa-solo1.txt peut vous
�tre utile si vous utilisez ALSA 0.3.2. Si vous avez un IBM Thinkpad
1412 vous pouvez aussi consulter
http://www.geocities.com/SiliconValley/Peaks/3649/1412.html, merci �
Kumar Sankaran.
55..22..2200.. TTrriiddeenntt 44DDWWaavvee DDXX//NNXX
Cartes Best Union Miss Melody 4DWave PCI, HIS 4DWave PCI, Warpspeed
ONSpeed 4DWave PCI, AzTech PCI 64-Q3D, Addonics SV 750, CHIC True
Sound 4Dwave, Shark Predator 4D-PCI, Jaton SonicWave 4D. Ces cartes
sont support�es par ALSA 0.3.2.
modprobe snd-trid4dwave
55..22..2211.. FFoorrtteeMMeeddiiaa FFMM880011
Cartes PCI � base de FM801.
modprobe snd-card-fm801
55..33.. CChhaarrggeemmeenntt ppaarr mmooddpprroobbee ppoouurr lleess ppiillootteess ssaannss dd��tteeccttiioonn aauuttoommaa��
ttiiqquuee
Si vous avez un gestionnaire n'effectuant pas de d�tection
automatique, vous devez fournir des informations suppl�mentaires pour
que le gestionnaire fonctionne. Vous pourrez trouver plus
d'informations dans le fichier INSTALL du r�pertoire alsa-driver.
55..33..11.. OOPPLL33--SSAA22 eett OOPPLL33--SSAA33
D'apr�s le fichier INSTALL, vous devez fournir toutes les informations
suivantes pour ce gestionnaire. Si vous avez initialis� la carte avec
les isapnptools, vous pouvez probablement trouver ces informations
dans le fichier /etc/isapnp.conf :
snd_port - port de contr�le de l'OPL3-SA
snd_wss_port - port WSS de l'OPL3-SA (0x530,0xe80,0xf40,0x604)
snd_midi_port - port de l'UART MPU-401 (0x300,0x330), -1 pour d�sactiver
snd_fm_port - port FM de l'OPL3-SA (0x388), -1 pour d�sactiver
snd_irq - IRQ de l'OPL3-SA (5,7,9,10)
snd_dma1 - canal DMA 1 de l'OPL3-SA (0,1,3)
snd_dma1_size - taille de la m�moire tampon du DMA 1 en Ko (4-64Ko)
snd_dma2 - canal DMA 2 de l'OPL3-SA (0,1,3), -1 si aucun
snd_dma2_size - taille de la m�moire tampon du DMA 2 en Ko (4-64Ko)
Lancez un "modprobe snd-opl3sa snd_port=0xNNN snd_wss_port=0x530
snd_midi_port=-1 snd_fm_port=0x388 snd_irq=5 snd_dma1=0
snd_dma1_size=NN snd_dma2=1 snd_dma2_size=NN" pour charger ce gestion�
naire (sans support midi). Je reste convaincu que le support midi
n'est n�cessaire que pour connecter des synth�tiseurs etc. � une
machine Linux. Je n'ai jamais eu besoin du support midi, m�me pour
jouer des fichiers midi).
Notez que les valeurs "NN" doivent �tre pr�cis�es, mais je ne sais pas
quelles valeurs sont les plus raisonnables. Je ne sais d'ailleurs pas
si la sp�cification d'une taille DMA est r�ellement n�cessaire.
Si vous avez un IBM Thinkpad avec ce composant, la lecture de
http://www.cirs.org/patrick/index.html peut vous �tre utile.
55..33..22.. CCSS44223311
D'apr�s le fichier INSTALL, vous devez fournir le port de la carte.
Cependant, pour le gestionnaire CS 4235/6/7/8/9 qui suit, il m'a fallu
fournir toutes les informations (� l'exception des tailles DMA) pour
que le gestionnaire fonctionne. Si vous avez initialis� la carte avec
les isapnptools, vous pouvez probablement trouver ces informations
dans le fichier /etc/isapnp.conf :
snd_port - port du CS4231 (PnP, par d�faut 0x534)
snd_mpu_port - port de l'UART MPU-401 (PnP, par d�faut 0x300), -1 pour d�sactiver
snd_irq - IRQ du CS4231 (5,7,9,11,12,15)
snd_mpu_irq - IRQ de l'UART MPU-401 (9,11,12,15)
snd_dma1 - canal DMA 1 du CS4231 (0,1,3)
snd_dma1_size - taille de la m�moire tampon du DMA 1 en Ko (4-64Ko)
snd_dma2 - canal DMA 2 du CS4231 (0,1,3), -1 si aucun
snd_dma2_size - taille de la m�moire tampon du DMA 2 en Ko (4-64Ko)
Lancez un "modprobe snd-card-cs4231 snd_port=0x534 snd_mpu_port=-1
snd_irq=5 snd_dma1=0 snd_dma1_size=NN snd_dma2=1 snd_dma2_size=NN"
pour charger ce gestionnaire pour une carte configur�e avec ses
valeurs par d�faut (sans le support midi, cf la note pour l'OPL-3, ni
le support manette de jeu). Si vous utilisez d'autres valeurs dans
/etc/isapnp.conf, reportez-les ici aussi.
Notez que les valeurs "NN" doivent �tre pr�cis�es, mais je ne sais pas
quelles valeurs sont les plus raisonnables. Je ne sais d'ailleurs pas
si la sp�cification d'une taille DMA est r�ellement n�cessaire.
55..33..33.. CCSS44223322 eett CCSS44223322AA
D'apr�s le fichier INSTALL, vous devez fournir le port de la carte.
Cependant, pour ce gestionnaire et le suivant, il m'a fallu fournir
toutes les informations (� l'exception des tailles DMA) pour que le
gestionnaire fonctionne. Si vous avez initialis� la carte avec les
isapnptools, vous pouvez probablement trouver ces informations dans le
fichier /etc/isapnp.conf :
snd_port - port du CS4232 (PnP, par d�faut 0x534)
snd_cport - port de contr�le du CS4232 (PnP, par d�faut 0x120)
snd_mpu_port - port de l'UART MPU-401 (PnP, par d�faut 0x300), -1 pour d�sactiver
snd_fm_port - port FM du CS4232 (PnP, par d�faut 0x388), -1 pour d�sactiver
snd_jport - port manette de jeu du CS4232 (PnP, par d�faut 0x200), -1 pour d�sactiver
snd_irq - IRQ du CS4232 (5,7,9,11,12,15)
snd_mpu_irq - IRQ de l'UART MPU-401 (9,11,12,15)
snd_dma1 - canal DMA 1 du CS4232 (0,1,3)
snd_dma1_size - taille de la m�moire tampon du DMA 1 en Ko (4-64Ko)
snd_dma2 - canal DMA 2 du CS4232 (0,1,3), -1 si aucun
snd_dma2_size - taille de la m�moire tampon du DMA 2 en Ko (4-64Ko)
Lancez un "modprobe snd-card-cs4232 snd_port=0x534 snd_cport=0x120
snd_mpu_port=-1 snd_fm_port=0x388 snd_jport=-1 snd_irq=5 snd_dma1=0
snd_dma1_size=NN snd_dma2=1 snd_dma2_size=NN" pour charger ce gestion�
naire pour une carte configur�e avec ses valeurs par d�faut (sans le
support midi, cf la note pour l'OPL-3, ni le support manette de jeu).
Si vous utilisez d'autres valeurs dans /etc/isapnp.conf, reportez-les
ici aussi.
Notez que les valeurs "NN" doivent �tre pr�cis�es, mais je ne sais pas
quelles valeurs sont les plus raisonnables. Je ne sais d'ailleurs pas
si la sp�cification d'une taille DMA est r�ellement n�cessaire.
55..33..44.. CCSS44223355//CCSS44223366//CCSS44223366BB//CCSS44223377BB//CCSS44223388BB//CCSS44223399
D'apr�s le fichier INSTALL, vous devez fournir le port de la carte.
Cependant, pour une carte � base de CS4237B, il m'a fallu fournir
toutes les informations (� l'exception des tailles DMA) pour que le
gestionnaire fonctionne. Si vous avez initialis� la carte avec les
isapnptools, vous pouvez probablement trouver ces informations dans le
fichier /etc/isapnp.conf :
snd_port - port du CS423x (PnP, par d�faut 0x534)
snd_cport - port de contr�le du CS423x (PnP, par d�faut 0x120)
snd_mpu_port - port de l'UART MPU-401 (PnP, par d�faut 0x300), -1 pour d�sactiver
snd_fm_port - port FM du CS423x (PnP, par d�faut 0x388), -1 pour d�sactiver
snd_jport - port manette de jeu du CS423x (PnP, par d�faut 0x200), -1 pour d�sactiver
snd_irq - IRQ du CS423x (5,7,9,11,12,15)
snd_mpu_irq - IRQ de l'UART MPU-401 (9,11,12,15)
snd_dma1 - canal DMA 1 du CS423x (0,1,3)
snd_dma1_size - taille de la m�moire tampon du DMA 1 en Ko (4-64Ko)
snd_dma2 - canal DMA 2 du CS423x (0,1,3), -1 si aucun
snd_dma2_size - taille de la m�moire tampon du DMA 2 en Ko (4-64Ko)
Lancez un "modprobe snd-card-cs4236 snd_port=0x534 snd_cport=0x120
snd_mpu_port=-1 snd_fm_port=0x388 snd_jport=-1 snd_irq=5 snd_dma1=0
snd_dma1_size=NN snd_dma2=1 snd_dma2_size=NN" pour charger ce gestion�
naire pour une carte configur�e avec ses valeurs par d�faut (sans le
support midi, cf la note pour l'OPL-3, ni le support manette de jeu).
Notes :
� les valeurs "NN" doivent �tre pr�cis�es, mais je ne sais pas
quelles valeurs sont les plus raisonnables ;
� mon CS4237B fonctionne parfaitement sans utiliser les options de
taille DMA.
55..44.. CChhaarrggeemmeenntt ppaarr kkeerrnneelldd
kerneld est un daemon qui charge les modules chaque fois que
n�cessaire, et les d�charge quand ils ne sont plus utilis�s. N'ayant
aucune exp�rience de kerneld, je ne sais pas si les renseignements que
je donne ici sont fiables. Ils proviennent du fichier INSTALL des
gestionnaires ALSA. Une excellente source d'informations sur kerneld
est le Kerneld-mini-HOWTO.
Proc�dez ainsi :
� Modifiez votre /etc/conf.modules (des exemples sont donn�s plus
loin) ;
� Lancez 'modprobe snd-carte' o� carte est le nom de votre carte.
[Ce que je trouve �tonnant, vu que kerneld est cens� le charger
lui-m�me ? VS]
Exemple de /etc/conf.modules pour une carte Gravis UltraSound PnP :
alias char-major-14 snd
alias snd-minor-oss-0 snd-interwave
alias snd-minor-oss-3 snd-pcm1-oss
alias snd-minor-oss-4 snd-pcm1-oss
alias snd-minor-oss-5 snd-pcm1-oss
alias snd-minor-oss-12 snd-pcm1-oss
alias snd-card-0 snd-interwave
options snd snd_major=14 snd_cards_limit=1
options snd-interwave snd_index=1 snd_id="guspnp" snd_port=0x220 snd_irq=5
snd_dma1=5 snd_dma2=6
Exemple pour utiliser plus d'une carte son sur votre machine (ici pour
une Sound Blaster 16 et une Gravis UltraSound Classic) :
alias char-major-14 snd
alias snd-minor-oss-0 snd-mixer
alias snd-minor-oss-3 snd-pcm1-oss
alias snd-minor-oss-4 snd-pcm1-oss
alias snd-minor-oss-5 snd-pcm1-oss
alias snd-minor-oss-12 snd-pcm1-oss
alias snd-card-0 snd-sb16
alias snd-card-1 snd-gusclassic
options snd snd_major=14 snd_cards_limit=2
options snd-sb16 snd_index=1 snd_port=0x220 snd_irq=5 snd_dma8=1 snd_dma16=5
options snd-gusclassic snd_index=2 snd_irq=11 snd_dma1=6 snd_dma2=7
Exemple si deux cartes Gravis UltraSound Classic sont install�es :
alias char-major-14 snd
alias snd-minor-oss-0 snd-mixer
alias snd-minor-oss-3 snd-pcm1-oss
alias snd-minor-oss-4 snd-pcm1-oss
alias snd-minor-oss-5 snd-pcm1-oss
alias snd-minor-oss-12 snd-pcm1-oss
alias snd-card-0 snd-gusclassic
alias snd-card-1 snd-gusclassic
options snd snd_major=14 snd_cards_limit=2
options snd-gusclassic snd_index=1,2 snd_port=0x220,0x260 snd_irq=5,11
snd_dma1=5,6 snd_dma2=7,3
55..55.. CCoommppaattiibbiilliitt�� OOSSSS
Si vous souhaitez avoir une compatibilit� avec OSS/Free ou OSS/Linux,
il vous faut charger un gestionnaire de plus : le gestionnaire de
compatibilit� snd-pcm1-oss. Lancez
modprobe snd-pcm1-oss
Cela vous donnera le support de /dev/audio et /dev/dsp, comme le font
les gestionnaires OSS/Free (ceux du noyau) et OSS/Linux (ceux vendus
s�par�ment). Notez qu'il ne s'agit que d'une �mulation.
66.. TTeesstteerr eett uuttiilliisseerr
Maintenant vous �tes pr�t � tester si le gestionnaire sonore est
r�ellement disponible, avant de l'utiliser.
66..11.. LLee ssyysstt��mmee ddee ffiicchhiieerrss //pprroocc
Vous pouvez trouver beaucoup de renseignements sur votre syst�me dans
le r�pertoire /proc. /proc est un syst�me de fichiers "virtuel", ce
qui signifie qu'il n'existe pas r�ellement, mais fournit grosso modo
une vue d'ensemble sur les processus de votre ordinateur. Pour que
/proc soit accessible, votre noyau doit �tre compil� avec le support
de /proc, ce qui est le cas dans la plupart des distributions, mais si
vous avez compil� votre propre noyau sans /proc, vous n'aurez bien
�videmment rien dans /proc.
/proc/modules recense les modules charg�s. Une fois les gestionnaires
ALSA charg�s, en tapant cat /proc/modules vous devriez avoir quelque
chose de ce genre :
snd-pcm1-oss 4 0
snd-sb16 1 1
snd-sb-dsp 4 [snd-sb16] 0
snd-pcm1 4 [snd-pcm1-oss snd-sb-dsp] 0
snd-pcm 3 [snd-pcm1-oss snd-sb16 snd-sb-dsp snd-pcm1] 0
snd-mixer 3 [snd-pcm1-oss snd-sb16 snd-sb-dsp] 1
snd-mpu401-uart 1 [snd-sb16] 0
snd-midi 4 [snd-sb16 snd-sb-dsp snd-mpu401-uart] 0
snd-opl3 1 [snd-sb16] 0
snd-synth 1 [snd-sb16 snd-opl3] 0
snd-timer 1 [snd-opl3] 0
snd 8 [snd-pcm1-oss snd-sb16 snd-sb-dsp snd-pcm1 snd-pcm snd-mixer snd-mpu401-uart snd-midi snd-opl3 snd-synth snd-timer] 0
Si quelque chose s'est mal pass� pendant l'installation du gestion�
naire, vous aurez quand m�me quelques gestionnaires �snd�, mais pas de
support audio.
Par exemple (note : ne vous amusez surtout pas � entrer les commandes
suivantes, le gestionnaire cs4236 a besoin de param�tres) :
win3:~# modprobe snd-card-cs4236
/lib/modules/2.0.35/misc/snd-card-cs4236.o: init_module: Device or resource busy
snd-mixer: Device or resource busy
win3:~# cat /proc/modules
snd-cs4236 2 0
snd-cs4231 3 [snd-cs4236] 0
snd-timer 1 [snd-cs4231] 0
snd-pcm1 4 [snd-cs4236 snd-cs4231] 0
snd-mixer 3 [snd-cs4236 snd-cs4231] 0
snd-pcm 3 [snd-cs4236 snd-cs4231 snd-pcm1] 0
snd-mpu401-uart 1 0
snd-midi 4 [snd-mpu401-uart] 0
snd-opl3 1 0
snd-synth 1 [snd-opl3] 0
snd-timer 1 [snd-cs4231 snd-opl3] 0
snd 8 [snd-cs4231 snd-timer snd-pcm1 snd-mixer snd-pcm] 0
Vous pouvez v�rifier l'existence d'une carte son en regardant
/proc/asound/cards. Par exemple :
bash$ cat /proc/asound/cards
0 [card1 : SB16 - Sound Blaster 16
Sound Blaster 16 at 0x220, irq 5, dma 1&5
Dans l'exemple pr�c�dent (o� j'ai oubli� les options) l'affichage
aurait �t� :
win3:~# cat /proc/asound/cards
--- no soundcards ---
Une carte CS4236 fonctionnelle donnerait
0 [card1 ]: CS4236 - CS4237B
CS4237B at 0x534, irq 7, dma 1&0
Si vous avez beau v�rifier et rev�rifier vos r�glages et que vous
n'avez toujours rien, allez faire un tour dans la section d�pannage.
Le r�pertoire virtuel /proc/asound fournit beaucoup d'autres
renseignements sur le gestionnaire. Notez cependant que /proc/asound
n'existera qu'une fois le premier module ALSA charg�. S'il n'y a pas
de /proc/asound, cela signifie simplement que le module snd n'a pas
�t� charg� convenablement. Vous pouvez trouver la liste des cartes
install�es dans /proc/asound/cards, puis des renseignements sur la
premi�re dans /proc/asound/0, sur la suivante dans /proc/asound/1,
etc.
Si cat /proc/asound/card1/pcm0 donne quelque chose du genre :
ES1370 DAC2/ADC
Playback isn't active.
Record isn't active.
cela signifie que votre gestionnaire est pr�t � l'emploi, mais ne fait
rien pour l'instant (donc tout s'est bien pass�).
Pour les utilisateurs de noyau 2.0.x, il existe une troisi�me fa�on
d'obtenir des renseignements sur les gestionnaires sonores, si vous
avez charg� le module de compatibilit� OSS, � savoir le p�riph�rique
/dev/sndstat. Les gestionnaires ALSA vous demandent poliment de ne pas
vous fier � cette source d'informations, car elle n'est l� que pour la
compatibilit� avec les gestionnaires OSS, et de meilleurs
renseignements sont facilement disponibles via /proc/asound. Sous les
noyaux 2.2.x, ALSA utilise le module soundcore du noyau et ne peut pas
�muler /dev/sndstat, car cela interf�rerait avec les gestionnaires
OSS.
66..22.. LLee mmiixxeerr
Une fois les gestionnaires de votre carte son install�s, comme vous
l'indique /proc, vous pouvez essayer de faire du bruit. Tout d'abord,
installez le paquetage d'utilitaires, ou tout au moins placez la
commande �amixer� � un endroit raisonnable (comme /usr/local/bin).
Commencez par examiner les r�glages du mixer en lan�ant �amixer�.
Cette commande affiche les r�glages du mixer, � savoir les r�glages de
volume des diff�rentes parties de la carte son. Le r�sultat peut
varier �norm�ment d'une carte � l'autre. Ma Soundblaster 16 donne :
Master 0 % (-14.00dB) : 0 % (-14.00dB)
Bass 0 % (-14.00dB) : 0 % (-14.00dB)
Treble 0 % (-14.00dB) : 0 % (-14.00dB)
Synth 0 % (-62.00dB) : 0 % (-62.00dB)
PCM 0 % (-62.00dB) : 0 % (-62.00dB)
Line-In 0 % (-62.00dB) : 0 % (-62.00dB) Mute
MIC 0 % (-62.00dB) : 0 % (-62.00dB) Mute
CD 0 % (-62.00dB) : 0 % (-62.00dB) Mute
In-Gain 0 % (-18.00dB) : 0 % (-18.00dB)
Out-Gain 0 % (-18.00dB) : 0 % (-18.00dB)
PC Speaker 0 % (-18.00dB) : 0 % (-18.00dB)
Ma carte son � base de Crystal 4237B a beaucoup d'autres options :
Master D 0 % (-22.00dB) : 0 % (-22.00dB) Mute
3D Center 0 % (-22.50dB) : 0 % (-22.50dB)
3D Space 0 % (-22.50dB) : 0 % (-22.50dB) Mute
Synth 0 % (-94.50dB) : 0 % (-94.50dB) Mute
FM 0 % (-94.50dB) : 0 % (-94.50dB) Mute
DSP 0 % (-94.50dB) : 0 % (-94.50dB) Mute
PCM 0 % (-94.50dB) : 0 % (-94.50dB) Mute
Line-In 0 % (-34.50dB) : 0 % (-34.50dB) Mute
MIC 0 % (-22.50dB) : 0 % (-22.50dB) Mute
CD 0 % (-34.50dB) : 0 % (-34.50dB) Mute
Record-Gain 0 % ( 0.00dB) : 0 % ( 0.00dB)
In-Gain 0 % (-18.00dB) : 0 % (-18.00dB)
Loopback 0 % (-94.50dB) : 0 % (-94.50dB) Mute
Mono 0 % (-45.00dB) : 0 % (-45.00dB) Mute
Aux A 0 % (-34.50dB) : 0 % (-34.50dB) Mute
Si vous ne recevez qu'un laconique �amixer: Specify command...�, vous
utilisez les utilitaires d'ALSA 0.3.2. Vous en avez besoin pour
utiliser les gestionnaires 0.3.0+, mais il n'y a pas encore de
documentation et comme la nouvelle interface du mixer est encore en
beta test, je vous recommande de vous en tenir � ALSA 0.3.0-pre4. De
plus, le nouvel amixer n'a pas encore de page man, vous devrez vous
d�brouiller tout seul.
66..22..11.. RR��ggllaaggee dduu mmiixxeerr eenn lleeccttuurree
Vous aurez remarqu� les indications Mute (Muet) pour certains
p�riph�riques. Cela signifie que ces p�riph�riques n'�mettront pas de
son, quel que soit le r�glage du volume. Certaines cartes (comme ici
le CS4237B) mettent m�me le canal principal en sourdine. Ainsi, pour
le CS4237B, il me faut lancer
amixer "master d" unmute
pour pouvoir entendre le moindre son. La Soundblaster n'a pas de
sortie en sourdine, mais
amixer master 100 unmute
r�glerait le volume � 100% et r�activerait le canal principal. Vous
pouvez utiliser un nombre, un des mots �mute� et �unmute�, ou les
deux. Lancez
amixer "master d" 100; amixer pcm 100 unmute
pour r�gler le volume principal du CS4237B au maximum, activer le
canal PCM et r�gler son volume au maximum. Pour des r�glages s�par�s
sur les canaux gauche et droite, utilisez un signe �deux-points�, par
exemple
amixer CD 25:50
(et non, je ne sais pas lequel est le gauche et lequel est le droit,
mais de toute fa�on cela d�pend aussi fortement de la position de vos
haut-parleurs).
66..22..22.. ��ll��mmeennttss dduu mmiixxeerr
Les diff�rentes parties du mixer peuvent �tre d�routantes si vous
n'avez pas de connaissances sur la production du son num�rique. Le
sound-HOWTO peut vous aider un peu, mais voici ici une br�ve
explication.
Vous aurez sans doute besoin de seulement quelques �l�ments : l'un
d'entre eux est le r�glage �CD� (le volume de votre lecteur de cd-rom,
pourvu qu'il soit connect� � la carte son par un c�ble � 3 ou 4 fils
rouge,blanc et noir).
Le r�glage �PCM� est utilis� pour la plupart des applications. Les
programmes comme mpg123, xmms, speakfreely, realplayer et la plupart
des autres utilisent le canal PCM.
�MIC� repr�sente le micro, �line-in� est une entr�e suppl�mentaire
(pas toujours pr�sente) de votre carte son.
Les r�glages �gain� permettent un r�glage suppl�mentaire
d'amplification.
66..22..33.. RR��ggllaaggee dduu mmiixxeerr eenn eennrreeggiissttrreemmeenntt
Vous pouvez r�gler le canal CD en enregistrement en entrant
amixer cd rec
puis le remettre en lecture avec
amixer cd norec.
Si vous pr�f�rez enregistrer depuis un micro, vous devrez probablement
utiliser
amixer record-gain 100; amixer mic 100 rec mute
(ne pas mettre l'entr�e micro en sourdine produit des parasites si le
micro capte son propre signal par les haut-parleurs). La plupart des
micros ont un r�glage de �gain� permettant d'amplifier le volume ;
vous allez probablement devoir l'utiliser si vous ne recevez pas le
moindre son du micro.
66..22..44.. AAuuttrreess rr��ggllaaggeess dduu mmiixxeerr
Malheureusement, je n'ai pas pu modifier le r�glage des canaux "3d
center" et "3d space" avec amixer. Si quelqu'un y parvient, faites-le
moi savoir. Vous pouvez cependant utiliser alsamixer pour cela.
La FAQ ALSA pr�tend qu'il est possible de restaurer les r�glages du
mixer avec cat <fichier> > /proc/asound/N/mixerC0D0, o� <ficher
contient une pr�c�dente copie de /proc/asound/N/mixerC0D0. Je n'ai pas
pu le faire sur mon syst�me, il se plaint de p�riph�riques non
existants.
66..33.. LLeess pp��rriipphh��rriiqquueess //ddeevv//ssnndd//
Les gestionnaires ALSA ont des p�riph�riques associ�s dans le
r�pertoire /dev/snd. Si vous avez une carte, vous devriez avoir les
p�riph�riques suivants :
/dev/snd/pcmC0D0 - la sortie PCM de la carte0
/dev/snd/mixerC0D0 - le mixer de la carte 0
/dev/snd/controlC0D0 - le contr�leur de la carte 0
Le premier chiffre est le num�ro de la carte son, le deuxi�me (s'il y
a lieu) �tant le num�ro du p�riph�rique. Une carte son ayant deux sor�
ties PCM aurait pcmC0D0 et pcmC0D1. Note : les gestionnaires ALSA ont
chang� de notation par rapport � la pr�c�dente version, qui utilisait
/dev/snd/pcm00 (premier chiffre pour la carte, deuxi�me chiffre pour
le p�riph�rique). Si ce HOWTO emploie l'ancienne notation, pr�venez-
moi pour que je le corrige.
Maintenant, vous �tes pr�t � envoyer un fichier son dans la sortie PCM
de la premi�re carte. Essayez de copier n'importe quel fichier texte
dans /dev/snd/pcmC0D0 ainsi : cat <fichier > /dev/snd/pcmC0D0. Le
fichier peut �tre quelconque, pourvu qu'il ne soit pas de longueur
nulle. Si vous avez un fichier son qui tra�ne quelque part, vous
pouvez l'essayer. Vous pouvez aussi r�cup�rer le fichier en
http://www.ldp.org/sounds/english.au, pour entendre Linus Torvalds
expliquer comment prononcer Linux.
La configuration par d�faut de votre p�riph�rique sonore est 8000 Hz,
8 bits. Ce qui signifie que le fichier "english.au" mentionn� plus
haut g�n�rera de la voix, tandis que les autres fichiers g�n�reront
probablement des parasites. Si vous n'entendez rien, v�rifiez vos
haut-parleurs, essayez de relancer amixer ou consultez un m�decin.
(Plus loin vous pourrez utiliser les fonctionnalit�s 48 kHz, 16 bit de
votre carte son avec votre programme audio pr�f�r�, comme sox ou
mpg123).
Si vous avez charg� le module �snd-pcm1-oss�, vous pouvez �galement
utiliser la compatibilit� OSS pour acc�der � votre carte son. Les
correspondances suivantes sont alors effectu�es :
/dev/snd/pcmC0D0 -> /dev/audio0 (/dev/audio) -> num�ro mineur 4
/dev/snd/pcmC0D0 -> /dev/dsp0 (/dev/dsp) -> num�ro mineur 3
/dev/snd/pcmC0D1 -> /dev/adsp0 (/dev/adsp) -> num�ro mineur 12
/dev/snd/pcmC1D0 -> /dev/audio1 -> num�ro mineur 4+16 = 20
/dev/snd/pcmC1D0 -> /dev/dsp1 -> num�ro mineur 3+16 = 19
/dev/snd/pcmC1D1 -> /dev/adsp1 -> num�ro mineur 12+16 = 28
/dev/snd/pcmC2D0 -> /dev/audio2 -> num�ro mineur 4+32 = 36
/dev/snd/pcmC2D0 -> /dev/dsp2 -> num�ro mineur 3+32 = 35
/dev/snd/pcmC2D1 -> /dev/adsp2 -> num�ro mineur 12+32 = 44
66..44.. IInnffoorrmmaattiioonnss ccoommppll��mmeennttaaiirreess
Le fichier INSTALL des gestionnaires ALSA mentionne quelques trucs et
astuces pour indiquer leurs r�glages aux gestionnaires. Leur utilit�
d�pend des applications sonores dont vous vous servez. Les
applications classiques, comme mpg123, sox (g�n�ralement utilis�e par
la commande play), ou RealPlayer, fonctionneront probablement
parfaitement sans avoir recours � ces astuces. Je n'en ai jamais eu
besoin personnellement.
66..44..11.. //pprroocc//aassoouunndd//NN//ppccmmNN00
"Playback erase" - efface toutes les informations sur les applications OSS
"Playback <application> <nombre de fragments> <taille des fragments> [<options>]"
"Record erase" - efface toutes les informations sur les applications OSS
"Record <application> <nombre de fragments> <taille des fragments> [<options>]"
application - nom de l'application (avec ou sans chemin complet).
nombre de fragments - nombre de fragments, ou z�ro pour laisser le
choix � ALSA.
taille des fragments - taille des fragments en octets, ou z�ro pour
laisser le choix � ALSA.
options - param�tres optionnels
WR_ONLY - si l'application tente d'ouvrir le p�riph�rique PCM en mode
O_RDWR, modifier en O_WRONLY (pas d'enregistrement) - pour Quake etc.
Exemples :
echo "Playback x11amp 128 16384" > /proc/asound/0/pcm00
echo "Playback squake 0 0 WR_ONLY" > /proc/asound/0/pcm00
66..44..22.. //pprroocc//aassoouunndd//NN//ssbb1166
"Playback 8" -> n'utiliser que le canal DMA 8 bits pour la lecture.
"Playback 16" -> n'utiliser que le canal DMA 16 bits pour la lecture.
"Playback auto" (par d�faut) -> choix automatique : la premi�re ouverture utilisera le canal DMA 16 bits.
"Record 8" -> n'utiliser que le canal DMA 8 bits pour l'enregistrement.
"Record 16" -> n'utiliser que le canal DMA 16 bits pour l'enregistrement.
"Record auto" (par d�faut) -> choix automatique : la premi�re ouverture utilisera le canal DMA 16 bits.
Exemple : echo "Record 16" > /proc/asound/0/sb16
Pour plus d'informations, consultez le fichier INSTALL.
77.. AAssttuucceess eett dd��ppaannnnaaggee
Pensez � lire la FAQ dans le r�pertoire des gestionnaires sonores.
Cette section est toujours en construction.
77..11.. CCoommppiillaattiioonn ddeess ggeessttiioonnnnaaiirreess
77..11..11.. AArrbboorreesscceennccee ddeess ssoouurrcceess dduu nnooyyaauu
Si vous n'arrivez pas � compiler vos gestionnaires ALSA, avec des
messages d'erreur mentionnant �version.h� ou d'autres fichiers d'en-
t�tes non trouv�s, cela peut signifier que vous n'avez pas les
fichiers d'en-t�tes du noyau. Allez consulter le kernel-HOWTO,
d�compactez un noyau r�cent dans /usr/src et lancez make config.
77..22.. CChhaarrggeemmeenntt ddeess ggeessttiioonnnnaaiirreess
Pensez � v�rifier les points suivants :
77..22..11.. CCoommppaattiibbiilliitt�� ddeess ccaarrtteess ssoonn
�tes vous certain que votre carte EST support�e ? V�rifiez encore. Il
arrive qu'un mod�le X123 ne soit pas exactement un mod�le X123b, et
vous perdrez votre temps. D'un autre c�t�, m�me une carte support�e
peut vous poser probl�me - il m'a fallu deux heures pour installer une
carte CS4237B, ce qui, apr�s tout, n'�tait qu'un excellent cas de
RTFM.
77..22..22.. ((uunnrreessoollvveedd ssyymmbboollss)) ��PP��rriipphh��rriiqquuee oouu rreessssoouurrccee ooccccuupp��ee��
((ddeevviiccee bbuussyy)) oouu ��ssyymmbboolleess nnoonn rr��ssoolluuss��
Il se peut que vous ayez un noyau 2.0.x avec le support son int�gr�,
ou que le gestionnaire OSS/Lite (celui du noyau) soit charg� (v�rifiez
par cat /proc/modules). Retirez le gestionnaire ou recompilez le noyau
(reportez-vous au Kernel-HOWTO).
Le module son des noyaux 2.0 est nomm� �sound.o� et nnee doit ppaass �tre
actif (contrairement au gestionnaire ALSA �snd.o�, bien entendu).
Si vous avez un noyau 2.2.x sans support son, les gestionnaires ALSA
ne fonctionneront pas non plus.
77..22..22..11.. NNooyyaauuxx 22..00..xx
Je sais que c'est un peu confus, mais laissez-moi expliquer une fois
de plus. Si vous avez un nnooyyaauu 22..00..xx (la commande �uname -a� renvoyant
quelque chose du genre �Linux pingouin 2.0.35 #6 Wed Sep 23 10:19:16
CEST 1998 i686 unknown�) alors vous devez dd��ssaaccttiivveerr ttoouutt ssuuppppoorrtt ssoonn
dans le noyau.
77..22..22..22.. NNooyyaauuxx 22..22..xx
Si vous avez un nnooyyaauu 22..22..xx vous avez bbeessooiinn dduu ssuuppppoorrtt ssoonn. Un noyau
2.2 doit �tre compil� avec le support son, mais sans le moindre
gestionnaire de carte son. Il vous faut donc choisir le support son et
v�rifier qu'aucun autre gestionnaire sp�cifique n'est compil�.
77..22..33.. RR��ff��rreenncceess �� dd''aauuttrreess ggeessttiioonnnnaaiirreess
Une autre raison pour laquelle le gestionnaire se plaint que le
p�riph�rique est occup� peut �tre que le fichier /etc/conf.modules
r�f�rence encore les anciens gestionnaires. Vous devriez effacer ces
r�f�rences et ne laisser que des r�f�rences aux gestionnaires ALSA
(bien s�r, laissez les gestionnaires non sonores tels quels).
77..22..44.. SSyymmbboolleess nnoonn rr��ssoolluuss,, ddeeuuxxii��mmee
Une autre cause des messages �symboles non r�solus� peut �tre un noyau
plus r�cent que les gestionnaires. Assurez-vous de recompiler les
gestionnaires ALSA apr�s chaque changement de noyau, de fa�on � �tre
certain d'avoir des gestionnaires correspondant � votre noyau.
77..22..55.. VV��rriiffiieezz llee rr��ggllaaggee PPnnPP
�tes-vous s�r que votre carte son est activ�e ? Relisez donc le PnP-
HOWTO, et v�rifiez que votre carte son est correctement activ�e.
77..22..66.. VVooss ppaarraamm��ttrreess ssoonntt--iillss ccoorrrreeccttss ??
V�rifiez encore et toujours les param�tres de votre carte son.
N'oubliez pas que 534 n'est pas la m�me chose que 543, pas plus que
0x534 n'est 534.
Pensez �galement que certaines cartes doivent �tre charg�es avec un
nom diff�rent de celui suppos�. Faites une pause, allez boire une
bi�re ou toute autre boisson, et v�rifiez encore votre commande
�modprobe�. Par exemple, le gestionnaire Crystal 4232 doit �tre ins�r�
par �modprobe snd-cs4232�, pas �snd-cs4231�, et que celui de la
SoundBlaster PCI64 se nomme �snd-audiopci�, pas �snd-es1370� (tout est
dans la documentation, et bien que je sois l'auteur du HOWTO, il m'est
arriv� de passer une soir�e � essayer de faire jouer du son � snd-
cs4231).
77..33.. GGeessttiioonnnnaaiirree cchhaarrgg��...... mmaaiiss aauuccuunn ssoonn ((oouu �� ppeeiinnee aauuddiibbllee))
77..33..11.. LLaa ssoouurrddiinnee
Les gestionnaires ALSA exploitent les possibilit�s de �sourdine� dont
disposent la plupart des cartes son. Si vous avez charg� les
gestionnaires impeccablement mais qu'ils s'obstinent � rester
silencieux, vous avez probablement oubli� de d�sactiver la sourdine.
Il vous faut �amixer� ou �alsamixer� pour cela, tous deux pr�sents
dans le paquetage alsa-utils. Un simple
amixer -c 1 master 70:70 unmute
amixer -c 1 pcm 70:70 unmute
amixer -c 1 cd 70:70 unmute
devrait suffire � la plupart des applications.
77..33..22.. AAmmpplliiffiiccaattiioonn
La plupart des cartes son ont un r�glage de mixer suppl�mentaire pour
amplifier le son en entr�e ou en sortie. Ce r�glage est commun�ment
appel� �gain�, �in-gain� pour l'entr�e et �out-gain� pour la sortie.
Agir sur ce r�glage vous aidera beaucoup � obtenir le niveau sonore
maximum de vos haut-parleurs (mais pensez � vos parents, voisins et �
vos oreilles tout de m�me). Une commande comme
amixer out-gain 100 unmute
pourra probablement rendre service.
77..33..33.. CCoommppaattiibbiilliitt�� aavveecc OOSSSS//LLiinnuuxx
S'il s'agit de votre premi�re utilisation des gestionnaires ALSA, vous
souhaiterez probablement utiliser le support son exactement comme vous
le faisiez avant, (i.e. � l'aide des gestionnaires /dev/pcmX). Il vous
faut pour cela le gestionnaire de compatibilit� OSS. Faites un
modprobe snd-pcm1-oss (reportez-vous � la fin de la section pour le
chargement des modules). Veuillez noter que snd-pcm1-oss est
diff�rent de snd-pcm1, vous avez rr��eelllleemmeenntt bbeessooiinn de snd-pcm1-oss
pour le support � l'ancienne.
77..33..44.. IImmppoossssiibbllee dd''aacccc��ddeerr aauu mmiixxeerr
Si vous avez essay� d'installer plusieurs versions diff�rentes d'ALSA,
il arrive que le mixer ne puisse plus �tre utilis�. Cela se produit
quand vous avez install� ALSA 0.3.2 puis �tes revenu � ALSA 0.3.0-pre4
(si ma m�moire est bonne). Dans ce cas, effacez tous les fichiers
libasound et les liens dans /usr/lib et recompiler les biblioth�ques
et les utilitaires :
rm /usr/lib/libasound.*
Pour �tre vraiment tranquille, effacez tous les gestionnaires ALSA
ensuite, puis recompilez et r�installez les gestionnaires.
77..44.. QQuueellqquueess ssuuggggeessttiioonnss
77..44..11.. EEssssaayyeezz ��iinnssmmoodd��
Il est parfois utile de commencer avec insmod au lieu de kerneld.
Comme �a, vous pourrez peut-�tre voir un message d'erreur.
77..44..22.. LLiisseezz llee ffiicchhiieerr IINNSSTTAALLLL
Le fichier INSTALL du r�pertoire des gestionnaires contient beaucoup
d'informations. Si votre gestionnaire ne fonctionne pas, regardez s'il
n'y a pas d'informations compl�mentaires.
77..44..33.. MMeessssaaggeess ddee dd��bboogguuaaggee
En dernier ressort, vous pouvez recompiler les gestionnaires en leur
indiquant d'envoyer des informations de d�boguage dans
/var/log/messages. Allez dans le r�pertoire des gestionnaires (cd
/usr/src/alsa-driver-... et lancez :
./configure --with-debug=detect; make clean; make
Retirez le gestionnaire (s'il est actif, voir plus bas pour une
commande pratique). Puis relancez la commande "modprobe" que vous
aviez utilis�e pr�c�demment, pour charger le gestionnaire fra�chement
compil�. Allez voir dans /var/log/messages s'il y a des messages.
77..44..44.. SSii rriieenn nnee vvaa pplluuss......
Si ces messages ne peuvent vous aider, envoyez un message � la liste
de diffusion des d�veloppeurs ALSA,
[email protected] en
pr�cisant les informations suivantes :
� nom de votre carte son, ainsi que les noms des composants pr�sents
sur la carte ;
� les sections appropri�es de votre fichier isapnp.conf si vous avez
des cartes sons PnP ;
� votre fichier conf.modules ou la commande que vous utilisez pour
activer les gestionnaires ALSA ;
� tous les messages de /var/log/messages concernant les gestionnaires
ALSA.
77..55.. RRaappppoorrttss ddee bbuuggss
Si vous avez d�couvert un bug, les d�veloppeurs d'ALSA seraient
heureux de conna�tre les informations suivantes (au minimum) :
1. versions de votre noyau et de vos gestionnaires : 'cat
/proc/asound/version' ;
2. informations sur la carte son :
� nom de la carte son ;
� liste des composants pr�sents sur la carte ;
� contenu de 'cat /proc/asound/cards' ;
3. tous les messages de /var/log/messages concernant les gestionnaires
ALSA ;
4. une description du probl�me.
77..66.. AAssttuuccee :: jjoouueerr ddeess CCDD aauuddiioo
Si vous utilisez kmod ou kerneld et les gestionnaires ALSA pour jouer
des CD audio, ni kmod ni kerneld ne vont probablement charger les
gestionnaires comme attendu. Cela est d� au fait que les lecteurs CD
en ligne de commande ne font que demander au lecteur de cd-rom de
lancer la lecture audio, sans utiliser les p�riph�riques sonores qui
pourraient indiquer � kmod ou kerneld qu'une sortie son va avoir lieu.
L'utilisation de modprobe sera probablement votre seule solution � ce
probl�me.
77..77.. AAssttuuccee :: iinnssttaallllaattiioonn dduu ggeessttiioonnnnaaiirree ss��rriiee MMIIDDII
Normalement, le port s�rie est g�r� par le gestionnaire s�rie
standard. Avant de pouvoir faire �modprobe snd-serial� il vous faut
demander au gestionnaire de ne plus s'occuper du port s�rie.
Voici comment faire :
setserial /dev/ttyS0 none
modprobe snd-serial
(en rempla�ant /dev/ttyS0 par le gestionnaire /dev/ttySx correspondant
� votre p�riph�rique MIDI).
77..88.. AAssttuuccee :: �� nnoouuvveeaauu nnooyyaauu,, nnoouuvveeaauuxx mmoodduulleess !!
Apr�s chaque mise � jour de votre noyau, vous devrez probablement
recompiler les gestionnaires ALSA. S'ils se trouvent toujours dans le
r�pertoire /usr/src, n'oubliez pas de lancer un make clean avant de
refaire la s�quence ./configure, make, make install.
Oh, et il ya aussi ce probl�me de num�rotation : le noyau �2.2.0ac1�
est vu comme un �not a number� (pas un nombre) par le script
configure. Il me semble que cela a �t� r�solu dans les scripts plus
r�cents, sinon vous pouvez peut-�tre modifier le num�ro de version du
noyau dans les sources.
77..99.. AAssttuuccee :: KKDDEE eett lleess ggeessttiioonnnnaaiirreess AALLSSAA
Supposons que vous avez une installation de KDE en �tat de marche,
mais que vous n'arrivez pas � faire fonctionner les sons syst�me,
comme pour l'ouverture des fen�tres, les changements de bureaux, etc.
Le son fonctionne en g�n�ral. Si votre lecteur de CD audio et votre
lecteur mp3 fonctionnent, cela est probablement d� au fait que
�kwmsound� est manquant.
Solution : v�rifiez que "kwmsound" figure dans votre script de
d�marrage ($KDEDIR/bin/startkde)
77..1100.. AAssttuuccee :: uuttiilliisseezz lleess pp��rriipphh��rriiqquueess AALLSSAA
Si vous aviez le support son sous Linux pr�c�demment, vos applications
se r�f�rent probablement � /dev/pcm0, /dev/audio et /dev/mixer. C'est
parfait si vous utilisez la compatibilit� OSS � l'aide du module snd-
pcm1-oss. Il serait mieux, cependant, d'utiliser les v�ritables
p�riph�riques ALSA, ceux de /dev/snd.
77..1111.. AAssttuuccee :: rreettiirreerr ttoouuss lleess mmoodduulleess
Retirer une dizaine de modules un par un est p�nible. Heureusement,
tous les modules commencent par le pr�fixe "snd-", et une petite ligne
de commande fera l'affaire. Vous pouvez retirer facilement les
modules ALSA � l'aide de la commande suivante :
cat /proc/modules|gawk '/^snd-/{print $1}|xargs -i rmmod {}
Juergen Kahrs ajoute : �J'ai �crit un script qui retire �galement
soundcore et soundlow s'ils sont pr�sents et que le son n'est plus
utilis�. Ce script traite trois fois /proc/modules afin de ne pas
laisser tra�ner trop de modules.� Cette solution est :
awk '/^snd/||/^sound/&&($3==0){system("rmmod " $1)}' /proc/modules /proc/modules /proc/modules
Note : si un module est d�pendant d'un autre, il n'est pas possible de
commencer par retirer le premier. Cela signifie qu'il se peut que vous
deviez relancer la commande de retrait une deuxi�me fois (je n'ai
cependant jamais rencontr� cette situation, il semble qu'il soit
possible de retirer les modules ALSA dans l'ordre dans lequel ils
apparaissent dans /proc/modules).