Ce qui est bien avec PipeWire, c'est qu'il est compatible avec les clients PulseAudio, Jack et ALSA (il doit aussi y avoir une compatibilité pour OSS mais je n'ai pas eu le besoin de vérifier. Il est censé couvrir tous les cas d'usage, là où PulseAudio était concentré sur l'utilisation grand public et JACK sur l'audio avancée.
Pas de changement nécessaire pour les applications, le remplacement de PulseAudio par PipeWire est totalement transparent. Et complet : je ne vois pas de cas d'usage qui n'est pas couvert par PipeWire, même la lecture en réseau. C'est une implémentation de PulseAudio, tout simplement.
Pour les applications Jack, un LD_PRELOAD permet d'avoir une bonne compatibilité. Peut-être que ça peut se faire sans ? Je ne saurais pas dire si PipeWire est un bon remplaçant pour les utilisations audio avancées / "temps réelles" couvertes par JACK, mais en tout cas ça a l'air de marcher et de vouloir couvrir le cas d'utilisation (si ça n'est pas encore totalement le cas).
Mettre en place Jack est un peu compliqué et demande des jongleries un peu pénible sur une machine utilisée de manière généraliste, PipeWire n'a pas ce problème et "juste marche" normalement.
Donc le guide est simple : utilise PipeWire. Il n'y a plus à choisir entre PulseAudio et Jack.
Donc avec un peu de chance, Jamulus marche bien avec PipeWire et si celui-ci est déjà installé parce que ça vient par défaut avec ta distrib (si ce n'est pas encore le cas, ça devrait bientôt), il n'y a probablement pas grand chose à faire.
Et ALSA... je crois que c'est deux choses :
le sous système son de Linux - les pilotes sons de linux sont des pilotes ALSA
une bibliothèque (assez limitée) pour leur parler et là aussi, Pipewire est compatible avec ça. D'ailleurs j'ai un bug avec Clémentine qui le fait sauter d'une sortie son un peu aléatoirement d'une piste à l'autre, alors je lui dit d'utiliser ALSA et c'est réglé, il ne s'occupe plus de gérer ce genre de chose, PipeWire s'en charge.
GStreamer pour moi c'est autre chose, ça sert aux applications pour coder et décoder du son (codecs), appliquer des filtres et transformations. Une fois traités, ces flux audios peuvent être envoyés au système son pour lecture (une autre utilisation serait d'enregistrer sur le disque par exemple).
Je finirais en ajoutant que PipeWire apporte aussi à la vidéo ce que PulseAudio et ses collègues d'antant apportaient : multiplexage, etc. On peut maintenant utiliser la caméra dans plusieurs applications en même temps par exemple. Et sous Wayland, ça permet aussi de capturer l'écran ou des fenêtres, pour les partages vidéos par exemple.
Pour l'utilisateur / l'utilisatrice finale, il n'y a plus à se préoccuper de tout ça. Tout juste marche, même les applications pro, plus besoin de se préoccuper de comment marche l'architecture audio d'un système Linux ni de l'installation de JACK. En tout cas, en théorie.
À noter que c'est une version RC de PipeWire qui sort, pas une version finale (mai ça fait 1 ou 2 ans que je l'utilise à la place de PulseAudio).
[^] # Re: J'ai besoin d'un plan à l'échelle et en couleurs
Posté par raphj (site web personnel) . En réponse au lien "PipeWire 1.0 RC Available With Jackdbus By Default, Improved IRQ-Based Scheduling". Évalué à 7. Dernière modification le 06 octobre 2023 à 14:59.
(edit: grillé par Mjules)
Ce qui est bien avec PipeWire, c'est qu'il est compatible avec les clients PulseAudio, Jack et ALSA (il doit aussi y avoir une compatibilité pour OSS mais je n'ai pas eu le besoin de vérifier. Il est censé couvrir tous les cas d'usage, là où PulseAudio était concentré sur l'utilisation grand public et JACK sur l'audio avancée.
Pas de changement nécessaire pour les applications, le remplacement de PulseAudio par PipeWire est totalement transparent. Et complet : je ne vois pas de cas d'usage qui n'est pas couvert par PipeWire, même la lecture en réseau. C'est une implémentation de PulseAudio, tout simplement.
Pour les applications Jack, un LD_PRELOAD permet d'avoir une bonne compatibilité. Peut-être que ça peut se faire sans ? Je ne saurais pas dire si PipeWire est un bon remplaçant pour les utilisations audio avancées / "temps réelles" couvertes par JACK, mais en tout cas ça a l'air de marcher et de vouloir couvrir le cas d'utilisation (si ça n'est pas encore totalement le cas).
Mettre en place Jack est un peu compliqué et demande des jongleries un peu pénible sur une machine utilisée de manière généraliste, PipeWire n'a pas ce problème et "juste marche" normalement.
Donc le guide est simple : utilise PipeWire. Il n'y a plus à choisir entre PulseAudio et Jack.
Donc avec un peu de chance, Jamulus marche bien avec PipeWire et si celui-ci est déjà installé parce que ça vient par défaut avec ta distrib (si ce n'est pas encore le cas, ça devrait bientôt), il n'y a probablement pas grand chose à faire.
Et ALSA... je crois que c'est deux choses :
GStreamer pour moi c'est autre chose, ça sert aux applications pour coder et décoder du son (codecs), appliquer des filtres et transformations. Une fois traités, ces flux audios peuvent être envoyés au système son pour lecture (une autre utilisation serait d'enregistrer sur le disque par exemple).
Je finirais en ajoutant que PipeWire apporte aussi à la vidéo ce que PulseAudio et ses collègues d'antant apportaient : multiplexage, etc. On peut maintenant utiliser la caméra dans plusieurs applications en même temps par exemple. Et sous Wayland, ça permet aussi de capturer l'écran ou des fenêtres, pour les partages vidéos par exemple.
Pour l'utilisateur / l'utilisatrice finale, il n'y a plus à se préoccuper de tout ça. Tout juste marche, même les applications pro, plus besoin de se préoccuper de comment marche l'architecture audio d'un système Linux ni de l'installation de JACK. En tout cas, en théorie.
À noter que c'est une version RC de PipeWire qui sort, pas une version finale (mai ça fait 1 ou 2 ans que je l'utilise à la place de PulseAudio).