Advanced Linux Sound Architecture (Français)

Advanced Linux Sound Architecture (ALSA) fournit des pilotes de cartes son pilotés par le noyau. Il remplace le système original Open Sound System (OSS).

État de la traduction: Cet article est la version francophone de Advanced Linux Sound Architecture. Date de la dernière traduction: 2022-03-10. Vous pouvez aider à synchroniser la traduction s'il y a eu des changements dans la version anglaise.

Outre les pilotes de périphériques sonores, ALSA fournit également une bibliothèque pilotée par l'espace utilisateur pour les développeurs d'applications. Ceux-ci peuvent alors utiliser ces pilotes ALSA pour le développement d'API de haut niveau. Cela permet une interaction directe (noyau) avec les périphériques sonores par le biais des bibliothèques ALSA.

Installation

ALSA est un ensemble de modules intégrés au noyau Linux. Par conséquent, une installation manuelle n'est pas nécessaire.

udev détectera automatiquement votre matériel et sélectionnera les pilotes nécessaires au démarrage, par conséquent, votre son devrait déjà fonctionner. Cependant, il se peut que votre son soit initialement coupé. Si c'est le cas, consultez #Réactiver les canaux.

Privilèges de l'utilisateur

Habituellement, les utilisateurs locaux ont la permission de lire le son et de modifier les niveaux du mixeur.

Pour permettre aux utilisateurs distants d'utiliser ALSA, vous devez ajouter ces utilisateurs au groupe audio, mais cela n'est pas recommandé par défaut (consultez la note ci-dessous).

{L'ajout d'utilisateurs au groupe audio permet un accès direct aux périphériques. N'oubliez pas que cela permet aux applications de réserver exclusivement les périphériques de sortie. Cela peut perturber le mixage des logiciels ou le changement rapide d'utilisateur sur les systèmes multipostes. Par conséquent, l'ajout d'un utilisateur au groupe audio n'est pas recommandé par défaut, sauf si vous en avez spécifiquement besoin .}}

Utilitaires ALSA

Installez le paquet . Il contient (entre autre) les utilitaires et . amixer est une commande shell permettant de modifier les paramètres audio, tandis que alsamixer fournit une interface plus intuitive basée sur ncurses pour la configuration des périphériques audio.

Si vous avez besoin du rééchantillonnage de haute qualité, installez le paquet alsa-plugins pour activer upmixing/downmixing et d'autres fonctionnalités avancées.

Compatibilité OSS

Note: Ceci est important si votre application se plaint de l'absence de /dev/dsp ou /dev/snd/seq.

ALSA a la capacité d'intercepter les appels OSS et de les réacheminer à travers ALSA. Cette couche d'émulation est utile, par exemple, pour les anciennes applications qui essaient d'ouvrir et d'y écrire directement des données sonores. Sans OSS ou la bibliothèque d'émulation, sera absent, et l'application ne produira aucun son.

Si vous voulez que les applications OSS fonctionnent avec dmix, installez également le paquet . Chargez ensuite les modules du noyau , et pour activer l'émulation OSS.

Compatibilité avec PulseAudio

vous permet d'utiliser ALSA pour les applications qui ne prennent en charge que PulseAudio pour le son. L'utilisation est simple : 
$ apulse yourapplication

ALSA et systemd

Le paquet est livré avec les fichiers de configuration de l'unité systemd et par défaut.

Ils sont automatiquement installés et activés lors de l'installation (via le lien symbolique fourni par le paquet vers sound.target). Les options sont les suivantes :

  • Lit /var/lib/alsa/asound.state au démarrage et écrit les valeurs mises à jour à l'arrêt, à condition que /etc/alsa/state-daemon.conf n'existe pas. Comme /etc/alsa/state-daemon.conf n'est pas créé sans une action consciente de l'utilisateur, c'est la méthode par défaut.
  • (Re-)Démarre alsactl en mode daemon pour suivre en permanence, et faire persister, les changements de volume, à condition que l'utilisateur ait consciemment créé /etc/alsa/state-daemon.conf.

Évidemment, les deux méthodes s'excluent mutuellement. Vous pouvez opter pour l'une des deux approches en fonction de vos besoins. Pour modifier ces unités, consultez Systemd (Français)#Modifier les unités fournies. Vous pouvez vérifier leur état en utilisant systemctl.

Pour plus d'informations, consultez .

Microprogramme ALSA

Le paquet contient le microprogramme qui peut être requis pour certaines cartes son (par exemple, une Creative SB0400 Audigy2).

et  sont nécessaires pour quelques modèles d'ordinateurs portables plus récents (fin 2019/2020) qui implémentent leurs pilotes avec un microprogramme fourni par le projet Sound Open Firmware.

Réactiver les canaux

Par défaut, ALSA a mis tous les canaux en sourdine. Ceux-ci doivent être réactivés manuellement.

Réactiver le son avec amixer

Réactiver le volume principal de la carte son peut être fait en utilisant amixer :

$ amixer sset Master unmute
$ amixer sset Speaker unmute (haut-parleur désactivé)
$ amixer sset Headphone unmute (désactivation du casque)

Réactiver le son avec alsamixer

Réactiver la carte son peut être fait en utilisant alsamixer :

$ alsamixer

L'étiquette sous un canal indique que le canal est coupé, et indique qu'il est ouvert.

Faites défiler les canaux et avec les touches et et réactivez-les en appuyant sur la touche m.

Utilisez la touche pour augmenter le volume et obtenir une valeur de dB de gain. Le gain se trouve en haut à gauche à côté du champ .

Réactiver le son 5.1/7.1

Pour obtenir un son 5.1 ou 7.1 surround complet, vous devrez probablement réactiver d'autres canaux tels que , , , , (subwoofer) et . (Il s'agit de noms de canaux avec Intel HD Audio, ils peuvent varier selon le matériel utilisé).

