Skip to main content

Historique: QJackctl - configuration

Aperçu de cette version: 91



Avant-propos : cette page vise documenter les possibilits de rglages de jack avec qjackctl.
Avant de lancer Jack (en appuyant sur le Dmarrer, ou play, de qJackCtl), il est prfrable de vrifier la configuration gnrale : bouton "Rglage..." (ou "setup").
Pour les presss, il existe un tuto facile : Jack, premier lancement.
Pour les moins presss, nous allons dtailler le contenu des 4 onglets ci-dessous.




Onglet Settings

Sans doute le plus important. C'est l que vous rglerez les paramtres pour Jack.

Qjackctl : fentre Setup, onglet Settings
Qjackctl : fentre Setup, onglet Settings

Section "Preset Name"

Il vous est possible d'enregistrer plusieurs valeurs de rglage que vous pourrez retrouver rapidement par le menu preset name
Les cas o vous pouvez avoir plusieurs valeurs pr-enregistres sont plus nombreux qu'il n'y parait :
  • ceux o vous utilisez Jack pour couter de la musique en travaillant avec votre traitement de texte, dans ce cas vous n'aurez pas besoin par exemple d'immobiliser toutes les ressources de votre systme pour privilgier la faible latence de votre noyau
  • ceux o vous souhaitez travailler en 44100 Hz et ceux o vous souhaitez travailler en 96000 Hz chacune de ces configurations pouvant amener des rglages particuliers.
  • ceux o vous souhaitez travailler avec une carte son et ceux o vous souhaitez travailler avec l'autre.
Un conseil qui vaut ce qu'il vaut, ayez toujours une configuration prte l'emploi dans Jack comme dans Ardour, car au moment d'enregistrer entre la table de mixage prparer, les alimentations fantmes que vous aurez oubli de dclencher et les mille autres tracas, vous n'aurez pas envie de retrouver ttons les bonnes valeurs de votre couche Jack.

Section "Server"

  • Server Path : Doit tre rgl sur Jackd (les valeurs jackstard et jackrealtime concernaient des patchs ncessaires dans le noyau 2.4, et en principe vous tes en noyau 2.6)
  • Driver : Le pilote ALSA qu'il est recommand de slectionner ici. Pour information : sous GNU/Linux, il y a deux drivers audio : ALSA et OSS. Avec le choix d'ALSA, Jack va tester la meilleure rsolution possible et travailler avec (sauf si on active le forcage 16 bits dans la colonne de gauche)). Si on, choisi OSS, Jack ne fait pas de test et c'est la qu'intervient le 16 bits de la colonne du milieu (pour rgler en 16, 32 ou 64 bits).

Colonne de gauche :

  • Realtime: activer absolument. Il n'est pas ncessaire d'avoir un noyau 'temps rel" pour cocher cette option. Elle affichera le symbole "RT" sur l'cran de la fentre principale. Pour permettre jack de fonctionner en mode realtime / temps rel consulter la page PAM.
  • No Memory lock: A dsactiver pour profiter pleinement des capacits de jack. ( plus d'infos sur le memlock )
  • Unlock Memory: activer si vous souhaitez dbloquer l'accs en mmoire des bibliothques de fonctions de GTK+, QT, FLTK (fonctions graphiques) et Wine. ( plus d'infos sur le memlock )
  • Softmode : activer lors d'une utilisation non Realtime/temps-rel : rend jack moins enclin dconnecter les ports qui ne rpondent pas au quart de tour.
  • Monitor: Crer un port de sortie stro supplmentaire pour le Monitoring.
  • Force 16bits: activer si votre carte n'est pas capable de fonctionner avec une valeur plus importante, pour viter que jack teste chaque fois les modes 32 et 24 bits ... et peut-tre envisager l'achat d'une carte plus adapte la MAO 😁.
  • Verbose messages: activer en cas de problme pour ajouter des dtails au log de la fentre messages.
  • MIDI driver: Choix Conseill : none. //si quelqu'un plus d'infos ce sujet...

