Chargement...
 
Skip to main content

Historique: Jack

Aperçu de cette version: 381 (courant)



JACK (Jack Audio Connection Kit) est un serveur son de qualité professionnelle permettant l'interconnexion et mélange de sources et destinations audio, MIDI et leur transport sans ajout de latence.

JACK est considéré comme une interface de programmation ayant plusieurs implémentations.
À l'origine il y avait JACK1, puis certains développeurs ont travaillé sur des versions améliorées avec chacune leur nom de code (par exemple tschack, jackdbus ou jackdmp). Toutes ces nouvelles fonctionnalités font maintenant partie de JACK2.
Avec l'arrivée de PipeWire, une troisième implémentation de JACK a vu le jour. Elle s'appelle pipewire-jack.

JACK1 et JACK2 continuent d'être développées en parallèle et sont quasiment interchangeables.
C'est JACK2 qui est installé par défaut sur les distributions Linux (JACK1 restant disponible).
Dans le futur, pipewire-jack pourrait être installée en lieu et place des deux autres implémentations.

Dans cette page, nous ne parlons que de JACK. Pour pipewire-jack, regardez la page PipeWire.
Pour des raison de simplicité, peut importe la version utilisée, par la suite on parlera simplement de JACK.








Informations


Site internet officiel : http://jackaudio.org/ Image .
Version actuelle : 0.126.0 du 2022 01 15 (jack1).
Version actuelle : 1.9.22 du 2023 02 02 (jack2).
Support : ALSA, FFADO.
Développeurs : Paul Davis en est l'initiateur, et énormément d'autres personnes y ont participé depuis.
Liste de développement : https://lists.linuxaudio.org/listinfo/jackaudio/ Image .
Canal IRC : #jack @ irc.libera.chat Image
Changelog : voir la section "news" de la page d'accueil du site officiel.



Description


JACK est un aspect central de la MAO sous Linux. Avec lui tout est modulaire et le lien entre les composants audio est assuré par JACK, le serveur son. Pour plus de détails sur ce point, allez voir la page Débuter - la MAO et GNU-linux.

Le serveur son fait le lien entre les logiciels et le pilote de la carte son. Il sert principalement à mixer les différentes sources audio et à les synchroniser entre elles.
JACK n'est pas le seul serveur son mais il est optimisé pour la basse latence, la stabilité et la qualité audio. C'est le serveur son de choix dès qu'on s'attaque sérieusement à la MAO sous Linux, c'est-à-dire dès qu'on utilise plus d'un logiciel à la fois.
Pour information, JACK existe maintenant pour Windows et macOS.

Caractéristiques
Connexions illimitées : JACK permet de connecter n'importe quelle source à n'importe quelle destination, comme dans un studio il est possible de connecter un synthé à 3 modules d'effet avant l'enregistreur.
Temps réel : JACK en lui-même n'apporte aucune latence supplémentaire (voyez la question "Does using JACK add latency?" dans la faq du site officiel Image ). De plus, il est capable de tirer bénéfice des possibilités du noyau GNU/Linux pour fonctionner en mode temps-réel, ce qui permet de travailler avec une latence garantie.
Support matériel : JACK supporte les systèmes ALSA, OSS, FFADO, Portaudio, ASIO et CoreAudio. Toutes les interfaces audio supportées par ces systèmes pourront donc être utilisées directement et de la même façon au niveau utilisateur avec JACK.
★ Jack-transport : synchronisation de la tête de lecture des logiciels (enregistreurs, séquenceurs...) compatibles.
★ Réseau : JACK permet également une liaison audio de plusieurs ordinateurs par le réseau.
★ Support communautaire : Jack est devenu un standard reconnu par un grand nombre de programmes qui dépassent même le champ de la MAO (lecteur multimédia, montage vidéo, etc.).



Sommaire





Utilisation


La fonction première de JACK c'est le routage, c'est-à-dire connecter les entrées et sorties d'applications compatibles pour transmettre des signaux de deux types :
  • audio : transmets tout ce qui est signal sonore
  • MIDI : transmets toutes les informations MIDI, en particulier JACK-MIDI mais aussi Alsa - MIDI grâce au pont a2jmidid.
Le tout en quelques clics et sans redémarrer les applications !
Un même signal peut être envoyé simultanément à travers plusieurs entrées ou sorties, avec pour seules contraintes les performances de votre système.


Les interfaces graphiques


Pour lancer et gérer JACK au travers d'une interface graphique utilisateur, vous passerez forcément par l'une de ces applications : les gestionnaires de connexions Audio et MIDI.

Autres outils


Les jack-tools : petits outils

Jack Transport


Cette fonction intégrée à JACK permet de synchroniser les différentes applications compatibles, pour permettre aux boutons lecture, retour au début, etc... d'interagir de façon simultanée d'un logiciel à l'autre, mais également de placer "la tête de lecture" au même endroit dans tous ces logiciels et de modifier le tempo.
Cela permet par exemple de piloter un enregistrement depuis n'importe quel programme, et de supprimer les problèmes de "calage".
Pour plus d'infos voir la page Jack-Transport.

Jack session


jack_session est une façon d'implémenter la gestion de session dans les gestionnaire de session audio.
Pour plus d'infos voir la page Jack-session.


Réseau


Jack en réseau :



Manipulations avancées


