/usr/share/doc/HOWTO/fr-html/Alsa-sound.html is in doc-linux-fr-html 2013.01-3ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<meta name="generator" content=
"HTML Tidy for HTML5 for Linux version 5.2.0">
<meta name="GENERATOR" content="LinuxDoc-Tools 0.9.72">
<title>Alsa-sound-mini-HOWTO</title>
</head>
<body>
<h1>Alsa-sound-mini-HOWTO</h1>
<h2>Valentijn Sessink <code>valentyn@alsa-project.org</code></h2>
v 1.7, 29 Juillet 1999
<hr>
<em>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.</em>
<hr>
<h2><a name="s1">1. Introduction</a></h2>
<p>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.</p>
<h2><a name="ss1.1">1.1 Remerciements</a></h2>
<p>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
<a href="http://www.sgmltools.org">SGML</a> 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.<br>
Remerciements à Yamahata Isaku pour la traduction en japonais, et à
Miodrag Vallat, <a href=
"mailto:miodrag@multimania.com">miodrag@multimania.com</a>, 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.</p>
<h2><a name="ss1.2">1.2 Historique</a></h2>
<p>Version 1.7 - 29 juillet 1999. Quelques corrections.</p>
<p>Version 1.6 - 26 juillet 1999. Ajout d'une section sur les
versions d'Alsa.</p>
<p>Version 1.5 - 21 mai 1999. Modifié la section sur le mixer,
ajouté une section installation rapide.</p>
<p>Version 1.4 - 18 mai 1999. Ajout de l'URL de la version
française, changé quelques URL.</p>
<p>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.</p>
<p>Version 1.2 - 11 mai 1999. Diverses mises à jour.</p>
<p>Version 1.1 - 11 mars 1999. Ajouté deux cartes sons des nouveaux
gestionnaires 0.3, et quelques notes à propos des noyaux 2.2.</p>
<p>Version 1.0 - 8 février 1999. Ajouté quelques notes à la section
dépannage, qui semble désormais complète.</p>
<p>Version 0.3 beta - 20 janvier 1999. Un lien sur la page web
d'ALSA. Nous voici officiels !</p>
<p>Version 0.2 alpha - mi janvier 1999, première version sgml.</p>
<p>Version 0.1 alpha - janvier 1999, première version,
principalement HTML.</p>
<h2><a name="ss1.3">1.3 Nouvelles versions de ce document</a></h2>
<p>La dernière version peut être trouvée sur <a href=
"http://www.alsa-project.org/~valentyn">http://www.alsa-project.org/~valentyn</a></p>
<p>Des versions en d'autres formats se trouvent dans le répertoire
<a href=
"http://www.alsa-project.org/~valentyn/other-formats">other-formats</a>.
Malheureusement, je n'ai pas réussi à compiler une version
Postscript, car le script sgml2latex échoue avec un tas
d'erreurs.</p>
<p>Yamahata Isaku a réalisé une version en japonais, qui sera
disponible sur le site Japonais d'ALSA, <a href=
"http://plaza21.mbn.or.jp/~momokuri/alsa/index.html">http://plaza21.mbn.or.jp/~momokuri/alsa/index.html</a>
Miodrag Vallat a réalisé une version en français, disponible en
<a href=
"http://www.freenix.fr/unix/linux/HOWTO/mini/Alsa.html">http://www.freenix.fr/unix/linux/HOWTO/mini/Alsa.html</a>.</p>
<p>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.</p>
<h2><a name="ss1.4">1.4 Commentaires</a></h2>
<p>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 (à <a href=
"mailto:alsa-howto@alsa-project.org">alsa-howto@alsa-project.org</a>),
et je tâcherai de les inclure dans la prochaine version.</p>
<p>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 �.</p>
<p>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, à <a href=
"mailto:linux-howto@metalab.unc.edu">linux-howto@metalab.unc.edu</a>,
pour plus d'informations.</p>
<h2><a name="ss1.5">1.5 Politique de distribution</a></h2>
<p>Copyright 1998/1999 Valentijn Sessink</p>
<p>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.</p>
<p>Ce document est distribué car potentiellement utile, mais
<b>sans aucune garantie</b>, 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.</p>
<p>Vous pouvez obtenir une copie de la GNU General Public License
en écrivant à la <a href="http://www.fsf.org">Free Software
Foundation</a>, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307, États-Unis.</p>
<h2><a name="s2">2. Guide d'installation rapide</a></h2>
<p>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.</p>
<h2><a name="ss2.1">2.1 Installation</a></h2>
<p>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.</p>
<p>Puis la routine : � ./configure ; make ; make
install � pour <b>les gestionnaires, la bibliothèque et les
utilitaires</b>. Il vous faut les trois car vous avez besoin des
utilitaires pour désactiver la sourdine. Les noyaux 2.2.x
<b>doivent</b> ê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 <b>support son
désactivé</b>.</p>
<p>Les gestionnaires ALSA utilisent leur propres fichiers de
périphériques, que vous pouvez créer à l'aide du script
<b>./snddevices</b>.</p>
<p>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é <b>snd-pcm1-oss</b>. Consultez
la section <a href="#which-module">Quel module pour quelle
carte�?</a> 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.</p>
<h2><a name="ss2.2">2.2 Jouer et enregistrer du son</a></h2>
<p>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</p>
<p><code>amixer pcm 100 unmute</code></p>
<p>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.</p>
<p>Voilà ! Maintenant si tout fonctionne, vous avez gagné.
S'il y a des problèmes, vous allez devoir lire quand même ce
HOWTO...</p>
<h2><a name="s3">3. Avant de commencer</a></h2>
<h2><a name="ss3.1">3.1 Introduction</a></h2>
<p>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.</p>
<p>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.</p>
<h2><a name="ss3.2">3.2 Informations générales sur les
gestionnaires ALSA</a></h2>
<p>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.</p>
<p>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 <a href=
"http://www.alsa-project.org/intro.html">http://www.alsa-project.org/intro.html</a></p>
<p>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 <a href=
"http://www.alsa-project.org/">http://www.alsa-project.org/</a></p>
<h2><a name="ss3.3">3.3 Matériel supporté</a></h2>
<p>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) :</p>
<ul>
<li>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 à <a href=
"http://www.tridentmicro.com/HTML/products%20folder/audio.htm">http://www.tridentmicro.com/HTML/products%20folder/audio.htm</a>
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 ;</li>
<li>Gravis Ultrasound (GUS) : � PnP �, Extreme,
Classic/ACE, MAX ;</li>
<li>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) ;</li>
<li>Soundblaster : 1.0, 2.0, Pro, 16, AWE32/64,
PCI64 ;</li>
<li>ESS AudioDrive ESx688 ;</li>
<li>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 ;</li>
<li>ESS Solo-1 ES1938. Un seul des deux canaux fonctionne, ce qui
empêche l'enregistrement. L'auteur du gestionnaire est � au
courant du problème et en train d'en chercher les
causes � ;</li>
<li>Yamaha : chipsets OPL3-SA2, OPL3-SA3 ;</li>
<li>OAK Mozart ;</li>
<li>Schubert 32 PCI (PINE, chipset S3 SonicVibes PCI) ;</li>
<li>Ensoniq AudioPCI ES1370/1371 PCI (Soundblaster
PCI64) ;</li>
<li>SonicVibes PCI (PINE Schubert 32 PCI) ;</li>
<li>cartes à base de chipset ForteMedia FM801 (dans ALSA
0.3.2) ;</li>
<li>cartes à base de chipset OPTI 82C9xx ;</li>
<li>cartes à base de chipset AD1847, AD1848 et CS4248.</li>
</ul>
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 :
<ul>
<li>4231</li>
<li>4232</li>
<li>4232A</li>
<li>4235</li>
<li>4236B</li>
<li>4237B</li>
<li>4238B</li>
<li>4239</li>
<li>4610 (dans ALSA 0.3.2)</li>
<li>4612 (dans ALSA 0.3.2)</li>
<li>4615 (dans ALSA 0.3.2)</li>
<li>4680 (dans ALSA 0.3.2)</li>
</ul>
Une liste plus récente se trouve dans les sources du gestionnaire
lui-même, à savoir dans doc/SOUNDCARDS
<h2><a name="ss3.4">3.4 Autres HOWTO</a></h2>
<p>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 <a href=
"http://metalab.unc.edu/LDP/mirrors.html">http://metalab.unc.edu/LDP/mirrors.html</a>
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.</p>
<p>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.</p>
<h3>Cartes son</h3>
<p>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 <a href=
"../Sound-HOWTO.html">Sound-HOWTO</a> 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).</p>
<h3>Cartes Plug and Play</h3>
<p>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
<a href="../Plug-and-Play-HOWTO.html">Plug-and-Play-HOWTO</a>.</p>
<p>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.</p>
<h3>Modules</h3>
<p>Les gestionnaires ALSA sont construits en tant que modules. Vous
pouvez trouver plus d'informations sur les modules dans le <a href=
"../Kernel-HOWTO.html">Kernel-HOWTO</a>. 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 <a href="Modules.html">Modules-mini-HOWTO</a> qui
peut être utile.</p>
<h3>Kerneld</h3>
<p>Un autre HOWTO qui peut être utile à certains est le <a href=
"Kerneld.html">Kerneld-mini-HOWTO</a>. 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).</p>
<h2><a name="s4">4. Comment installer les gestionnaires sonores
ALSA</a></h2>
<h2><a name="ss4.1">4.1 Ce dont vous avez besoin</a></h2>
<ul>
<li>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.) ;</li>
<li>une carte son supportée ;</li>
<li>un minimum de connaissance de Linux (savoir utiliser "ls",
"cd", "tar", etc.) ;</li>
<li>l'accès au compte administrateur (root).</li>
</ul>
Si vous avez une carte PnP, vous aurez également besoin :
<ul>
<li>du paquetage isapnptools.</li>
</ul>
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.
<p>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.</p>
<p>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.</p>
<h2><a name="ss4.2">4.2 Obtenir les gestionnaires</a></h2>
<p>Les gestionnaires ALSA sont disponibles en <a href=
"ftp://ftp.alsa-project.org/pub/">ftp://ftp.alsa-project.org/pub/</a>,
et il en existe un miroir en <a href=
"ftp://linux.a2000.nl/alsa">ftp://linux.a2000.nl/alsa</a>. 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
<a href=
"ftp://linux.a2000.nl/alsa/driver/">ftp://linux.a2000.nl/alsa/driver/</a>alsa-driver-0.3.0-pre4.tar.gz,
<a href=
"ftp://linux.a2000.nl/alsa/lib/">ftp://linux.a2000.nl/alsa/lib/</a>alsa-lib-0.3.0pre4.tar.gz
et <a href=
"ftp://linux.a2000.nl/alsa/utils/">ftp://linux.a2000.nl/alsa/utils/</a>
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).</p>
<h2><a name="ss4.3">4.3 Les versions d'ALSA</a></h2>
<p>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).</p>
<p>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.</p>
<p>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.</p>
<p>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).</p>
<p>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.</p>
<p>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.</p>
<h2><a name="ss4.4">4.4 Extraction</a></h2>
<p>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 :</p>
<blockquote>
<pre><code>
cd /usr/src
tar -zxf ~/alsa-driver-0.3.0-pre4.tar.gz
</code></pre></blockquote>
<p>(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).</p>
<blockquote>
<pre><code>
tar -zxf ~/alsa-lib-0.3.0pre4.tar.gz
tar -zxf ~/alsa-utils-0.3.0pre3.tar.gz
</code></pre></blockquote>
É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.
<h2><a name="ss4.5">4.5 Compilation</a></h2>
<p>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 :</p>
<blockquote>
<pre><code>
cd alsa-driver-0.3.0-pre4
./configure
</code></pre></blockquote>
Si vous souhaitez utiliser le support PnP intégré, vous devriez
utiliser
<blockquote>
<pre><code>
./configure --with-isapnp=yes
</code></pre></blockquote>
<blockquote>
<pre><code>
make
</code></pre></blockquote>
<p>Maintenant vous avez besoin d'être � root � pour
installer tout ça (mais vous l'étiez peut-être déjà)</p>
<blockquote>
<pre><code>
make install
</code></pre></blockquote>
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 <code>make
menuconfig</code>. (En fait, <code>make symlinks</code> devrait
suffire).
<p>Au tour de la bibliothèque :</p>
<blockquote>
<pre><code>
cd ../alsa-lib-0.3.0-pre4
./configure
make
make install
</code></pre></blockquote>
<p>Vous avez compris le truc ? Alors pour les
utilitaires :</p>
<blockquote>
<pre><code>
cd ../alsa-utils-0.3.0-pre3
./configure
make
make install
</code></pre></blockquote>
<p>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.</p>
<h2><a name="ss4.6">4.6 Préparer les périphériques</a></h2>
<p>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</p>
<blockquote>
<pre><code>
./snddevices
</code></pre></blockquote>
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).
<p>Maintenant vous êtes prêt à insérer les gestionnaires, alors
jetez-vous donc sur le paragraphe qui suit.</p>
<h2><a name="s5">5. Charger les gestionnaires</a></h2>
<p>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.</p>
<p>Veuillez lire la section <a href="#backw-compat">compatibilité
OSS</a>. Vous en aurez besoin pour avoir un support sonore � à
l'ancienne �.</p>
<h2><a name="ss5.1">5.1 Insérer avec modprobe</a></h2>
<p>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.</p>
<p>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 :</p>
<p>Gravis UltraSound (GUS) et compatibles :</p>
<blockquote>
<pre><code>
/sbin/modprobe snd-gusclassic
</code></pre></blockquote>
<p>Pour toutes les cartes 16 bit compatibles Soundblaster
(SoundBlaster 16 (PnP), SoundBlaster AWE 32 (PnP), SoundBlaster AWE
64 (PnP) :</p>
<blockquote>
<pre><code>
/sbin/modprobe snd-sb16
</code></pre></blockquote>
<h2><a name="which-module"></a> <a name="ss5.2">5.2 Quel module
pour quelle carte ?</a></h2>
<h3>Gravis UltraSound Extreme</h3>
<p><code>modprobe snd-gusextreme</code></p>
<h3>Gravis UltraSound MAX</h3>
<p><code>modprobe snd-gusmax</code></p>
<h3>ESS AudioDrive ES-1688 et ES-688</h3>
<p><code>modprobe snd-audiodrive1688</code></p>
<h3>ESS AudioDrive ES-18xx</h3>
<p>Pour les cartes à base d'ESS AudioDrive 18xx</p>
<p><code>modprobe snd-audiodrive18xx</code></p>
<h3>Gravis UltraSound PnP</h3>
<p>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).</p>
<p><code>modprobe snd-interwave</code></p>
<h3>UltraSound 32-Pro</h3>
<p>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.</p>
<p><code>modprobe snd-interwave-stb</code></p>
<h3>Soundblaster</h3>
<p>Cartes Soundblaster 8 bits (SoundBlaster 1.0, SoundBlaster 2.0,
SoundBlaster Pro)</p>
<p><code>modprobe snd-sb8</code></p>
<h3>Soundblaster 16</h3>
<p>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.</p>
<p><code>modprobe snd-sb16</code></p>
<h3>OAK Mozart</h3>
<p><code>modprobe snd-mozart</code></p>
<h3>OPTi 82C9xx</h3>
<p>Cartes à base de chipset OPTi 82C9xx.</p>
<p><code>modprobe snd-opti9xx</code></p>
<h3>AD1847/48 et CS4248</h3>
<p><code>modprobe snd-card-ad1848</code></p>
<h3>Yamaha OPL3-SA2/SA3</h3>
<p>Un "modprobe snd-opl3sa" ne fonctionnera pas, ce gestionnaire ne
faisant pas de détection automatique. Voyez plus loin.</p>
<h3>S3 SonicVibes</h3>
<p>Cartes S3 SonicVibes PCI (PINE Schubert 32 PCI).</p>
<p><code>modprobe snd-sonicvibes</code></p>
<h3>Ensoniq/Soundblaster PCI64</h3>
<p>Cartes Ensoniq AudioPCI ES1370/1371 PCI (SoundBlaster PCI
64)</p>
<p><code>modprobe snd-audiopci</code></p>
<h3>CS4231</h3>
<p>Un � modprobe snd-card-cs4231 � ne fonctionnera pas,
ce gestionnaire ne faisant pas de détection automatique. Voyez plus
loin.</p>
<h3>CS4232/4232A</h3>
<p>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.</p>
<h3>CS4235 et supérieur</h3>
<p>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.</p>
<h3>CS 4610/4612/4615 et 4680</h3>
<p><code>modprobe snd-card-cs461x</code></p>
<h3>ESS Solo 1</h3>
<p>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
<code>modprobe snd-esssolo1</code> mais... <a href=
"http://195.163.39.4/~dice/alsa-solo1.txt">http://195.163.39.4/~dice/alsa-solo1.txt</a>
peut vous être utile si vous utilisez ALSA 0.3.2. Si vous avez un
IBM Thinkpad 1412 vous pouvez aussi consulter <a href=
"http://www.geocities.com/SiliconValley/Peaks/3649/1412.html">http://www.geocities.com/SiliconValley/Peaks/3649/1412.html</a>,
merci à Kumar Sankaran.</p>
<h3>Trident 4DWave DX/NX</h3>
<p>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.</p>
<p><code>modprobe snd-trid4dwave</code></p>
<h3>ForteMedia FM801</h3>
<p>Cartes PCI à base de FM801.</p>
<p><code>modprobe snd-card-fm801</code></p>
<h2><a name="ss5.3">5.3 Chargement par modprobe pour les pilotes
sans détection automatique</a></h2>
<p>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.</p>
<h3>OPL3-SA2 et OPL3-SA3</h3>
<p>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 :</p>
<blockquote>
<pre><code>
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)
</code></pre></blockquote>
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
gestionnaire (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).
<p>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.</p>
<p>Si vous avez un IBM Thinkpad avec ce composant, la lecture de
<a href=
"http://www.cirs.org/patrick/index.html">http://www.cirs.org/patrick/index.html</a>
peut vous être utile.</p>
<h3>CS4231</h3>
<p>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 :</p>
<blockquote>
<pre><code>
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)
</code></pre></blockquote>
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.
<p>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.</p>
<h3>CS4232 et CS4232A</h3>
<p>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 :</p>
<blockquote>
<pre><code>
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)
</code></pre></blockquote>
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
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.
<p>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.</p>
<h3>CS4235/CS4236/CS4236B/CS4237B/CS4238B/CS4239</h3>
<p>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 :</p>
<blockquote>
<pre><code>
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)
</code></pre></blockquote>
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
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). Notes :
<ul>
<li>les valeurs "NN" doivent être précisées, mais je ne sais pas
quelles valeurs sont les plus raisonnables ;</li>
<li>mon CS4237B fonctionne parfaitement sans utiliser les options
de taille DMA.</li>
</ul>
<h2><a name="ss5.4">5.4 Chargement par kerneld</a></h2>
<p><code>kerneld</code> est un <code>daemon</code> 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.</p>
<p>Procédez ainsi :</p>
<ul>
<li>Modifiez votre /etc/conf.modules (des exemples sont donnés plus
loin) ;</li>
<li>Lancez 'modprobe snd-<code>carte</code>' où <code>carte</code>
est le nom de votre carte. [Ce que je trouve étonnant, vu que
kerneld est censé le charger lui-même ? VS]</li>
</ul>
Exemple de /etc/conf.modules pour une carte Gravis UltraSound
PnP :
<blockquote>
<pre><code>
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
</code></pre></blockquote>
Exemple pour utiliser plus d'une carte son sur votre machine (ici
pour une Sound Blaster 16 et une Gravis UltraSound
Classic) :
<blockquote>
<pre><code>
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
</code></pre></blockquote>
Exemple si deux cartes Gravis UltraSound Classic sont
installées :
<blockquote>
<pre><code>
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
</code></pre></blockquote>
<h2><a name="backw-compat"></a> <a name="ss5.5">5.5 Compatibilité
OSS</a></h2>
<p>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</p>
<blockquote>
<pre><code>
modprobe snd-pcm1-oss
</code></pre></blockquote>
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.
<h2><a name="s6">6. Tester et utiliser</a></h2>
<p>Maintenant vous êtes prêt à tester si le gestionnaire sonore est
réellement disponible, avant de l'utiliser.</p>
<h2><a name="ss6.1">6.1 Le système de fichiers /proc</a></h2>
<p>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.</p>
<p>/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 :</p>
<blockquote>
<pre><code>
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
</code></pre></blockquote>
Si quelque chose s'est mal passé pendant l'installation du
gestionnaire, vous aurez quand même quelques gestionnaires
� snd �, mais pas de support audio.
<p>Par exemple (note : ne vous amusez surtout pas à entrer les
commandes suivantes, le gestionnaire cs4236 a besoin de
paramètres) :</p>
<blockquote>
<pre><code>
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
</code></pre></blockquote>
Vous pouvez vérifier l'existence d'une carte son en regardant
/proc/asound/cards. Par exemple :
<blockquote>
<pre><code>
bash$ cat /proc/asound/cards
0 [card1 : SB16 - Sound Blaster 16
Sound Blaster 16 at 0x220, irq 5, dma 1&5
</code></pre></blockquote>
Dans l'exemple précédent (où j'ai oublié les options) l'affichage
aurait été :
<blockquote>
<pre><code>
win3:~# cat /proc/asound/cards
--- no soundcards ---
</code></pre></blockquote>
Une carte CS4236 fonctionnelle donnerait
<blockquote>
<pre><code>
0 [card1 ]: CS4236 - CS4237B
CS4237B at 0x534, irq 7, dma 1&0
</code></pre></blockquote>
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.
<p>Le répertoire virtuel <code>/proc/asound</code> 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 <code>snd</code> 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.</p>
<p>Si <code>cat /proc/asound/card1/pcm0</code> donne quelque chose
du genre :</p>
<blockquote>
<pre><code>
ES1370 DAC2/ADC
Playback isn't active.
Record isn't active.
</code></pre></blockquote>
cela signifie que votre gestionnaire est prêt à l'emploi, mais ne
fait rien pour l'instant (donc tout s'est bien passé).
<p>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.</p>
<h2><a name="ss6.2">6.2 Le mixer</a></h2>
<p>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).</p>
<p>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 :</p>
<blockquote>
<pre><code>
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)
</code></pre></blockquote>
Ma carte son à base de Crystal 4237B a beaucoup d'autres
options :
<blockquote>
<pre><code>
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
</code></pre></blockquote>
<p>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.</p>
<h3>Réglage du mixer en lecture</h3>
<p>Vous aurez remarqué les indications <code>Mute</code> (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</p>
<p><code>amixer "master d" unmute</code></p>
<p>pour pouvoir entendre le moindre son. La Soundblaster n'a pas de
sortie en sourdine, mais</p>
<p><code>amixer master 100 unmute</code></p>
<p>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</p>
<p><code>amixer "master d" 100; amixer pcm 100 unmute</code></p>
<p>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</p>
<p><code>amixer CD 25:50</code></p>
<p>(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).</p>
<h3>Éléments du mixer</h3>
<p>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.</p>
<p>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).</p>
<p>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.</p>
<p>� MIC � représente le micro, � line-in � est
une entrée supplémentaire (pas toujours présente) de votre carte
son.</p>
<p>Les réglages � gain � permettent un réglage
supplémentaire d'amplification.</p>
<h3>Réglage du mixer en enregistrement</h3>
<p>Vous pouvez régler le canal CD en enregistrement en entrant</p>
<p><code>amixer cd rec</code></p>
<p>puis le remettre en lecture avec</p>
<p><code>amixer cd norec</code>.</p>
<p>Si vous préférez enregistrer depuis un micro, vous devrez
probablement utiliser</p>
<p><code>amixer record-gain 100; amixer mic 100 rec mute</code></p>
<p>(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.</p>
<h3>Autres réglages du mixer</h3>
<p>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.</p>
<p>La FAQ ALSA prétend qu'il est possible de restaurer les réglages
du mixer avec <code>cat <fichier> >
/proc/asound/N/mixerC0D0</code>, 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.</p>
<h2><a name="ss6.3">6.3 Les périphériques /dev/snd/</a></h2>
<p>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 :</p>
<blockquote>
<pre><code>
/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
</code></pre></blockquote>
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
sorties 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.
<p>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 : <code>cat
<fichier > /dev/snd/pcmC0D0</code>. 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 <a href=
"http://www.ldp.org/sounds/english.au">http://www.ldp.org/sounds/english.au</a>,
pour entendre Linus Torvalds expliquer comment prononcer Linux.</p>
<p>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
<code>amixer</code> 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).</p>
<p>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 :</p>
<blockquote>
<pre><code>
/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
</code></pre></blockquote>
<h2><a name="ss6.4">6.4 Informations complémentaires</a></h2>
<p>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 <code>play</code>), ou RealPlayer,
fonctionneront probablement parfaitement sans avoir recours à ces
astuces. Je n'en ai jamais eu besoin personnellement.</p>
<h3>/proc/asound/N/pcmN0</h3>
<blockquote>
<pre><code>
"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>]"
</code></pre></blockquote>
<p><code>application</code> - nom de l'application (avec ou sans
chemin complet).</p>
<p><code>nombre de fragments</code> - nombre de fragments, ou zéro
pour laisser le choix à ALSA.</p>
<p><code>taille des fragments</code> - taille des fragments en
octets, ou zéro pour laisser le choix à ALSA.</p>
<p><code>options</code> - paramètres optionnels</p>
<p><code>WR_ONLY</code> - 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.</p>
<p>Exemples :</p>
<blockquote>
<pre><code>
echo "Playback x11amp 128 16384" > /proc/asound/0/pcm00
echo "Playback squake 0 0 WR_ONLY" > /proc/asound/0/pcm00
</code></pre></blockquote>
<h3>/proc/asound/N/sb16</h3>
<blockquote>
<pre><code>
"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.
</code></pre></blockquote>
<p>Exemple : <code>echo "Record 16" >
/proc/asound/0/sb16</code></p>
<p>Pour plus d'informations, consultez le fichier INSTALL.</p>
<h2><a name="s7">7. Astuces et dépannage</a></h2>
<p>Pensez à lire la FAQ dans le répertoire des gestionnaires
sonores. Cette section est toujours en construction.</p>
<h2><a name="ss7.1">7.1 Compilation des gestionnaires</a></h2>
<h3>Arborescence des sources du noyau</h3>
<p>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 <code>make config</code>.</p>
<h2><a name="ss7.2">7.2 Chargement des gestionnaires</a></h2>
<p>Pensez à vérifier les points suivants :</p>
<h3>Compatibilité des cartes son</h3>
<p>Ê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.</p>
<h3>� Périphérique ou ressource occupée � (device busy)
ou � symboles non résolus � (unresolved symbols)</h3>
<p>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 <code>cat /proc/modules</code>). Retirez le
gestionnaire ou recompilez le noyau (reportez-vous au
Kernel-HOWTO).</p>
<p>Le module son des noyaux 2.0 est nommé � sound.o � et
<b>ne</b> doit <b>pas</b> être actif (contrairement au gestionnaire
ALSA � snd.o �, bien entendu).</p>
<p>Si vous avez un noyau 2.2.x sans support son, les gestionnaires
ALSA ne fonctionneront pas non plus.</p>
<h3>Noyaux 2.0.x</h3>
<p>Je sais que c'est un peu confus, mais laissez-moi expliquer une
fois de plus. Si vous avez un <b>noyau 2.0.x</b> (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 <b>désactiver tout support son</b>
dans le noyau.</p>
<h3>Noyaux 2.2.x</h3>
<p>Si vous avez un <b>noyau 2.2.x</b> vous avez <b>besoin du
support son</b>. 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é.</p>
<h3>Références à d'autres gestionnaires</h3>
<p>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).</p>
<h3>Symboles non résolus, deuxième</h3>
<p>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.</p>
<h3>Vérifiez le réglage PnP</h3>
<p>Ê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.</p>
<h3>Vos paramètres sont-ils corrects ?</h3>
<p>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.</p>
<p>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).</p>
<h2><a name="ss7.3">7.3 Gestionnaire chargé... mais aucun son (ou à
peine audible)</a></h2>
<h3>La sourdine</h3>
<p>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</p>
<blockquote>
<pre><code>
amixer -c 1 master 70:70 unmute
amixer -c 1 pcm 70:70 unmute
amixer -c 1 cd 70:70 unmute
</code></pre></blockquote>
devrait suffire à la plupart des applications.
<h3>Amplification</h3>
<p>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</p>
<blockquote>
<pre><code>
amixer out-gain 100 unmute
</code></pre></blockquote>
pourra probablement rendre service.
<h3>Compatibilité avec OSS/Linux</h3>
<p>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 <code>modprobe snd-pcm1-oss</code>
(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 <b>réellement besoin</b> de snd-pcm1-oss pour
le support à l'ancienne.</p>
<h3>Impossible d'accéder au mixer</h3>
<p>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 :</p>
<blockquote>
<pre><code>
rm /usr/lib/libasound.*
</code></pre></blockquote>
Pour être vraiment tranquille, effacez tous les gestionnaires ALSA
ensuite, puis recompilez et réinstallez les gestionnaires.
<h2><a name="ss7.4">7.4 Quelques suggestions</a></h2>
<h3>Essayez � insmod �</h3>
<p>Il est parfois utile de commencer avec insmod au lieu de
kerneld. Comme ça, vous pourrez peut-être voir un message
d'erreur.</p>
<h3>Lisez le fichier INSTALL</h3>
<p>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.</p>
<h3>Messages de déboguage</h3>
<p>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
(<code>cd /usr/src/alsa-driver-...</code> et lancez :</p>
<blockquote>
<pre><code>
./configure --with-debug=detect; make clean; make
</code></pre></blockquote>
<p>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.</p>
<h3>Si rien ne va plus...</h3>
<p>Si ces messages ne peuvent vous aider, envoyez un message à la
liste de diffusion des développeurs ALSA, <a href=
"mailto:alsa-devel@alsa-project.org">alsa-devel@alsa-project.org</a>
en précisant les informations suivantes :</p>
<ul>
<li>nom de votre carte son, ainsi que les noms des composants
présents sur la carte ;</li>
<li>les sections appropriées de votre fichier isapnp.conf si vous
avez des cartes sons PnP ;</li>
<li>votre fichier conf.modules ou la commande que vous utilisez
pour activer les gestionnaires ALSA ;</li>
<li>tous les messages de /var/log/messages concernant les
gestionnaires ALSA.</li>
</ul>
<h2><a name="ss7.5">7.5 Rapports de bugs</a></h2>
<p>Si vous avez découvert un bug, les développeurs d'ALSA seraient
heureux de connaître les informations suivantes (au
minimum) :</p>
<ol>
<li>versions de votre noyau et de vos gestionnaires : 'cat
/proc/asound/version' ;</li>
<li>informations sur la carte son :
<ul>
<li>nom de la carte son ;</li>
<li>liste des composants présents sur la carte ;</li>
<li>contenu de 'cat /proc/asound/cards' ;</li>
</ul>
</li>
<li>tous les messages de /var/log/messages concernant les
gestionnaires ALSA ;</li>
<li>une description du problème.</li>
</ol>
<h2><a name="ss7.6">7.6 Astuce : jouer des CD audio</a></h2>
<p>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.</p>
<h2><a name="ss7.7">7.7 Astuce : installation du gestionnaire
série MIDI</a></h2>
<p>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.</p>
<p>Voici comment faire :</p>
<blockquote>
<pre><code>
setserial /dev/ttyS0 none
modprobe snd-serial
</code></pre></blockquote>
<p>(en remplaçant /dev/ttyS0 par le gestionnaire /dev/ttySx
correspondant à votre périphérique MIDI).</p>
<h2><a name="ss7.8">7.8 Astuce : à nouveau noyau, nouveaux
modules !</a></h2>
<p>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
<code>make clean</code> avant de refaire la séquence ./configure,
make, make install.</p>
<p>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.</p>
<h2><a name="ss7.9">7.9 Astuce : KDE et les gestionnaires
ALSA</a></h2>
<p>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.</p>
<p>Solution : vérifiez que "kwmsound" figure dans votre script de
démarrage ($KDEDIR/bin/startkde)</p>
<h2><a name="ss7.10">7.10 Astuce : utilisez les périphériques
ALSA</a></h2>
<p>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.</p>
<h2><a name="ss7.11">7.11 Astuce : retirer tous les
modules</a></h2>
<p>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 :</p>
<blockquote>
<pre><code>
cat /proc/modules|gawk '/^snd-/{print $1}|xargs -i rmmod {}
</code></pre></blockquote>
<p>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 :</p>
<blockquote>
<pre><code>
awk '/^snd/||/^sound/&&($3==0){system("rmmod " $1)}' /proc/modules /proc/modules /proc/modules
</code></pre></blockquote>
<p>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).</p>
</body>
</html>
|