Colonne du milieu :

  • Priority : Utilise lorsque le mode temp-rel est activ, cette option permet de rgler le niveau de priorit de Jack par rapport aux autres applications audio temps-rel.
    Elle ne doit pas tre trop leve car certaines applications audio ont besoin d'une priorit suprieure celle de Jack, dont l'utilitaire de surveillance jack_watchdog qui se lance automatiquement avec une priorit suprieure de 10 points.
    Typiquement on utilisera une valeur comprise entre 50 et 80, sur une chelle dfinie lors de la configurations du temps-rel pour les applications sur votre systme.
  • Frames/Period : ce facteur influence directement la latence (c'est d'ailleurs un des facteurs essentiels). La valeur permettant d'obtenir la latence la plus basse possible sans Xruns dpendra de votre configuration et en particulier des capacits de votre carte son.
    Une frame en anglais est une trame en franais. Une trame audio reprsente 1 chantillon par canal. Par exemple, si l'on traite une trame d'un signal compos de 6 canaux audio, ou un chantillon du mme signal audio sur 6 canaux, jackd aura trait 6 chantillons au total.
    Frames/period (ou trame par priode) reprsente les trames audio par cycle de traitement. Par exemple, si vous avez 64 frames/period, la taille du buffer (tampon) par canal est de 64 chantillons.
  • Sample Rate : est un champ trs important c'est ici que vous dterminer la frquence d'chantillonnage. Ce facteur influence galement la latence. L encore, votre matriel dterminera les choix possibles, une frquence plus leve permettant de travailler avec une meilleure qualit sonore. En tous cas c'est ici qu'est fait ce rglage et nullement dans Ardour. Pour en savoir plus propos de la frquence d'chantillonnage, consulter aussi cette page.
  • Period/Buffer : Ce facteur influence galement la latence. La valeur de "2" est habituelle (pour les interfaces USB, voir aussi le paragraphe "rglage de la latence" plus bas).
    Period/buffer reprsente combien de priodes sont l (dans windows, une priode est appele plus souvent un "buffer" (tampon)). Mais dans un rgime de double tampon typique vous avez par exemple 2 tampons combins dans un seul bloc de mmoire. Et dans ALSA, ce tampon combin est le "buffer" et les blocs individuels de mmoire sont appels periods (priodes). (Cette terminologie est un peu confuse... la page de man de jackd contient aussi des infos l-dessus, mais il faut s'accrocher.)
    Ainsi, avec une valeur de period/buffer de deux, une priode est la premire moiti du tampon et l'autre priode est la deuxime moiti du tampon.
  • Word Length, Si vous utiliser le pilote OSS, Jack ne fera pas le test de meilleure performance qu'il sait faire avec ALSA et vous pourrez y rgler 16, 32 ou 64 bits.
  • Wait (usec),
  • Channel : Pour PortAudio
  • Port Maximum : par dfaut 128 cette valeur peut tre porte 256 si vous avez un grand nombre de connexions jack... sans quoi vous aurez la surprise de constater qu'Ardour vous lchera. Un grand nombre de connexions Jack ne veut pas dire un grand nombre de pistes mais bien de raccordements dans Jack.
  • Timeout (msec) : cette valeur est de 500 par dfaut. Elle sera augmenter si Jackd exclu des logiciels cbls dans la section "Audio" de la fentre des connexions lorsque ceux-ci sont trop longs rpondre. a peut tre le cas par exemple lors de l'utilisation de vst gourmands via VstHost sur un pc peu performant.

Colonne de droite :

  • Interface est dans le cas prsent hw:0 mais il peut tre hw:1 si vous avez deux cartes ou mme hw:0,0 ou hw:0,1 si votre carte dispose par exemple d'entres analogiques et digitales et que les deux assignations se font avec cette convention. Le menu droulant ne propose que trois choix possibles (default, hw:0 et hw:1), mais vous pouvez parfaitement entrer autre chose la main (utile si vous avez plus de 2 cartes son).
  • Audio : permet de choisir entre les modes "Capture Only" (enregistrement uniquement), "Playback Only" (lecture uniquement) et "Duplex" (lecture + enregistrement).
  • Input Channels : c'est ici que vous donnez le nombre de voies en entre de votre interface audio-numrique.
  • Output Channels : c'est ici que vous donnez le nombre de voies en sortie de votre interface audio-numrique.
  • Input Latency et Output Latency servent juste rajouter une latence supplmentaire interne (pour synchroniser avec un autre dispositif dont on connat la latence propre par exemple).
  • Latency : latence calcule en fonction de vos diffrents rglages.
Copy to clipboard
. [periods/buffer]*[frames/periods] Latence = --------------------------------- [sample rate]


La latence est un paramtre important en MAO qui doit tre maintenu un niveau le plus faible possible.

Quelques rappels gnraux:
  • Lancez Jack en mode "Real-time" et avec une forte priorit (voir paragraphe plus haut).
  • Jouez sur les valeurs de "Frames/Period", "Sample Rate" et "Periods/Buffer" pour ajuster une latence la plus basse possible. Si des craquements ou des Xruns trop nombreux apparaissent, rajustez les paramtres pour augmenter un peu la latence. Des bonnes valeurs pour dmarrer sont:
Copy to clipboard
Frames/Period 256 Sample Rate selon votre carte audio 44100 ou 48000 Hz Periods/Buffer 2 ou 3

  • Notez que la latence rsultant de vos diffrents rglages est indique en bas droite de l'onglet "Settings".
  • C'est avec un noyau patch "temps rel" que vous obtiendrez les meilleurs rsultats : d'abord si votre distribution inclut un paquet kernel-rt, sinon voir la page Tuto Compiler un noyau Temps-Rel.

Pour les interfaces USB :
Les Cartes son des membres USB (1 et 2) ont une "priode d'interruption" (temps entre deux interrogations - transferts de donnes) d'environ une milliseconde et la plupart de ces cartes l'utilisent pour dterminer la frquence d'chantillonage audio. Dans ce cas, il vaut mieux faire en sorte de rgler la latence de jack sur un multiple entier de cette priode pour une meilleur synchronisation et donc moins de x-runs.
En pratique, je (pianoliv) n'ai pas russi obtenir de rsultats probants avec cette technique, mais voil comment il faudrait donc rgler jack pour des rsultats optimums :
  • rglez votre frquence d'chantillonnage audio, par exemple 48 KHz
  • rglez le nombre de priodes par tampon sur 2 ou 3 (3 est gnralement conseill mais il faut voir en fonction de ce qui fonctionne le mieux, tester)
  • vous voulez maintenant que le tampon (latence affiche par qjackctl) soit un chiffre rond (un multiple de 1 ms), pour cela jouez sur le nombre d'chantillons par priode :
    • avec 2 priodes par tampon, multipliez la frquence d'chantillonnage (en Kilo-Hertz) par un nombre entier et utilisez ce rsultat comme nombre d'chantillons par priode
      exemples : 48 (48x1), 96 (48x2), 144 (48x3)...
    • avec 3 priodes par tampon, le calcul est un peu plus difficile, je vous laisse le mditer une minute. chantillons par priode = frquence d'chantillonnage (en KHz) x ( un nombre entier / 3 )
      exemples : 48 (48x1), 64 (48x1.3), 80 (48x1.6)...

    vous devriez maintenant voir un nombre entier apparaitre dans la latence affiche par qjackctl, si ce n'est pas le cas il y a un problme !
  • voil, il n'y a plus qu'a faire les essais habituels (augmentation/rduction de la latence pour une utilisation confortable en fonction du contexte). Si ce paragraphe vous a aid, merci de le faire savoir, car pour moi, ca reste encore de la thorie.
Rappel Ceci ne s'applique pas aux cartes son qui ne synchronisent pas "l'horloge USB" avec "l'horloge audio" comme la SB Audigy 2 NX ou la Edirol UA-101.
Liens :

Perception de la latence :
Il faut savoir que l'oreille humaine ne peroit la latence qu' partir de 20 25 ms. Descendre en de, pour dbuter, n'est donc pas essentiel. Cela pourra devenir plus important par la suite en cas d'utilisation MAO plus pousse.
La latence annonce dans l'onglet "Rglages" de QJackctl est seulement thorique (vous remarquerez d'ailleurs qu'elle ne varie pas si vous "branchez" votre carte son interne ou votre module externe). Pour connatre la latence relle mesure par Jack, rendez-vous dans l'onglet "Statut" de QJackctl au bout de la ligne intitule "Dlai d'ordonnancement maximal". Pour les utilisateurs d'Ardour, elle est aussi indique sur la barre tout en haut du squenceur.


Onglet Options

Cet onglet vous permet en particulier de lancer des commandes supplmentaires, au lancement (ou la fermeture) de jack.
  • Execute script on startup : Commande qui sera excute juste avant le lancement de Jack. Trs utile pour dsactiver un systme son ( aRts, ESD ). Par exemple :
    Copy to clipboard
    artsshell -q terminate
    pour stopper aRts.
  • Execute script after startup : Commande qui sera excute juste aprs le lancement de Jack. Utile pour lancer par exemple le dmon lash.
  • Execute script on shutdown : Commande qui sera excute juste avant l'arrt de Jack.
  • Execute script after shutdown : Commande qui sera excute juste aprs l'arrt de Jack. Utile pour relancer le systme son de votre environnement graphique ( aRts, ESD ).


Onglet Display

Vous permet de paramtrer l'affichage de Qjackctl (polices, etc.).


Onglet Misc

Cet onglet offre divers rglages complmentaires. C'est en particulier ici que vous pourrez activer le lancement automatique de Jack au chargement de Qjackctl.


Status et Messages




La fentre Status permet de suivre la latence et les Xruns de faon prcise, la fentre Messages vous donnera les logs de Jack (utile pour dtecter un problme).
Qjackctl : Status ( gauche) et Messages ( droite)
Qjackctl : Status ( gauche) et Messages ( droite)



Connect

Fentre essentielle (voir indispensable) qui vous permettra d'inter-connecter les logiciels compatibles et votre matriel. Cette fentre a trois onglets: AUDIO, MIDI et ALSA :


  • Routage audio :
Jack permet de transmettre des signaux audio entre diffrentes applications compatibles, mais galement depuis et vers les entres/sorties d'une interface audio. Les seules contraintes, outre les performances de votre systme, sont le nombre d'entres et de sorties de chaque lment : vous pouvez envoyer le mme signal simultanment vers diffrents entres ou sorties, etc. Le routage audio se fait la vole sans avoir redmarrer l'(les) application(s), et en quelques clics dans l'onglet "Audio" de l'interface Qjackctl. Vous trouverez quelques exemples sur cette page.
Onglet AUDIO : Cliquez pour agrandir
Onglet AUDIO : Cliquez pour agrandir



  • Routage MIDI ALSA :
De la mme faon, il est possible de chainer les signaux MIDI. Cela permet de grer les entres/sorties MIDI d'une faon incroyablement souple pour inter-connecter clavier(s), interface Midi, synthtiseur(s) logiciel(s), squenceur(s). Le routage MIDI se fait la vole sans avoir redmarrer l'(les) application(s), et l encore en quelques clics dans l'onglet "ALSA" de l'interface Qjackctl.Vous trouverez quelques exemples ici et l.
Onglet ALSA : Cliquez pour agrandir
Onglet ALSA : Cliquez pour agrandir



  • Routage MIDI JACK :
➡️ Le routage MIDI par jack est rare car la GRANDE majorit des applications utilisent le squenceur ALSA pour le routage MIDI. Ceci a produit quelques confusions dans le pass. Le logiciel Qjackctl affiche pour le routage MIDI Jack un troisime onglet dans son dialogue de connexion, nomm MIDI. Les ports MIDI de presque toutes les applications apparatront par contre dans l'onglet ALSA. Si votre carte son apparait en Jack-MIDI, il vous faudra faire le pont avec a2jmidid.
Onglet MIDI : Cliquez pour agrandir
Onglet MIDI : Cliquez pour agrandir


  • Jack Transport : il permet de synchroniser les diffrentes applications compatibles, pour permettre aux boutons lecture, enregistrement, retour au dbut, etc. d'inter-agir de faon simultane d'un logiciel l'autre, mais galement de placer "la tte de lecture" au mme endroit dans tous ces logiciels. Cela permet de piloter un enregistrement depuis n'importe quel programme, et de supprimer les problmes de "calage". Les rglages ncessaires pour activer ce mode sont prciss sur la page Jack-Transport.


Patchbay




Cette option vous permet d'enregistrer des configurations. la diffrence de LASH-glashctl ou LADISH, le patchbay ne va pas vous enregistrer les configurations de vos logiciels, ni les dmarrer. Il va seulement se charger de les connecter une ou plusieurs sorties dans jack chaque fois que vous dmarrez une application. Il faut pour ceci ajouter une "socket" (ou douille en franais 😕 ).
le PatchBay : Cliquez pour agrandir
le PatchBay : Cliquez pour agrandir




Par exemple, j'utilise Rhythmbox via jacklaunch et je souhaite que le son de sortie de Rhythmbox sorte sur la carte son sur les lignes 3 et 4 (c'est--dire mon deuxime sound-system) alors que par dfaut, jacklaunch ne se connecte qu'aux lignes 1 et 2. Il faut donc crer un "socket" en cliquant sur "add".
le PatchBay : Cliquez pour agrandir
le PatchBay : Cliquez pour agrandir