La dénomination "Jack" peut s'appliquer à plusieurs choses :
jackd ("jack daemon") est le serveur son lui-même, c'est le programme qu'il vous faudra lancer avant tout autre application audio
libjack ("jack library") est une bibliothèque de fonctions (de code) que les toutes les applications audio doivent utiliser pour être compatibles avec le serveur son et communiquer entre elles (utile aux développeurs seulement)
qjackctl ("Qt jack control") est un logiciel tierce mais fourni par défaut par la plupart des distributions pour lancer et contrôler jackd graphiquement.


Router d'autres serveurs son




Multiples cartes son




Le temps-réel

Le watchdog de Jack

Le watchdog de Jack (chien de garde ou garde fou) est un utilitaire lançé automatiquement par Jack lorsqu'on utilise l'option temps réel. Il permet de surveiller le bon déroulement des opérations de Jack et des applications audio et d'arrêter celles-ci en cas de problème, car en mode Temps-réel un logiciel devenu fou peut bloquer complètement une machine.
Le watchdog possède une priorité supérieure de 10 points à la priorité fixée pour Jackd, il vous faudra donc veiller à laisser une marge suffisante entre la priorité maximum et la priorité assignée à jack.


Liens :



Installation et configuration




Craquements et autres bruits parasites avec Jack


Sur les distributions qui ne sont pas tournées vers la MAO, il est fort à parier qu'un noyau basse-latence ne soit pas installé ou bien que lors d'une mise à jour de votre distribution le noyau soit remplacé par un noyau "générique". Dans ce cas, il faut changer le noyau pour un basse-latence ou un temps-réel.

Éventuellement un
Copy to clipboard
sudo dpkg-reconfigure -p high jackd




Divers


Aide :




[+]


Notes de travail


Pour aller beaucoup plus loin
La latence de jack est exacte et non fluctuante, donc on peut la déduire sans soucis. Voici un lien en anglais sur ces questions de latence. C'est un document qui explique comment synchroniser au sample près sous linux : http://cluster.inf-ra.uni-jena.de/~adi/icimt10.pdf. (note : si quelqu'un se fane se document et a envie de faire une page sur LinuxMAO, merci devenir le signaler dans le forum : "Les articles de LinuxMAO".

Historique

Avancé
Information Version
Lundi 31 octobre 2011 09:50 pianolivier +support ffado 281
Afficher
Mercredi 19 octobre 2011 20:23 pianolivier mise en page, paragraphe "Alternatives" 280
Afficher
Mercredi 19 octobre 2011 20:19 pianolivier +lien jackdbus 279
Afficher
Samedi 15 octobre 2011 20:05 pianolivier changelog 278
Afficher
Mercredi 28 septembre 2011 18:37 pianolivier +lien ((log de jack)) 277
Afficher
Mercredi 14 septembre 2011 18:27 pianolivier 276
Afficher
Mercredi 14 septembre 2011 18:27 pianolivier +2 alias 275
Afficher
Mercredi 14 septembre 2011 13:02 olinuxx alias 274
Afficher
Dimanche 11 septembre 2011 18:18 olinuxx mise en page 273
Afficher
Dimanche 11 septembre 2011 11:32 pianolivier mise en page 272
Afficher
Jeudi 09 juin 2011 20:38 pianolivier changelog 271
Afficher
Samedi 28 mai 2011 23:27 pianolivier 270
Afficher
Jeudi 14 avril 2011 20:25 pianolivier ajout d'une section changelog 269
Afficher
Vendredi 11 février 2011 22:21 olinuxx 268
Afficher
Vendredi 11 février 2011 14:27 olinuxx 267
Afficher
Mardi 28 décembre 2010 22:30 olinuxx min -> maj 266
Afficher
Mardi 28 décembre 2010 21:49 pianolivier ajout de mention(s) de compatibilité dans § Info 265
Afficher
Jeudi 16 décembre 2010 06:35 olinuxx 264
Afficher
Jeudi 16 décembre 2010 06:23 olinuxx +pulseaudio vers jack 263
Afficher
Samedi 11 décembre 2010 21:26 olinuxx + alsa_in et alsa_out 262
Afficher
Dimanche 28 novembre 2010 21:42 olinuxx + tschack 261
Afficher
Mercredi 24 novembre 2010 00:13 olinuxx lien interne serveur son 260
Afficher
Lundi 08 novembre 2010 20:19 olinuxx 259
Afficher
Lundi 08 novembre 2010 20:16 olinuxx pour aller beaucoup plus loin 258
Afficher
Samedi 06 novembre 2010 21:13 olinuxx jack_capture 257
Afficher
Samedi 06 novembre 2010 20:56 olinuxx + Jack-Transport 256
Afficher
Mardi 19 octobre 2010 19:54 olinuxx 255
Afficher
Samedi 25 septembre 2010 00:13 olinuxx nom line rigolo 254
Afficher
Samedi 25 septembre 2010 00:12 olinuxx lien sonore 253
Afficher
Jeudi 16 septembre 2010 17:18 olinuxx mise en forme 252
Afficher
Jeudi 16 septembre 2010 17:17 olinuxx 251
Afficher
Jeudi 16 septembre 2010 17:17 olinuxx 250
Afficher
Jeudi 16 septembre 2010 17:17 olinuxx 249
Afficher
Jeudi 16 septembre 2010 17:17 olinuxx 248
Afficher
Jeudi 16 septembre 2010 17:16 olinuxx les différents serveurs son 247
Afficher
Jeudi 16 septembre 2010 16:31 olinuxx mise en forme 246
Afficher
Jeudi 16 septembre 2010 16:28 olinuxx Jack en lignes de commande 245
Afficher
Vendredi 10 septembre 2010 15:42 olinuxx passage aux variables de version + mise en cohérence page logiciel 244
Afficher