Chargement...
 
Skip to main content

5 - Les serveurs son : JACK, PipeWire, PulseAudio et autres...


[RESOLU] Pipewire / jack_iodelay

Bonjour,

Je rêve toujours de passer définitivement à Pipewire.

Dans un autre fil, jujudusub a bien expliqué comment calculer la latence avec jack_iodelay et le configurer dans qjackctl.

Par contre, est-ce que quelqu'un a essayé de faire de même avec Pipewire ?
La seule référence que j'ai trouvée est relative à Ardour (https://discourse.ardour.org/t/how-does-pipewire-perform-with-ardour/107381/12) mais cela ne me parait pas très convivial à configurer.

Cordialement,
France
Salut thefunnyside,

Pour passer à PipeWire sans trop avoir besoin de mettre les mains dans le cambouis, il y a une solution.
Il faut simplement utiliser une distribution qui propose PipeWire par défault.

Mesurer la latence totale est, pour moi, inutile. Je m'explique.
J'utilise uniquement mes oreilles pour savoir si je suis gêné par la latence. Je n'ai pas besoin de savoir quelle est la valeur de la latence. si elle me gêne, j'essais de réduire la taille du tampon pour la réduire un peu et je tente de m'habituer au "décalage".

Tu voudrais mesurer la latence totale avec PipeWire ? et comparer avec JACK ? c'est ça ?
Merci jujudusud.

Je devrais peut-être parler plutôt de délai de compensation que de latence en fait.

La question de Pipewire pour remplacer jack a été réglée il y a six mois dans cette section même. Mais il restait la question du délai de compensation dû à la carte son USB, calculé par jack_iodelay quand on utilise jack.

En utilisant le serveur jack de pipewire, j'imagine que ce problème de délai de compensation subsiste et doit être configuré quelque part dans les méandres de Pipewire (peut-être autrement que ce que donne le développeur d'Ardour ?)
France
Pour être tout à fait transparent, je ne sais pas comment ça se règle avec PipeWire. Quand je lis ce qu'écrit Robin Gareus dans le forum Ardour, je n'obtiens pas les mêmes chose que lui avec les mêmes commandes. Du coup je n'ai pas cherché plus loin.

Par contre, si tu n'a pas "besoin" de JACK pour utiliser Ardour et que tu bascules sur l'utilisation d'ALSA à la place, alors tu peux faire faire le test par l'utilitaire dédié d'Ardour dont parle aussi Robin dans sa discussion. en allant sur les réglages audio et dans les paramètres avancés une fois que tu as choisi ALSA en serveur, alors, tu peux faire ce relevé de valeur et les réglages dans Ardour, directement.

Je n'ai rien de plus pour t'aider pour l'instant. Mes connaissances s’arrêtent là.
Merci. Piratebab aura peut-être une idée s'il passe par là.

L'utilisation d'ALSA directement n'est pas une option pour moi car je souhaite continuer à partager l'audio entre plusieurs applications.
Tiens, j'ai l'impression que les valeurs de compensation de latence correspondent aux paramètres -I et -O de jackd, qui sont en fait des valeurs passées à ALSA.
Donc, j'ai l'impression qu'il faut chercher du côté du paramétrage ALSA dans Pipewire ...

C'est dans la configuration de Wireplumber (https://pipewire.pages.freedesktop.org/wireplumber/configuration/alsa.html)
["latency.internal.rate"] =

Ce qui correspond à ProcessLatency dont parle Gareus.
France
Ça c'est une bonne piste, je continue à suivre tes avancées. Je ne sais pas comment régler ça.
Personnellement je ne me suis pas posé la question.
Mes machines d'enregistrement sont sous Librazik et Jack. Elles sont dépouillées au maximum de façon à minimiser la latence.
Seule ma machine de mixage est avec pipewire, mais pour cette utilisation, la latence n'a pas d'importance.
Lorsque je dois régler une sono, j'ai besoin de connaître précisément la latence de la carte son. J'utilise Room EQ wizard pour cela (la fonction calibration). Et dans ce cas, on ne passe pas par Jack ou pipewire. C'est peut étre possible, mais n'ayant pas ce besoin, je n'ai pas regardé.
Idem avec open sound meter, tu peux mesurer une latence, mais pour une carte son seule, je n'ai pas testé (il faut utiliser l'interface loopback comme référence)