Activer le microphone

Pour activer votre microphone, passez à l'onglet Capture avec F4 et activez un canal avec Space. Consultez Advanced Linux Sound Architecture/Troubleshooting#Microphone si le microphone ne fonctionne pas.

Testez vos modifications

Ensuite, testez pour consulter si le son fonctionne :

$ speaker-test -c 2

Changez pour l'adapter à votre configuration de haut-parleurs. Utilisez pour 7.1, par exemple :

$ speaker-test -c 8

Si l'audio est envoyé vers le mauvais périphérique, essayez de le spécifier manuellement avec l'argument .

$ speaker-test -D default:PCH -c 8
accepte les noms de canaux PCM comme valeurs, qui peuvent être récupérés en exécutant la commande suivante :

Si cela ne fonctionne pas, consultez la section #Configuration ou la page Advanced Linux Sound Architecture/Troubleshooting.

Notes supplémentaires

  • Si votre système possède plus d'une carte son, vous pouvez passer de l'une à l'autre en appuyant sur .
  • Pour certaines cartes, la sortie numérique doit être coupée ou désactivée afin d'entendre le son analogique. Pour la Soundblaster Audigy LS, mettez en sourdine le canal marqué .
  • Certaines machines (comme le Thinkpad T61) possèdent un canal qui doit également être réactivé et réglé.
  • Certaines machines (comme un Dell E6400) peuvent également nécessiter que les canaux et soient réactivés et réglés.
  • Si vos réglages de volume semblent perdus après un redémarrage, essayez d'exécuter alsamixer en tant que root.

Configuration

Le fichier de configuration système est /etc/asound.conf, et le fichier de configuration par utilisateur est ~/.asoundrc.

Syntaxe de base

Les fichiers de configuration ALSA suivent une syntaxe simple consistant en des affectations hiérarchiques de valeurs aux paramètres (clés). La syntaxe est également présentée dans .

Assignations et séparateurs

Les affectations définissent la valeur d'une clé donnée. Il existe différents types et styles d'affectation.

Les séparateurs sont utilisés pour indiquer le début et la fin d'une affectation, mais l'utilisation de virgules ou d'espaces est également possible.

Les affectations composées utilisent des accolades comme séparateurs.

Pour faciliter la lecture, il est recommandé d'utiliser le premier style pour les définitions comprenant plus de trois clés.

Les définitions de tableaux utilisent des parenthèses comme séparateurs.

Tout dépend des préférences de l'utilisateur en ce qui concerne les différents styles de configuration, mais il faut éviter de mélanger différents styles. Vous trouverez de plus amples informations sur la configuration de base dans .

