Skip to main content
Si vous n'avez qu'une carte son c'est assez simple de configurer jack. Par contre si pour raison X ou Y nous voulons garder la carte son interne active et même ajouter d'autres cartes son ou un simple périphérique MIDI/audio USB ça peut vite devenir problématique.

Certaines configurations peuvent poser quelques soucis avec des cartes son qui ont tendance à se placer dans l'ordre qu'elles veulent ce qui fait que jack est désagréable avec nous et nous insulte. Donc ce qui suit va nous permettre de lui taper dessus et lui dire qui est le maître à bord. (non mais!)




Fixer l'ordre des cartes-son dans jack


Ceci valable sur Debian et dérivées.

 info
pour fedora et gentoo, si vous avez des infos y'a qu'à les ajouter sur cette page!




Lister les périphériques audio


La commande suivante va vous permettre de lister le matériel audio :
Copy to clipboard
cat /proc/asound/modules


exemple :
Copy to clipboard
xxx@Master-Host:~$ cat /proc/asound/modules 0 snd_hdsp 1 snd_ice1712 2 snd_usb_audio 4 snd_hda_intel


Sachant qu'avant que l'ordre des cartes soit fixé, elles n’apparaissaient pas dans cet ordre ... mais plutôt comme ceci :
Copy to clipboard
xxx@Master-Host:~$ cat /proc/asound/modules 1 snd_hda_intel 2 snd_usb_audio 3 snd_ice17120 4 snd_hdsp

et les cartes 2/3/4 n'apparaissaient jamais dans le même ordre non plus (le truc qui énerve c'est vrai).

Correspondance des cartes :
Copy to clipboard
xxx@Master-Host:~$ cat /proc/asound/modules 1 snd_hda_intel => Carte intégrée 2 snd_usb_audio => une petite carte son usb basique 3 snd_ice17120 => une M-Audio 2496 4 snd_hdsp => Une RME HDSP




Modifier ~.alsa-base.conf


 info
Dans le bénéfice du doute faites une copie du fichier avant toute modification.


Sur ubuntu :
Copy to clipboard
sudo gedit /etc/modprobe.d/alsa-base.conf


Sur debian en super utilisateur :
Copy to clipboard
pluma /etc/modprobe.d/alsa-base.conf


Celui-ci provient d'une TangoDebian :
Copy to clipboard
# autoloader aliases install sound-slot-0 /sbin/modprobe snd-card-0 install sound-slot-1 /sbin/modprobe snd-card-1 install sound-slot-2 /sbin/modprobe snd-card-2 install sound-slot-3 /sbin/modprobe snd-card-3 install sound-slot-4 /sbin/modprobe snd-card-4 install sound-slot-5 /sbin/modprobe snd-card-5 install sound-slot-6 /sbin/modprobe snd-card-6 install sound-slot-7 /sbin/modprobe snd-card-7 # Cause optional modules to be loaded above generic modules install snd /sbin/modprobe --ignore-install snd && { /sbin/modprobe --quiet snd-ioctl32 ; /sbin/modprobe --quiet snd-seq ; : ; } install snd-rawmidi /sbin/modprobe --ignore-install snd-rawmidi && { /sbin/modprobe --quiet snd-seq-midi ; : ; } install snd-emu10k1 /sbin/modprobe --ignore-install snd-emu10k1 && { /sbin/modprobe --quiet snd-emu10k1-synth ; : ; } # Keep snd-pcsp from beeing loaded as first soundcard options snd-pcsp index=-2 # Keep snd-usb-audio from beeing loaded as first soundcard options snd-usb-audio index=-2 # Prevent abnormal drivers from grabbing index 0 options bt87x index=-2 options cx88_alsa index=-2 options snd-atiixp-modem index=-2 options snd-intel8x0m index=-2 options snd-via82xx-modem index=-2


