PipeWire est une application gratuite et open source créée par Wim Taymansqui travaille comme ingénieur principal chez Red Hat et est le co-créateur du framework multimédia GStreamer.
Il a été construit à partir de zéro avec un accent particulier sur la prise en charge de Wayland et Flatpakdans le but de moderniser le traitement audio et vidéo. Cela inclut la prise en charge des captures d'écran d'une seule image, de la capture d'écran, de l'enregistrement vidéo du bureau local et peut-être même de la diffusion native des bureaux Wayland sur les téléviseurs et les moniteurs !
Selon le site Web du projet, son objectif est de
améliore considérablement la gestion de l'audio et de la vidéo sous Linux. Il vise à prendre en charge les cas d'utilisation actuellement gérés par PulseAudio et Jack et en même temps à fournir le même niveau de gestion puissante de l'entrée et de la sortie vidéo.
Il introduit également un modèle de sécurité qui facilite l'interaction avec les périphériques audio et vidéo à partir d'applications conteneurisées, la prise en charge des applications Flatpak étant l'objectif principal. Aux côtés de Wayland et Flatpak, nous attendons de PipeWire qu'il fournisse un élément de base pour l'avenir du développement d'applications Linux.
Fonctionnalités de PipeWire
Dans cet article de blog, Christian explique que PipeWire introduit un modèle de sécurité qui facilite les interactions entre les appareils audio et vidéo à partir d'applications en bac à sable ; et avec la façon dont Flatpak et d'autres modèles de conteneurs prennent le contrôle du marché, cela semble être une situation gagnant-gagnant.
Installation et documentation
Au moment de l'écriture PipeWire n'est pas facilement disponible pour l'installation sur la plupart des distributions mais vous pouvez contourner cela en saisissant son code source depuis GitHub et en compilant à partir des sources ou en installant l'un des packages créés pour Fedora 27 et Fedora Rawhide.
Pour cloner le référentiel depuis GitHub, utilisez le code ci-dessous :
$ git clone https://github.com/PipeWire/pipewire.git
Ensuite, en utilisant le système de construction Meson, entrez les commandes suivantes :
$ ./autogen.sh --prefix=$PREFIX $ faire $ faire installer
Le $PREFIX
est généralement défini sur /usr
ou /usr/local.
Maintenant, testez le serveur PipeWire à partir du répertoire source avec la commande :
$ faire courir
Si vous souhaitez tester sa capture et son affichage vidéo avec SDL à partir du répertoire source, utilisez :
$ SPA_PLUGIN_DIR=build/spa/plugins PIPEWIRE_MODULE_DIR=build build/src/examples/export-sink
Vous pouvez également jouer avec les autres exemples.
N'oubliez pas que si vous ne définissez pas les variables d'environnement correctes comme indiqué ci-dessus, les plugins et les modules ne seront pas trouvés.
Recherchez une collection de pages utiles sur PipeWire sur sa page wiki et sa documentation API ici.
Clairement, faire fonctionner PipeWireClairement, c'est assez compliqué, mais tôt ou tard l'installation ne sera plus un problème .
Si vous êtes en mesure de poursuivre l'installation, n'oubliez pas de partager votre expérience d'utilisation avec nous dans la section des commentaires ci-dessous.