Types de données

ALSA utilise différents types de données pour les valeurs des paramètres, qui doivent être définis dans le fichier de configuration de l'utilisateur. Certaines clés acceptent plusieurs types de données, alors que la plupart ne le font pas. Une liste des options de configuration et de leurs exigences respectives en matière de types de données pour les plugins PCM se trouve dans .

Modes d'opération

Il existe différents modes d'opération pour l'analyse des nœuds, le mode par défaut étant la fusion et la création. Si le mode d'opération est soit merge/create soit merge, la vérification du type est effectuée. Seules les affectations de même type peuvent être fusionnées, les chaînes de caractères ne peuvent donc pas être fusionnées avec des entiers. Essayer de définir une affectation simple dans le mode d'opération par défaut à un composé (et vice versa) ne fonctionnera pas non plus.

Préfixes des modes d'opération :

  • "+" -- fusionner et créer
  • "-" -- fusionner
  • "?" -- ne pas remplacer
  • "!" -- remplacer

Utiliser le mode d'opération override, quand c'est fait correctement, est généralement sûr, cependant il faut garder à l'esprit qu'il peut y avoir d'autres clés nécessaires dans un noeud pour un bon fonctionnement.

Exemple de définition du dispositif par défaut à l'aide du nœud "defaults"

En supposant que le noeud "defaults" est défini dans , où "defaults.pcm.card" et sa contrepartie "ctl" ont pour valeur "0" (type integer), l'utilisateur veut définir le périphérique pcm et de contrôle par défaut sur la (troisième) carte son "2" ou "SB" pour une carte son Azalia.

L'utilisation des guillemets doubles ici définit automatiquement le type de données des valeurs comme étant une chaîne de caractères, donc dans l'exemple ci-dessus, la définition de defaults.pcm.!card "2" aurait pour résultat de conserver le dernier périphérique par défaut, dans ce cas la carte 0. L'utilisation des guillemets doubles pour les chaînes de caractères n'est pas obligatoire tant qu'aucun caractère spécial n'est utilisé, ce qui idéalement ne devrait jamais être le cas. Cela peut ne pas être pertinent dans d'autres affectations.

Emboîtement

Parfois, il peut être utile et même plus facile de lire en utilisant l'imbrication dans la configuration.

Réglage de la carte son par défaut via le nœud defaults

Pour mettre en pratique le exemple précédent concernant et defaults.pcm. device en pratique, en supposant que nous avons 2 cartes avec les indices 0 et 1 respectivement et que nous souhaitons simplement changer la carte par défaut pour l'indice 1, conduirait à la configuration suivante dans /etc/asound.conf ou dans ~/.asoundrc spécifique à l'utilisateur pour changer à la fois la carte de lecture et la carte de contrôle du mixeur.

Configuration de l'ordre des index via les options du module du noyau

Si l'ordre de vos cartes son change au démarrage, vous pouvez spécifier leur ordre dans tout fichier se terminant par dans (/etc/modprobe.d/alsa-base.conf est suggéré). Par exemple, si vous voulez que votre carte son mia soit #0 :

Utilisez pour obtenir les modules sonores chargés et leur ordre. Cette liste est généralement tout ce qui est nécessaire pour l'ordre de chargement. Utilisez pour obtenir une liste des périphériques et modules. Cette configuration suppose que vous avez une carte son mia utilisant et une carte (par exemple embarquée) utilisant .

Vous pouvez également fournir un index de pour demander à ALSA de ne jamais utiliser une carte comme carte principale. Les distributions telles que Linux Mint et Ubuntu utilisent les paramètres suivants pour éviter que les pilotes USB et autres pilotes "anormaux" obtiennent l'index  :

/etc/modprobe.d/alsa-base.conf
options bt87x index=-2
options cx88_alsa index=-2
options saa7134-alsa index=-2
options snd-atiixp-modem index=-2
options snd-intel8x0m index=-2
options snd-via82xx-modem index=-2
options snd-usb-caiaq index=-2
options snd-usb-ua101 index=-2
options snd-usb-us122l index=-2
options snd-usb-usx2y index=-2
options snd-pcsp index=-2
options snd-usb-audio index=-2

