Jack Logo

Avez vous déjà eu envie d’envoyer la sortie audio d’un programme vers un autre? Ou alors de prendre cette sortie et de l’envoyer vers deux autres programmes et finalement enregistrer le résultat dans le programme d’origine? Si c’est le cas, JACK est ce que vous cherchez.

JACK est un serveur audio basse latence qui permet de connecter différentes applications sur un périphérique audio ainsi que de partager le son entre eux. Ses client peuvent tourner à part (comme des programmes normaux) ou au sein du serveur audio (comme des plugins).

JACK est destiné à l’utilisation professionnelle et est axé sur deux points: exécution synchrone de tous les clients et faible latence.

Installation

Si votre distribution n’intègre pas déjà JACK, il va falloir bien entendu l’installer. Pour en profiter pleinement, il vous faudra un noyau linux temps réel (optionnel mais recommandé).

sudo apt-get install jackd qjackctl
sudo apt-get install linux-image-rt linux-headers-rt

Note Importante:

Redémarrez en prenant soin de choisir Linux-x.x.xx-xx-rt comme noyau quand grub apparaît.

Configuration

tapez Alt+F2 et lancez qjackctl (ou fouillez les menu à la recherche de Jack Control)

Cliquez sur le bouton paramètres (Setup) à droite, et dans le dialogue qui s’affiche:

1. Sélectionnez votre carte son dans le menu déroulant
2. Activez le noyau temps réel
3. Activez le monitoring
4. Changez Frames/Period a un niveau inférieur pour obtenir la latence la plus faible possible. Certaines carte peuvent supporter un forte latence, d’autre pas. Cette valeur est a configurer selon vos besoins et votre matériel.

Dans l’onglet « divers » ou « Misc » cochez les cases suivante pour un peu plus de praticité:

Cliquez sur OK pour appliquer les paramètres et fermer le dialogue puis cliquez sur Start pour lancer le serveur.

Maintenant il va falloir chasser les XRuns…

Les XRUNSs apparaissent quand il y a trop ou pas assez de données dans le buffer.

Si vous avez des XRUNS, l’icône de JACK dans le tray et le « 0(0) » dans qjackctls vont virer au rouge, cela arrive quand vous ouvrez un programme ou quand vous ajoutez un plugin. Tant que ça n’arrive pas pendant la lecture, le processing ou l’enregistrement ce n’est pas trop grave.

Tout ce que vous avez à savoir c’est que les XRUNS saimal, saitrètrèmal. Vous pouvez réduire le nombre de XRUNS en augmentant la valeur de Frames/Periods dans les paramètres.

Utilisation

Maintenant que JACK tourne comme il faut, lancez un programme, choisissez-y JACK comme serveur (si cette option existe) et lancez un son. Pas de son!

C’est normal, il faut relier votre programme à ALSA, à nouveau dans qjackctl, cliquez sur « Connect » et reliez la sortie du programme à une entrée ALSA. Miracle!

Maintenant vous pouvez connecter plein de programmes les uns aux autres sans problème. Mais attentions aux XRUNS!