Une fois modifié :
Copy to clipboard
# autoloader aliases install sound-slot-0 /sbin/modprobe snd-card-0 install sound-slot-1 /sbin/modprobe snd-card-1 install sound-slot-2 /sbin/modprobe snd-card-2 install sound-slot-3 /sbin/modprobe snd-card-3 install sound-slot-4 /sbin/modprobe snd-card-4 install sound-slot-5 /sbin/modprobe snd-card-5 install sound-slot-6 /sbin/modprobe snd-card-6 install sound-slot-7 /sbin/modprobe snd-card-7 # Cause optional modules to be loaded above generic modules install snd /sbin/modprobe --ignore-install snd && { /sbin/modprobe --quiet snd-ioctl32 ; /sbin/modprobe --quiet snd-seq ; : ; } install snd-rawmidi /sbin/modprobe --ignore-install snd-rawmidi && { /sbin/modprobe --quiet snd-seq-midi ; : ; } install snd-emu10k1 /sbin/modprobe --ignore-install snd-emu10k1 && { /sbin/modprobe --quiet snd-emu10k1-synth ; : ; } # Keep snd-pcsp from beeing loaded as first soundcard options snd-pcsp index=-2 # Keep snd-usb-audio from beeing loaded as first soundcard # options snd-usb-audio index=-2 # Prevent abnormal drivers from grabbing index 0 options bt87x index=-2 options cx88_alsa index=-2 options snd-atiixp-modem index=-2 options snd-intel8x0m index=-2 options snd-via82xx-modem index=-2 # My config options snd-hdsp index=0 options snd-ice1712 index=1 options snd-usb-audio index=2,3 options snd-hda-intel index=4


Pour mon usage personnel, j'ai organisé la ligne suivante de la sorte afin que si besoin était, je puisse ajouter un autre périphérique USB mais en MIDI et que l'ordre reste le même.
Copy to clipboard
options snd-usb-audio index=2,3


 attention
Sur la version AV Linux soyez prudent car c'est plus complexe du fait du loopback.
Je ne saurais qu'être insistant en vous conseillant de faire une copie avant toute intervention sur ce fichier .




Vérifications


Vous faites un petit redémarrage suivi d'une petite vérification :
Copy to clipboard
cat /proc/asound/modules


La logique voudrait que tout soit bien à sa place ?
Copy to clipboard
xxx@Master-Host:~$ cat /proc/asound/modules 0 snd_hdsp 1 snd_ice1712 2 snd_usb_audio 4 snd_hda_intel


Si tel est le cas, un petit :
Copy to clipboard
alsactrl store

suivi d'un redémarrage fixera le tout une bonne fois pour toutes.



Régler jack


Ensuite on fonce régler jack et lui dire "maintenant voyons voir si tu va me faire tourner chèvre longtemps" 😁 On choisi la carte hx:0 ou hw:1, suivi d'une sauvegarde on ferme jack et redémarrage pour vérifier ... et ... ?

Et quoi ?



Dernière vérification


Bin, logiquement Jack retrouve le chemin de la carte son et surtout l'ordre des cartes reste le même et cela même si vous retirez la carte USB entre deux .

Voilà!!


Notes


Si vous souhaitez fixer l'ordre de plusieurs interfaces identiques, ou même de plusieurs interfaces utilisant le même module-noyau, il est probable que ça ne fonctionnera pas tel que décrit ci-dessus. Ceci parce que cette page propose une méthode de "fixation" de l'ordre des périphériques audio basée sur la "fixation" de l'ordre des modules-noyau utilisés par ces périphériques. Si vous utilisez 2 interfaces utilisant le même module-noyau, alors rien ne garantit que ces 2 interfaces resteront dans le même ordre.

Pour pouvoir quand même fixer l'ordre des interfaces, il vous faudra utiliser une ruse de sioux décrite dans le paragraphe "Remarque" - premier point que vous pourrez probablement placer dans le fichier alsa-base.conf.


Lire également le fil de discussion Deux cartes son M-Audio Delta 1010 qui contient de nombreux éléments de compréhension.



[+]

Collaborateur(s) de cette page: olinuxx et utilisateur_anonyme2 .
Page dernièrement modifiée le Lundi 26 mars 2018 21:22:22 par olinuxx.