Historique: Alsa - le fichier asoundrc
Aperçu de cette version: 37
Table des matières
Les (mystérieux) fichiers de configuration et les PlugIns
ALSA peut être configuré pour toutes sortes d'utilisations un peu avancées et possède un système de greffons. Ceux-ci ne sont pas graphiques, c'est à dire que vous n'allez pas cocher tel ou tel greffons, ils sont utilisables/configurable dans les fichiers de configuration d'ALSA par un système d'écriture. Les informations à ce sujet étant relativement rares et pas toujours très claires, nous allons essayer de dégrossir ceci dans ces page.Avant de lire cette page, soyez sûr de lire celle ci qui vous donnera les bases pour la compréhension du fichier .asoundrc.
Les fichiers de configuration d'ALSA
Avant tout, voyons où se trouvent ces fichiers de configurations et quels sont leurs différents rôles.Il y a 2 fichiers de configuration pour les pilotes d'ALSA (ses pilotes et ses modules) :
- un fichier pour les utilisateurs,
- et un fichier pour les réglages globaux du système.
Aucun de ces fichiers n'est indispensable pour qu'ALSA fonctionne correctement, la plupart des applications fonctionneront sans cela. La principale utilisation de ces fichiers est de permettre d'ajouter des fonctionnalités telles que du routage ou de la conversion de fréquence d'échantillonnage.
➡️ Voir également : Informations tirées de http://alsa.opensrc.org/.asoundrc.
Emplacements des fichiers de configuration suivant les distributions :
- Pour TangoStudio, basé sur Ubuntu 10.04, les fichiers de configuration sont :
- utilisateur simple :
/home/olinuxx/.asoundrc, - super utilisateur :
/root/.asoundrc.
- utilisateur simple :
Note : à priori, certains systèmes utilisent, pour les réglages globaux, le fichier
/etc/asound.conf.Utiliser deux cartes en même temps
Voir le lien suivant (sur le site) : ALSA_MultiCartesRouter un flux ALSA vers JACK
Installation
Le PlugIn JACK est distribué dans le paquetalsa-lib de la distribution d'ALSA (il peut avoir un nom différent de alsa-lib, par exemple libasound2 ou libasound2-plugins chez Ubuntu). Pour savoir s'il est installé, vous pouvez par exemple rechercher le fichier libasound_module_pcm_jack.so sur votre système. Sinon, il se compile très facilement à la main. Bien entendu, il faut que JACK et ALSA soient installés.Configuration
La configuration suivante crée un périphérique virtuel appelé "jackplug" qui crée une connection à JACK lorsqu'on l'utilise.
pcm.jackplug {
type plug
slave { pcm "jack" }
}
pcm.jack {
type jack
playback_ports {
0 alsa_pcm:playback_1
1 alsa_pcm:playback_2
}
capture_ports {
0 alsa_pcm:capture_1
1 alsa_pcm:capture_2
}
}
Test
|
On pourra alors indiquer à nos applications ALSA d'utiliser ce périphérique. Par exemple avec aplay on tape :Copy to clipboard
Si on regarde avec qJackCtl, on constate bien qu'une paire de ports de sortie est apparue, nommé d'après le numéro de processus de l'application : |
|
Si on souhaite utiliser ce périphérique virtuel comme périphérique par défaut on peut l'indiquer dans
.asoundrc de la façon suivante :
pcm.!default {
type plug
slave { pcm "jack" }
}
Il n'est alors plus nécessaire de spécifier pour chaque application le périphérique à utiliser.
Attention toutefois, j'ai rencontré des problèmes avec certaines application, notamment
mplayer qui se bloque.Faire du ré échantillonnage
à compléter... ...on peut aussi utiliser Audacity ou Rezound.Faire du mixage software
Beaucoup de cartes son n'offrent pas de mixage hardware (=mixage matériel) et ne permettent donc pas d'être utilisées simultanément par plusieurs applications. On doit alors recourir au mixage software (=mixage logiciel) : la partie mixage sera effectuée par un logiciel qui aura l'accès exclusif à la carte.Sous Linux, les serveurs son habituels offrent ces possibilités de mixage logiciel mais, pour des raisons de latence, on préfèrera l'utilisation de JACK.
Un PlugIn a été développé afin d'offrir nativement cette possibilité de mixage logiciel dans ALSA : il s'agit de Dmix (pour "direct mixing").
Il peut être combiné en tant que PlugIn ALSA par défaut, offrant en théorie cette possibilité de mixage logiciel à toute application compatible ALSA. Dans la pratique, seules certaines applications en profitent !
plughw
"plughw" est une sorte d'abstraction qui étend "hw" et permet d'utiliser sa carte avec plus d'applications. Le "problème" de certaines cartes professionnelles est que leur conception déroute certains logiciels qui s'attendent à trouver une bête sortie stéréo en 44.1khz/16bit. "plughw" permet donc de présenter à ces logiciels une sortie virtuelle standard.Notes
Sous certains distributions (ex: Gentoo), il y a un paquetalsa-plugins qu'il faut installer.Ressources : la documentation officielle des plugins d'ALSA : http://www.alsa-project.org/alsa-doc/alsa-lib/pcm_plugins.html.