Ces modifications nécessitent un redémarrage du système.

Consultez également .

Sélectionner le PCM par défaut via la variable d'environnement

Il est probablement suffisant de définir ALSA_CARD comme le nom du périphérique. D'abord, obtenez les noms avec , puis définissez ALSA_CARD sur le nom qui vient après les deux points et avant la parenthèse ; par exemple, si vous avez

card 1 : HDMI [HDA ATI HDMI], device 3 : HDMI 0 [HDMI 0]

alors définissez .

D'autres variables sont également vérifiées dans la configuration globale par défaut . En y recherchant les constructions de la forme vars [ ... ], on obtient le tableau suivant :

Nom de la variableUtilisé par
ALSA_CARDpcm.default , pcm.hw , pcm.plughw , ctl.sysdefault , ctl.hw , rawmidi.default , rawmidi.hw , hwdep.hw
ALSA_CTL_CARDctl.sysdefault , ctl.hw
ALSA_HWDEP_CARDhwdep.default , hwdep.hw
ALSA_HWDEP_DEVICEhwdep.default , hwdep.hw
ALSA_PCM_CARDpcm.default , pcm.hw , pcm.plughw
ALSA_PCM_DEVICEpcm.hw , pcm.plughw
7ALSA_RAWMIDI_CARDrawmidi.default , rawmidi.hw
ALSA_RAWMIDI_DEVICErawmidi.default , rawmidi.hw

Vous pouvez également modifier ce comportement dans votre propre fichier de configuration, de préférence le fichier global (/etc/asound.conf). Ajoutez :

pcm.!default {
   type plug
   esclave.pcm {
       @func getenv
       vars [ ALSAPCM ]
       default "hw:Audigy2"
   }
}

Dans ce cas également, remplacez par le nom de votre appareil. Vous pouvez obtenir les noms avec ou vous pouvez également utiliser des PCM comme surround51. Mais si vous avez besoin d'utiliser le microphone, c'est une bonne idée de sélectionner le PCM full-duplex par défaut.

Maintenant vous pouvez sélectionner la carte son au démarrage des programmes en changeant simplement la variable d'environnement . Cela fonctionne bien pour tous les programmes qui ne permettent pas de sélectionner la carte, pour les autres assurez-vous de garder la carte par défaut. Par exemple, si vous avez écrit un downmix PCM appelé , vous pouvez l'utiliser avec mplayer en utilisant la ligne de commande .

Méthode alternative

Tout d'abord, vous devez trouver la carte et l'identifiant du périphérique que vous souhaitez définir comme valeur par défaut :

Par exemple, la dernière entrée de cette liste a l'ID de carte 2 et l'ID de périphérique 0. Pour définir cette carte par défaut, vous pouvez utiliser le fichier système /etc/asound.conf ou le fichier utilisateur ~/.asoundrc. Vous devrez peut-être créer le fichier s'il n'existe pas. Insérez ensuite les options suivantes avec la carte correspondante.

