Problèmes et questions sur les applications multimédia.
Répondre

Pipewire Ardour

#1Messageil y a 1 an

Bonjour @ tous.
Nous voyons beaucoup d'interrogations légitimes sur l'adoption ou non de Pipewire comme serveur son incontournable sur les distributions Gnu/Linux.
Loin d'être un expert, j'ai toutefois pas mal bossé par le passé dans le domaine du son et je tente de partager sur ce fil mes retours d'expériences avec ce serveur prometteur. Je compte sur vous pour enrichir efficacement ce sujet .
Voici un court descriptif issu du wiki d'Archlinux traduit en français :
PipeWire est un nouveau framework multimédia de bas niveau. Il vise à offrir la capture et la lecture audio et vidéo avec une latence minimale et la prise en charge des applications basées sur PulseAudio , JACK , ALSA et GStreamer .

Le démon basé sur le framework peut être configuré pour être à la fois un serveur audio (avec les fonctionnalités PulseAudio et JACK) et un serveur de capture vidéo.

PipeWire prend également en charge les conteneurs comme Flatpak et ne repose pas sur le audio et video groupes d'utilisateurs . Au lieu de cela, il utilise un modèle de sécurité de type Polkit , demandant à Flatpak ou Wayland la permission d'enregistrer l'écran ou l'audio.
En ce qui nous concerne, installer pipewire n'est pas un problème avec pacman ou pamac . Par contre, les paquets PuseAudio et Jack2 sont incompatibles avec Pipewire et doivent être désinstallés. Ce point semble un frein compréhensible et j'ai aussi été un peu retissant à franchir le pas.
Les développeurs de Pipewire ont bien compris le problème et utilisent les bibliothèques de Jack2, de PulseAudio et de Gstreamer dans des méta-paquets permettant aux programmes comme Ardour de fonctionner comme avec le serveur Jack.
Toutefois, il faut installer aussi Wireplumber (recommandé) pour permettre de gérer les configurations de sessions.
Pour info, en [Testing] à ce jour, Ardour est à la version 7 et cette version sera très prochainement en [Stable]
Donc en gros,

sudo pacman -S pipewire wireplumber pipewire-alsa pipewire-jack pipewire-pulse pipewire-docs
Il faut évidemment supprimer ou accepter la suppression de pulseaudia-alsa, pulseaudiojack2 et pulseaudio-bluetooth dont les bibliothèques seront utilisées par Pipewire.
N'ayez craintes si vous devez supprimer aussi Ardour ou autres car Jack2 est utilisé en dépendances requises. Il suffira de les réinstaller après Pipewire.

Passons à Ardour maintenant. Je précise qu'il s'agit d'un retour d'expérience et non d'un tuto exhaustif.
Une fenêtre Audio/Midi proposera de choisir le serveur son. Si vous choisissez ALSA, vous aurez les réglages classiques comme la fréquence d'échantillonnage, le tampon etc... Mais si vous avez une autre source audio active comme une vidéo sur FF ou un test d'écoute avec smplayer par exemple, il ne sortira aucun son d'Ardour...
Si vous choisissez Jack, ce qui est à mon sens une évidence, vous aurez un message de type "Jack est déjà lancé..." : aucun souci, pipewire est lancé avant Ardour, donc c'est un comportement attendu. Par contre vous n'aurez plus accès aux réglages de fréquence d'échantillonnage, tampon etc... depuis cette interface. On pourra toutefois le faire en ligne de commande.
J'ai eu aussi sur certaines sessions enregistrées auparavant un manque de son et surtout un problème d’échantillonnage . En effet avant Pipewire, j'utilisais Ardour sous ALSA avec une Freq de 44100 (qualité CD-Audio) alors que Pipewire utilise la Freq de 48000.
Il existe un moyen provisoire d'utiliser une session en 44100 en utilisant cette commande: ici je donne un tampon de 1024 (latence) et une fréquence d’échantillonnage de 44100 en indiquant Jack :

PIPEWIRE_LATENCY="1024/44100" pw-jack ardour7
Edit: Il est possible de configurer la sortie par défaut qui sera utilisée par pipewire-jack. Repérerez le N° votre carte son avec cat /proc/asound/cards , puis rentrez pw-metadata -n default <N°> <N°> étant la position de votre carte. Normalement Pipewire redirigera le flux de sortie vers la carte choisie. Sinon, il faudra choisir la carte via les programmes concernés.

