Chargement...
 
[Voir/Cacher menus de gauche]
[Voir/Cacher menus de droite]


Avant de commencer à utiliser JACK, il est important de comprendre ce qu'est le temps réel et son impact sur la latence.

Pour améliorer la latence, il y a deux moyens d'action indépendants :




Mode temps-réel pour JACK


Pour fonctionner de manière optimale, Jack et les autres applications audio/MIDI temps-réel que vous utilisez ont besoin d'accéder de façon prioritaire à des ressources du système qui vous sont normalement "interdites" en tant que simple utilisateur.
La première étape pour avoir un système de MAO fonctionnel est donc de configurer le mécanisme intégré qui gère les attributions de bytes et autres méga-hertz.
Ceci fait l'objet d'un tuto, commencez par là et revenez ensuite :


T' as pas configuré P.A.M. ?


T' as pas la prio temps-réel !






Configuration de JACK avec QjackCtl


Le plus facile ensuite, c'est d'utiliser une interface graphique pour démarrer et bidouiller jack, c'est quand même plus sympa que le terminal ! wink
Il existe une interface par défaut, c'est QJackCtl, il ressemble à ceci :

Image

cliquez sur le (gros) bouton "réglages" ("setup"), et vérifiez que vos réglages correspondent à peu près exactement à l'image ci-dessous (vous les personnaliserez plus tard)

Image

L'important, de haut en bas et de gauche à droite :
serveur :
  • Chemin du serveur = jackd
  • Pilote : alsa (ou "firewire" avec ffado)
paramètres :
  • Temps-réel = coché
  • Pas de verrouillage mémoire = dé-coché
  • Pilote MIDI = aucun
  • Priorité = 70
  • Échantillons par période = 512
  • Fréquence d'échantillonnage = 48000 (Hz)
  • Périodes par tampon = 2 ou 3 (selon la carte son et autre, faites des essais pour voir lequel des 2 fonctionne le mieux)
  • Retard du démarrage = 2 (secondes, certaines cartes son ont besoin d'un peu de temps à s'initialiser)
  • Interface = hw:X
    Le X est à remplacer par le numéro correspondant à la carte son que vous voulez utiliser. hw:0 est la première carte son, souvent celle intégrée à la carte mère, hw:1 est la deuxième etc.
    Les numéros associés aux différentes cartes peuvent être trouvés grâce à la commande cat /proc/asound/cards (dans un terminal)
    Il est aussi possible d'utiliser le nom de la carte, trouvé par la même commande (entre []), sous la forme: hw:xxx. C'est utile si vous avez plusieurs interfaces, dans quel cas le système change souvent l'ordre des cartes.
  • Audio = duplex
  • Périphériques/canaux d'entrée/sortie = par defaut (sélection automatique efficace)

Ensuite cliquez sur "OK" puis dans la fenêtre principale, "Démarrer".
Si tout ce passe bien, vous verrez apparaître le symbole "RT" clignoter en jaune pâle dans la fenêtre de qJackCtl, entre "Démarré" (ou "Started" en anglais) et le taux d'utilisation du processeur.

Si à ce moment vous avez un problème, vous devriez :
  • vérifier que vous n'avez pas sauté le paragraphe qui dit que les réglages RT du système c'est obligatoire hein, et que c'est par ici (mais que c'est pas forcément évident alors mieux vaut une relecture wink),
  • fermer toute application qui peut occuper la carte son : lecteur audio, navigateur internet, "préférence son" de Gnome, serveur son inopiné... avant de relancer jack
    Si vous ne trouvez pas le coupable, essayez la commande suivante :
    lsof | grep /snd/
  • enfin, ouvrir la fenêtre messages pour savoir d'où exactement vient ce problème, puis comparer les messages aux erreurs répertoriées car oui, jack te parle !
    Le cas échéant, aller voir la description détaillée des réglages pour savoir quoi modifier sans danger.