pcm.!default {
   type hw
   card 2


ctl.!default {
   type hw
   card 2
}
Note: Pour la série U32U d'Asus, il semble que la carte doive être réglée sur 1 pour pcm et ctl

Dans la plupart des cas, il est recommandé d'utiliser des noms de cartes son plutôt que des références numériques. Les noms de cartes sont plus faciles à comprendre, et permettent également de surmonter le problème de l'ordre de démarrage. Par conséquent, l'exemple suivant serait correct pour l'exemple ci-dessus.

pcm.!default {
   type hw
   card Audio
}

ctl.!default {
   type hw
   card Audio
}

Pour obtenir les noms des cartes ALSA valides, utilisez aplay :

Vous pouvez également utiliser cat, qui peut renvoyer des périphériques inutilisés :

Les options 'pcm' affectent la carte et le périphérique qui seront utilisés pour la lecture audio tandis que l'option 'ctl' affecte la carte utilisée par les utilitaires de contrôle comme alsamixer.

Les changements devraient prendre effet dès que vous (re)lancez une application (MPlayer etc.). Vous pouvez aussi tester avec une commande comme aplay.

$ aplay -D default:PCH your_favourite_sound.wav

Si vous recevez une erreur concernant la configuration de votre asound, vérifiez dans la upstream documentation les éventuelles modifications du format du fichier de configuration.

Vérifier que les modules sonores corrects sont chargés

Vous pouvez supposer que udev autodétectera correctement votre son. Vous pouvez le vérifier avec la commande :

Si la sortie est similaire, vos pilotes de son ont été autodétectés avec succès.

Vous pouvez également vérifier que le répertoire /dev/snd/ contient les bons fichiers de périphériques :

Si vous avez au moins les périphériques controlC0 et pcmC0D0p ou similaire, alors vos modules de sons ont été détectés et chargés correctement.

Si ce n'est pas le cas, vos modules de sons n'ont pas été détectés correctement. Pour résoudre ce problème, vous pouvez essayer de charger les modules manuellement :

  • Localisez le module correspondant à votre carte son : ALSA Soundcard Matrix. Le module sera préfixé par 'snd-' (par exemple : ).
  • Chargez le module.
  • Vérifiez les fichiers de périphériques dans /dev/snd. (consultez ci-dessus) et/ou essayez si ou ont une sortie raisonnable.
  • Configurez et pour être chargés au démarrage.

Obtenir une sortie S/PDIF

S/PDIF est une interface audio numérique souvent utilisée pour connecter un ordinateur à un amplificateur numérique (tel qu'un home cinéma avec un son surround 5.1/7.1).

En fonction du shell que vous utilisez, ajoutez la ligne suivante au fichier de configuration de votre shell :

amixer -c 0 cset name='IEC958 Playback Switch' on

Vous pouvez consulter le nom de la sortie numérique de votre carte avec :

$ amixer scontrols

Utilisation d'ALSAEqual (fournit une interface utilisateur)

Installez le paquet alsaequalAUR.

Après avoir installé le paquet, ajoutez ce qui suit à votre fichier de configuration ALSA :

Et vous êtes prêt à changer votre égaliseur en utilisant la commande

$ alsamixer -D equal

Notez que le fichier de configuration est différent pour chaque utilisateur (sauf indication contraire) ; il est enregistré dans . Donc si vous voulez utiliser ALSAEqual avec mpd ou un autre logiciel fonctionnant sous un autre utilisateur, vous pouvez le configurer en utilisant

$ su mpd -c 'alsamixer -D equal'

ou par exemple, vous pouvez créer un lien symbolique vers votre dans son répertoire personnel.

Gestion des états ALSAEqual

Installez le paquet alsaequal-mgrAUR.

Configurez l'égaliseur comme d'habitude avec

$ alsamixer -D equal

Lorsque vous êtes satisfait de l'état, vous pouvez lui donner un nom ("foo" dans cet exemple) et le sauvegarder :

$ alsaequal-mgr save foo

L'état "foo" peut ensuite être restauré ultérieurement avec

$ alsaequal-mgr load foo

Cependant, ceci ne restaure que . Vous devez alors mettre à jour l'égaliseur par .

Vous pouvez donc créer différents états d'égaliseur pour les jeux, les films, les genres musicaux, les applications de VoIP, etc. et les recharger si nécessaire.

Consultez la [page du projet https://xyne.dev/projects/alsaequal-mgr/] et le message d'aide pour plus d'options.

Utilisation de mbeq

mbeq est un égaliseur graphique multibande assez typique.

Installez les paquets alsa-plugins, et si vous ne les avez pas déjà.

Si vous n'avez pas encore créé un fichier ~/.asoundrc ou /etc/asound.conf, créez l'un ou l'autre et insérez ce qui suit :

Rééchantillonnage de haute qualité

Lorsque le mixage logiciel est activé, ALSA est obligé de tout rééchantillonner à la même fréquence (48 kHz par défaut lorsqu'il est pris en charge). Par défaut, il essaiera d'utiliser le convertisseur speexrate pour le faire, et se rabattra sur une interpolation linéaire de basse qualité s'il n'est pas disponible . Ainsi, si vous obtenez une mauvaise qualité sonore à cause d'un mauvais rééchantillonnage, le problème peut être résolu en installant simplement le paquet alsa-plugins.

Pour un rééchantillonnage de qualité encore supérieure, vous pouvez modifier le convertisseur de taux par défaut en ou . Les deux sont suffisamment performants pour que, dans la pratique, le choix de l'un ou l'autre n'ait pas d'importance. L'utilisation du meilleur convertisseur ne vaut généralement pas les cycles CPU supplémentaires qu'il requiert.

Pour changer le convertisseur par défaut, placez le contenu suivant dans votre ~/.asoundrc ou /etc/asound.conf :

/etc/asound.conf
defaults.pcm.rate_converter "speexrate_medium"

Upmixing/downmixing

Upmixing

Pour que des sources stéréo comme la musique puissent saturer un système sonore 5.1 ou 7.1, vous devez utiliser l'upmixing. Dans les temps plus sombres, cette opération était délicate et source d'erreurs, mais aujourd'hui, il existe des plugins qui permettent de s'acquitter facilement de cette tâche. Nous utiliserons le plugin upmix, inclus dans le paquet alsa-plugins.

Ensuite, ajoutez ce qui suit au fichier de configuration ALSA de votre choix (soit /etc/asound.conf ou ~/.asoundrc) :

pcm.upmix71 {
   type upmix
   slave.pcm "surround71
   delay 15
   channels 8
}

Vous pouvez facilement modifier cet exemple pour le mixage ascendant 7.1 en 5.1 ou 4.0.

L'exemple suivant ajoute un nouveau canal PCM que vous pouvez utiliser pour le mixage ascendant. Si vous voulez que toutes les sources sonores passent par ce canal, ajoutez-le par défaut en dessous de la définition précédente, comme suit

pcm.!default "plug:upmix71"

Le plugin permet automatiquement à plusieurs sources de passer par ce canal sans problème, donc le définir par défaut est un choix sûr. Si cela ne fonctionne pas, vous devez configurer votre propre dmixer pour le PCM upmixing comme ceci :

pcm.dmix6 {
   type asym
   playback.pcm {
       type dmix
       ipc_key 567829
       slave {
           pcm "hw:0,0
           canaux 6
       }
   }
}

et utilisez "dmix6" au lieu de "surround71". Si vous rencontrez des sauts ou un son déformé, envisagez d'augmenter la taille du tampon (à 32768, par exemple) ou utilisez un rééchantillonneur de haute qualité.

Downmixing

Si vous voulez downmixer des sources en stéréo parce que vous voulez, par exemple, regarder un film avec un son 5.1 sur un système stéréo, utilisez le plugin , inclus dans le paquet alsa-plugins.

Encore une fois, dans votre fichier de configuration, ajoutez ceci :

pcm.!surround51 {
   type vdownmix
   slave.pcm "default
}
pcm.!surround40 {
   type vdownmix
   slave.pcm "par défaut
}
Note: Ce n'est peut-être pas suffisant pour que le downmixing fonctionne, consultez . Vous devez donc ajouter pcm.!default "plug:surround51" ou pcm.!default "plug:surround40". Un seul plug vdownmix peut être utilisé ; si vous avez 7.1 canaux, vous devrez utiliser surround71 au lieu de la configuration ci-dessus. Un bon exemple, qui comprend une configuration permettant de faire fonctionner à la fois vdownmix et dmix, se trouve dans .

Dmix

Le mixage permet à plusieurs applications de produire du son en même temps. La plupart des cartes son dédiées prennent en charge le mixage matériel, qui est pris en charge par défaut s'il est disponible. Les cartes son intégrées à la carte mère (telles que Intel HD Audio), ne prennent généralement pas en charge le mixage matériel. Sur ces cartes, le mixage logiciel est effectué par un plugin ALSA appelé . Cette fonction est activée automatiquement si le mixage matériel n'est pas disponible.

Pour activer manuellement dmix, ajoutez ce qui suit à votre fichier de configuration ALSA :

Trucs et astuces

Désactivation de l'auto-mute au démarrage

Le mode Auto-Mute peut être configuré au démarrage avec . Par exemple, pour le désactiver :

# amixer -c 0 sset "Auto-Mute Mode" Disabled

Il est également possible d'utiliser l'interface graphique via . Afin de sauvegarder les modifications, utilisez :

# alsactl store

ou

# alsactl daemon

Consultez ALSA et Systemd.

Connexion à chaud d'une carte son USB

Consultez Writing Udev rules for ALSA.

Sortie simultanée

Il se peut que vous souhaitiez diffuser de la musique simultanément sur des haut-parleurs externes connectés via un mini jack et sur des haut-parleurs internes. Pour ce faire, il suffit de réactiver l'élément Auto-Mute en utilisant ou  :

$ amixer sset "Auto-Mute" unmute

puis réactiver d'autres éléments nécessaires, tels que Casque, Haut-parleur, Haut-parleur de basses...

Contrôle du volume au clavier

Mappez les commandes suivantes à vos touches de volume : , , XF86AudioMute.

Pour augmenter le volume :

amixer set Master 5%+

Pour baisser le volume :

amixer set Master 5%-

Pour activer/désactiver le volume :

amixer set Master toggle

Dispositif sonore virtuel utilisant snd-aloop

Vous pourriez vouloir une alternative jack pour créer un dispositif d'enregistrement ou de lecture virtuel afin de mélanger différentes sources, en utilisant le module snd-aloop :

modprobe snd-aloop

Listez vos nouveaux périphériques virtuels en utilisant :

aplay -l

Vous pouvez maintenant par exemple utiliser ffmpeg :

ffmpeg -f alsa -i hw:1,1,0 -f alsa -i hw:1,1,1 -filter_complex amerge output.mp3

Dans la phrase hw:R,W,N, R est le numéro de périphérique de votre carte virtuelle. W doit être réglé sur 1 pour les périphériques d'enregistrement, ou 0 pour la lecture. N est votre périphérique secondaire. Vous pouvez utiliser tous les périphériques virtuels disponibles et lire/arrêter en utilisant des applications comme mplayer :

mplayer -ao alsa:device=hw=1,0,0 fileA
mplayer -ao alsa:device=hw=1,0,1 fileB

Une autre chose que vous pourriez faire avec cette approche, est d'utiliser festival pour générer une voix dans un flux d'enregistrement en utilisant un script comme celui-ci :

#!/bin/sh
echo "$1"|iconv -f utf-8 -t iso-8859-1| text2wave > "_tmp_.wav" ;
mplayer -ao alsa:device=hw=2,0,0 "_tmp.wav" ;
rm "_tmp.wav" ;

Récupération de l'état du pilote

Le paquet contient également la commande , qui peut être utilisée pour recueillir des données détaillées sur le pilote ALSA et l'état de l'espace utilisateur.

Consultez ALSA bug tracking pour plus d'informations.

Reconfiguration des ports d'entrée/sortie

Le paquet contient l'outil , qui peut être utilisé (sur les cartes Intel HDA) pour reconfigurer les ports d'entrée/sortie de la carte son ; par exemple, pour transformer une prise de microphone en prise de casque.

Réinitialisation des codecs

Le pilote ALSA peut reconfigurer complètement les codecs attachés (les parties du système de son qui traitent réellement les flux audio), en faisant :

# echo 1 > /sys/class/sound/card/reconfig

Avant de faire cela, tous les processus utilisant le pilote ALSA (comme Pulseaudio ou JACK) doivent être arrêtés.

Détecter correctement le microphone branché dans un jack 3,5 mm (TRRS) à 4 broches

Sur certains ordinateurs portables modernes, vous pouvez avoir une prise casque 3,5 mm combinée, au lieu de deux prises séparées, qui peuvent ne pas être correctement détectées par défaut. Pour qu'ALSA détecte correctement l'état du plug-in sur votre prise 3.5mm, vous pouvez mettre la ligne suivante dans votre /etc/modprobe.d/alsa-base.conf :

options snd_hda_intel index=0 model=your_model_setting

Pour une liste complète des options à placer dans your_model_setting, consultez HD-Audio Codec-Specific Models ou sa source située à . (fourni par le paquet ).

Testé avec le Gigabyte Aero15 2017 (modèle P65), avec ALC255 et le modèle défini à .

Voir aussi

gollark: Technically, yes, but it is a *hassle*.
gollark: And it's a nightmare to compile.
gollark: Also, *allegedly* Android, but much of it has been transferred into proprietary Google services these days.
gollark: <@!711709735447167008> PostmarketOS, or the other GNU/Linuxes for phones.
gollark: It's probably better than being radiation-poisoned, in any case.
This article is issued from Archlinux. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.