Il faut ajouter une "socket" et slectionner les entres souhaites, puis crer une "socket" input concernant la sortie sur la carte son souhaite. Il ne reste plus qu' connecter les deux sockets et activer la configuration en cliquant sur "active" 😉

NB: Dans mon cas, le jacklaunch cre chaque fois un nom d'entre dans diffrent JACK. Qu' cela ne tienne, il suffit de bidouiller un peu le "client" dans le "socket" relatif Rhythmbox dans cet exemple comme ci-dessous. Il est donc possible d'automatiser des connections, mme si ces dernires portent des noms diffrents.
le PatchBay : Cliquez pour agrandir
le PatchBay : Cliquez pour agrandir




D'autres informations

Une page de sur le site de Mysth-R expliquant pas mal d'options.
Le site d'aide communautaire d'Ubuntu ddie une page la configuration de qJackCtl.
Si vous avez besoin de triturer le fichier de configuration de qJackCtl, sachez qu'il se trouve ici : /home/mon_utilisateur/.config/rncbc.org/.


Pour continuer

Maintenant que QJackCtl est correctement configur, vous pouvez aller voir les autres pages qui lui sont consacres :


Historique

Information Version
Tue 12 Dec 2017 09:51 olinuxx + coquille 121
Afficher
Wed 13 Sep 2017 18:53 olinuxx regroupement des alias 120
Afficher
Wed 13 Sep 2017 18:06 allany alias+1 119
Afficher
Fri 10 Mar 2017 13:10 olinuxx 118
Afficher
Fri 10 Mar 2017 13:09 olinuxx + pulseaudio 117
Afficher
Fri 10 Mar 2017 09:35 tenryu 116
Afficher
Fri 10 Mar 2017 09:35 tenryu 115
Afficher
Fri 10 Mar 2017 09:34 tenryu 114
Afficher
Sun 19 Jul 2015 21:00 olinuxx mise en page 113
Afficher
Sun 19 Jul 2015 20:48 olinuxx lien mort 112
Afficher
Sun 19 Jul 2015 20:34 olinuxx orthographe 111
Afficher
Sun 19 Jul 2015 20:31 olinuxx 110
Afficher
Sun 19 Jul 2015 20:26 olinuxx récupération du lien mort 109
Afficher
Sun 19 Jul 2015 20:22 olinuxx corrections orthographe + anglicisme + liens internes plus courts 108
Afficher
Sun 19 Jul 2015 20:21 olinuxx ajout d'un drapeau EN 107
Afficher
Sun 19 Jul 2015 20:11 olinuxx mise en page 106
Afficher
Sun 19 Jul 2015 20:05 olinuxx 105
Afficher
Sun 19 Jul 2015 20:04 olinuxx écriture + mise en page + correction 104
Afficher
Sun 19 Jul 2015 20:00 olinuxx 103
Afficher
Thu 12 Mar 2015 00:36 olinuxx correction alias 102
Afficher
Sun 16 Mar 2014 10:28 romain_bar Lien glossaire 101
Afficher
Sun 16 Mar 2014 10:16 romain_bar Lien latence 100
Afficher
Tue 04 Mar 2014 19:31 romain_bar Introduction plus claire 99
Afficher
Tue 04 Mar 2014 17:42 af 98
Afficher
Tue 04 Mar 2014 17:41 af 97
Afficher
Mon 04 Nov 2013 17:11 anonymous wiki_up conversion 96
Afficher
Thu 18 Jul 2013 01:40 utilisateur_anonyme2 95
Afficher
Thu 18 Jul 2013 01:32 utilisateur_anonyme2 94
Afficher
Thu 18 Jul 2013 01:26 utilisateur_anonyme2 93
Afficher
Sat 02 Mar 2013 12:40 pianolivier nouvelle boite de navigation 92
Afficher
Wed 22 Aug 2012 10:39 pianolivier mise en page 91
Afficher
Wed 22 Aug 2012 10:37 pianolivier Priority : + d'explications 90
Afficher
Sat 14 Jul 2012 17:53 olinuxx + input latency et output latency 89
Afficher
Mon 18 Jun 2012 20:33 pianolivier modif de liens 88
Afficher
Thu 17 mai 2012 18:23 pianolivier modif lien(s) interne(s) 87
Afficher
Thu 01 Mar 2012 18:26 pianolivier correction liens glossaire 86
Afficher
Wed 29 Feb 2012 21:51 Dominique 85
Afficher
Wed 29 Feb 2012 21:28 Dominique 84
Afficher
Wed 29 Feb 2012 20:17 pianolivier +1 lien forum 83
Afficher
Wed 29 Feb 2012 20:06 pianolivier auto-correction 82
Afficher
Wed 29 Feb 2012 19:41 Dominique 81
Afficher
Wed 29 Feb 2012 19:38 Dominique 80
Afficher
Wed 29 Feb 2012 19:27 Dominique 79
Afficher
Wed 29 Feb 2012 19:25 Dominique 78
Afficher
Wed 29 Feb 2012 19:23 Dominique précisions sur quelques paramètres 77
Afficher
Mon 27 Feb 2012 18:56 pianolivier auto-correction 76
Afficher
Mon 27 Feb 2012 18:54 pianolivier auto-correction 75
Afficher
Mon 27 Feb 2012 18:53 pianolivier auto-correction 74
Afficher
Mon 27 Feb 2012 18:52 pianolivier auto-correction 73
Afficher
Mon 27 Feb 2012 18:42 pianolivier 72
Afficher
  • «
  • 1 (en cours)
  • 2