Quelques avertissements plus tard, j'ai bien ma session ouverte en 44100.
Image

Par contre le mappage son est reparti sur une configuration par défaut visant la carte interne et non ma carte Sound-Blaster.
Perso, j'ai fait un clic droit depuis la page de Mix sur le bouton [Master] > Sortie et j'ai coché les deux cases correspondant à ma carte SB.

Image

Et j'ai du son à la bonne fréquence :pompom:

Pipewire Ardour

#2Messageil y a 1 an

complément par rapport à cette évolution vis a vis de pipewire et plumber :
la version évolue mais n'est pas totalement finalisé , il y a donc quelques soucis

il y a un packages spécifique manjaro-pipewire , qui demande à retire pulseaudio avant ( partie conflit ) , et qui s'appuie toujours sur la base alsa ,

pacman -Si manjaro-pipewire
Dépôt                    : extra
Nom                      : manjaro-pipewire
Version                  : 20221015-2
Description              : Manjaro meta package for complete PipeWire support.
Architecture             : any
URL                      : https://wiki.archlinux.org/title/PipeWire
Licences                 : GPL
Groupes                  : --
Fournit                  : --
Dépend de                : gst-plugin-pipewire  pipewire  pipewire-alsa
                           pipewire-pulse  pipewire-session-manager
Dépendances opt.         : easyeffects: advanced equalizer and effects
                           pipewire-jack: Jack support
                           pipewire-v4l2: V4L2 interceptor
                           pipewire-x11-bell: X11 bell
                           pipewire-zeroconf: Zeroconf support
                           realtime-privileges: Realtime privileges for users
Est en conflit avec      : manjaro-pulse  pulseaudio-equalizer  pulseaudio-jack
                           pulseaudio-lirc  pulseaudio-rtp  pulseaudio-zeroconf
Remplace                 : --
Taille du téléchargement : 21,44 KiB
Taille installée         : 1,52 KiB
Paqueteur                : Mark Wagie <mark@manjaro.org>
Compilé le               : sam. 15 oct. 2022 18:50:15
Validé par               : Somme MD5  Somme SHA-256  Signature
ajouter plumber ( successeur de pipewire ) , n'indique pas que alsa , pulseaudio , ou jack est en conflit , main on ne peut avoir qu'un gestionnnaire de son ....

pacman -Si wireplumber
Dépôt                    : extra
Nom                      : wireplumber
Version                  : 0.4.12-1
Description              : Session / policy manager implementation for PipeWire
Architecture             : x86_64
URL                      : https://pipewire.pages.freedesktop.org/wireplumber/
Licences                 : MIT
Groupes                  : --
Fournit                  : pipewire-session-manager  libwireplumber-0.4.so=0-64
Dépend de                : pipewire>=0.3.52  lua  libpipewire-0.3.so=0-64
                           libsystemd.so=0-64  libglib-2.0.so=0-64
                           libgmodule-2.0.so=0-64  libgobject-2.0.so=0-64
                           libgio-2.0.so=0-64
Dépendances opt.         : wireplumber-docs: Documentation
Est en conflit avec      : pipewire-media-session
Remplace                 : --
Taille du téléchargement : 411,95 KiB
Taille installée         : 2214,20 KiB
Paqueteur                : Jan Alexander Steffens (heftig)
                           <heftig@archlinux.org>
Compilé le               : mar. 04 oct. 2022 15:48:27
Validé par               : Somme MD5  Somme SHA-256  Signature
manjaro propose donc 3 meta package
- manjaro-pulse ( sur base de pulseaudio )
- manjaro-alsa ( sur base alsa)
- manjaro-pipewire ( sur base alsa et gst plug-in )
- manjaro pipewire + plumber ( base alsa + gst + pipewire )

manjaro-gstreamer , contient lui tous les packages ( gst + libav et ffmepg )

donc faite très attention si vous changer de gestionnaire audio , car il vous faudra vérifier
- les différentes sorties ( haut-parleur ou sorties enceintes externes , USB , carte son dédié souvent pour acquisition )
- les navigations ( vidéos et audios ) , les jeux ( avec besoin des libraries 32 bits ) ,
- pour certains la bonne sortie son CD / DVD ( le problème des fréquences 41Khz et 48Khz )
Répondre