Les réglages proposés plus hauts fonctionnent pour la plupart des couples cartes-son/ordinateur modernes (et compatibles), pour de plus vieux coucou il faudra peut être augmenter la latence (en jouant sur le nombre d'échantillons, périodes et la fréquence d'échantillonnage)
À l'inverse, une fois jack fonctionnel, vous pouvez vous amuser à abaisser la latence (30ms c'est déjà bien mieux qu'avec certains autres systèmes proprio connus, à partir de 10ms on ne sent plus la moindre différence).


Configuration de Jack avec Cadence


Cadence affiche dans son écran de démarrage les éléments importants pour le fonctionnement de Jack dans la rubrique System Checks.
Dans l'exemple ci-dessous, il indique que le noyau Linux n'est pas prévu pour travailler en temps réel (c'est celui de base) et l'utilisateur actuel n'est pas de groupe audio.

Image

Pour régler les paramètres utilisateur, voir cette page.


Pour aller plus loin


Connecter les applications entre elles


Voir le tutoriel dédié : QJackCtl : connecter des applications

Description détaillée des réglages


Voir la page dédiée description détaillée des réglages.

Sans qjackctl


L'interface QJackCtl est vraiment pratique car dans sa fenêtre "messages", on peut apercevoir la ligne de commande à utiliser dans terminal pour arriver au même résultat sans toutes ces boites.

Jack se démarre avec la commande jackd, assortie des arguments à vérifier dans le manuel (man jackd, certains arguments changent en fonction de la version). Avec les réglages proposés plus haut, ça donne :
jackd -P70 -dalsa -dhw:1 -r48000 -p512 -n3


Noyau temps-réel


Dans un premier temps, vous pouvez rester avec le noyau que vous avez.
Mais faire fonctionner Jack en mode RT ne signifie pas pour autant que vous ayez un noyau "basse latence" : Jack fonctionne très bien en mode temps réel, sans que le noyau du système d'exploitation soit un noyau basse latence.
Pour une utilisation plus professionnelle et pour obtenir une latence encore plus basse, il vous faudra alors utiliser un noyau doté du module "realtime preemption".
Ces noyaux portent la particule 'rt' dans leur nom et sont aujourd'hui souvent inclus dans Distributions. Vous obtiendrez ainsi un vrai système temps réel. Sachez cependant que cela devrait être réservé aux utilisations plus poussées, car un système de ce type n'est pas forcément adapté à une utilisation bureautique classique (ce n'est pas un hasard si ce n'est pas le noyau installé par défaut !). Voir la page dédiée : Le noyau Temps-Réel.



[+]


Documentation [Afficher / Cacher]

Connexion
[Afficher / Cacher]


Mégaphone [Afficher / Cacher]

ycollet, 21:58, mer. 20 Sep 2017: Un logiciel java sympa autour de csound ... m
olinuxx, 21:08, mer. 20 Sep 2017: Bonjour et bienvenue à raspbeguy ! :-)
r1, 06:28, mer. 20 Sep 2017: A voté ! Les gens viendez voter svp pour la joute N°12 :-) [Lien]
pierrotlo, 20:09, mar. 19 Sep 2017: Ai voté
bluedid29, 15:42, mar. 19 Sep 2017: Sympa pierreotlo ton installation!!! :-)
olinuxx, 15:37, mar. 19 Sep 2017: a voté pour la joute N°12 : [Lien]
pierrotlo, 14:42, mar. 19 Sep 2017: ch'tit video depuis mon téléphone. N'importe quoi avec le séquenceur et un echo ping pong. [Lien]
pierrotlo, 13:45, mar. 19 Sep 2017: En gros si le thème s'y prête faudra que je participe à la joute une fois.
pierrotlo, 13:44, mar. 19 Sep 2017: 6 VCO, 6 LFO, 5 VCF, 8 ADSR, 8 VCA, un filter Bank, un wave shaper, 2 mixer 4 entrées
pierrotlo, 13:39, mar. 19 Sep 2017: Voilà c'est terminé c'te fois. ça fonctionne et même ça fait du bruit. [Lien]
programLyrique, 12:26, mar. 19 Sep 2017: Je vais te refaire déménager au bon endroit, bluedid29 !
bluedid29, 11:43, mar. 19 Sep 2017: Bonne journée ! et merci programLyrique :-)