Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
pipewire [Le 21/03/2024, 10:35] krodelabestiole [Voir aussi] + guide en |
pipewire [Le 19/05/2025, 23:56] (Version actuelle) krodelabestiole mise en forme |
||
---|---|---|---|
Ligne 2: | Ligne 2: | ||
{{ :logo:pipewire.png?100| logo de PipeWire}} | {{ :logo:pipewire.png?100| logo de PipeWire}} | ||
- | |||
====== PipeWire ====== | ====== PipeWire ====== | ||
Ligne 12: | Ligne 11: | ||
Il dispose de plus des couches de rétro-compatibilité avec les serveurs de son ALSA, [[:PulseAudio]], et [[:jackd|JACK]]. | Il dispose de plus des couches de rétro-compatibilité avec les serveurs de son ALSA, [[:PulseAudio]], et [[:jackd|JACK]]. | ||
- | Pour en bénéficier il faut [[:tutoriel:comment_installer_un_paquet|installer les paquets]] **[[apt>pipewire-alsa ]]**, **[[apt>pipewire-pulse ]]** et **[[apt>pipewire-jack ]]**. Grâce à ces paquets, les applications compatibles voient respectivement des serveurs ALSA, [[:PulseAudio]], ou [[:jackd|JACK]] tourner, et peuvent s'y connecter. Il s'agit en fait à chaque fois de PipeWire. | + | Pour en bénéficier il faut [[:tutoriel:comment_installer_un_paquet|installer les paquets]] ''[[apt>pipewire-alsa]]'', ''[[apt>pipewire-pulse]]'' et ''[[apt>pipewire-jack]]''. Grâce à ces paquets, les applications compatibles voient respectivement des serveurs ALSA, [[:PulseAudio]], ou [[:jackd|JACK]] tourner, et peuvent s'y connecter. Il s'agit en fait à chaque fois de PipeWire. |
PipeWire dispose aussi de fonctionnalités permettant de gérer des flux vidéo, utiles par ex. pour des applications de [[:streaming]]. | PipeWire dispose aussi de fonctionnalités permettant de gérer des flux vidéo, utiles par ex. pour des applications de [[:streaming]]. | ||
===== Installation ===== | ===== Installation ===== | ||
- | ==== Ubuntu 22.10 ou supérieure ==== | ||
- | PipeWire est installé par défaut sur Ubuntu à partir de la version [[:kinetic|Kinetic 22.10]]. Vous pouvez [[:tutoriel:comment_installer_un_paquet|installer le paquet]] **[[apt>pipewire-jack]]** pour profiter des applications compatibles [[:jackd|JACK]]. | ||
- | On ne trouve les paquets **[[apt>pipewire-alsa]]** et **[[apt>pipewire-jack]]** qu'à partir de [[:kinetic|Kinetic 22.10]]. | + | **PipeWire** est installé par défaut sur Ubuntu à partir de la version [[:jammy|Jammy 22.04.4]].\\ |
+ | Si ce n'est pas le cas, quel qu'en soit la raison, il suffit d'[[:tutoriel:comment_installer_un_paquet|installer le paquet]] ''[[apt>pipewire]]''. | ||
- | ==== Ubuntu 20.04 et 22.04 ==== | + | On trouve aussi le paquet ''[[apt>pipewire-pulse]]''(([[:depots#sections_universe_et_multiverse_maintenues_par_les_motu|dépôt universe]] pour [[:jammy|Jammy 22.04]])) qui fournit la rétro-compatibilité pour les applications implémentant [[:PulseAudio]]. Il risque donc d'être indispensable pendant encore un certain temps... |
- | Sur les versions précédentes il est possible d'[[:tutoriel:comment_installer_un_paquet|installer le paquet]] **[[apt>pipewire]]** depuis les dépôts officiels à partir de [[:focal|Focal 20.04]] ([[:depots#sections_universe_et_multiverse_maintenues_par_les_motu|dépôt universe]] pour cette version précise). | + | |
- | On trouve **[[apt>pipewire-pulse]]** à partir de [[:jammy|Jammy 22.04]] ([[:depots#sections_universe_et_multiverse_maintenues_par_les_motu|dépôt universe]] pour cette version précise). | + | Vous pouvez si besoin installer les paquets ''[[apt>pipewire-jack]]'' pour profiter des applications compatibles [[:jackd|JACK]], et ''[[apt>pipewire-alsa]]'' pour intégrer celles censées se connecter directement au serveur de son d'ALSA.((Ces paquets sont fournis par le [[:depots#sections_universe_et_multiverse_maintenues_par_les_motu|dépôt universe]].)) |
+ | <note tip> | ||
+ | Avec ''[[apt>pipewire-pulse]]'' et ''[[apt>pipewire-jack]]'', il est conseillé de [[:tutoriel:comment_supprimer_un_paquet|désinstaller]] respectivement [[:PulseAudio]] (paquet ''pulseaudio'') et [[:jackd|JACK]] (paquet ''jackd''), qui deviennent inutiles, et peuvent être gênants. | ||
+ | </note> | ||
- | Avec [[apt>pipewire-pulse]] et [[apt>pipewire-alsa]], il est conseillé de désinstaller respectivement [[:PulseAudio]] et [[:jackd|JACK]]. | + | C'est le gestionnaire de session **WirePlumber** qui est installé par défaut sur ces versions récentes. |
+ | |||
+ | ==== Snap ==== | ||
+ | |||
+ | **PipeWire** est aussi disponible en [[:snap]] depuis [[https://snapcraft.io/pipewire|Snapcraft]], avec ''wireplumber'' et ''pipewire-pulse''. | ||
+ | |||
+ | On peut donc l'installer sur Ubuntu simplement en installant ''pipewire'' depuis le [[:snap store|centre d'applications (Snap Store)]], ou en ligne de commande : | ||
+ | <code>snap install pipewire</code> | ||
+ | |||
+ | ==== Focal 20.04 ==== | ||
+ | |||
+ | Sur ces versions plus anciennes il est possible d'[[:tutoriel:comment_installer_un_paquet|installer le paquet]] ''[[apt>pipewire]]'' depuis les dépôts officiels à partir de [[:focal|Focal 20.04]] ([[:depots#sections_universe_et_multiverse_maintenues_par_les_motu|dépôt universe]] pour cette version précise). | ||
=== Installer le gestionnaire WirePlumber (recommandé) === | === Installer le gestionnaire WirePlumber (recommandé) === | ||
- | Le gestionnaire de session par défaut est **pipewire-media-session**, un autre gestionnaire de session du son est disponible et est intensivement recommandé car il serait plus performant et aurait plus de fonctionnalité. | + | Le gestionnaire de session par défaut sur [[:focal|Focal 20.04]] est **[[https://gitlab.freedesktop.org/pipewire/media-session|PipeWire Media Session]]** (paquet ''[[apt>pipewire-media-session]]''), mais il a été rendu obsolète par **[[https://gitlab.freedesktop.org/pipewire/wireplumber|WirePlumber]]**(([[https://linuxmao.org/WirePlumber|WirePlumber sur Linux MAO]], [[https://pipewire.pages.freedesktop.org/wireplumber/|documentation officielle]])), installé par défaut sur les versions plus récentes d'Ubuntu. |
- | <code> | + | Pour installer **WirePlumber** sur ces anciennes versions d'Ubuntu, il faut [[:ppa#ajout_d_un_ppa_a_vos_sources_logicielles|ajouter le PPA]] ''ppa:pipewire-debian/wireplumber-upstream''((https://launchpad.net/~pipewire-debian/+archive/ubuntu/wireplumber-upstream)). |
- | sudo add-apt-repository ppa:pipewire-debian/wireplumber-upstream | + | |
- | sudo apt-get update | + | [[:tutoriel:comment_installer_un_paquet|Installez les paquets]] additionnels de PipeWire : ''[[apt>gstreamer1.0-pipewire libpipewire-0.3-{0,dev,modules} libspa-0.2-{bluetooth,dev,jack,modules} pipewire{,-{audio-client-libraries,pulse,bin,jack,alsa,v4l2,libcamera,locales,tests}}]]''. |
- | </code> | + | |
- | Installez les paquets additionnels de pipewire | + | Installez le gestionnaire de session ''[[apt>wireplumber{,-doc} gir1.2-wp-0.4 libwireplumber-0.4-{0,dev}]]''. |
- | <code> | + | |
- | sudo apt install gstreamer1.0-pipewire libpipewire-0.3-{0,dev,modules} libspa-0.2-{bluetooth,dev,jack,modules} pipewire{,-{audio-client-libraries,pulse,bin,jack,alsa,v4l2,libcamera,locales,tests}} | + | |
- | </code> | + | |
- | Installez le gestionnaire de session | + | Maintenant, cachez votre ancien serveur de son **PulseAudio**.((Voir étape 3a de [[https://github.com/pipewire-debian/pipewire-debian#1-add-the-launchpad-ppa|la documentation officielle]].)) |
- | <code> | + | |
- | sudo apt-get install wireplumber{,-doc} gir1.2-wp-0.4 libwireplumber-0.4-{0,dev} | + | <note tip>Il n'est pas indispensable de supprimer **PulseAudio** pour le remplacer par **PipeWire**.</note> |
- | </code> | + | |
- | Maintenant, cachez pulseaudio (votre ancien gestionnaire)((source: [[https://github.com/pipewire-debian/pipewire-debian#1-add-the-launchpad-ppa|étape 3a documentation]])) | ||
- | <note tip>Vous n'avez pas besoin de supprimer pulseaudio pour le remplacer par pipewire</note> | ||
<code> | <code> | ||
systemctl --user --now disable pulseaudio.{socket,service} | systemctl --user --now disable pulseaudio.{socket,service} | ||
Ligne 57: | Ligne 60: | ||
</code> | </code> | ||
- | Lancer cette commande pour autoriser et lancer PipeWire((source: étape 3b de la documentation)). | + | Lancez cette commande pour autoriser et lancer PipeWire.((Voir étape 3b de [[https://github.com/pipewire-debian/pipewire-debian#1-add-the-launchpad-ppa|la documentation officielle]].)) |
<code> | <code> | ||
- | systemctl --user --now enable pipewire{,-pulse}.{socket,service} filter-chain.service | + | systemctl --user --now enable pipewire{,-pulse}.{socket,service} filter-chain |
</code> | </code> | ||
Puisqu'on a choisi WirePlumber comme gestionnaire de session, on doit lancer cette commande | Puisqu'on a choisi WirePlumber comme gestionnaire de session, on doit lancer cette commande | ||
<code> | <code> | ||
- | systemctl --user --now enable wireplumber.service | + | systemctl --user --now enable wireplumber |
</code> | </code> | ||
- | Vous devriez avoir du son, désormais avec PipeWire + WirePlumber | + | Vous devriez avoir du son, désormais avec le serveur **PipeWire** et le gestionnaire **WirePlumber**. |
- | //Voir [[https://github.com/pipewire-debian/pipewire-debian#1-add-the-launchpad-ppa|la documentation sur la forge officielle]]// | + | ==== Bionic 18.04 ==== |
- | ==== Ubuntu 18.04 ==== | + | <note>Il est aussi possible d'installer **PipeWire** et tous ses outils sur des versions plus anciennes qui ne les incluent pas dans les dépôts par défaut, à partir d'Ubuntu [[:bionic|Bionic 18.04]]. |
- | <note>Il est aussi possible d'installer PipeWire et tous ses outils sur des versions plus anciennes qui ne les incluent pas dans les dépôts par défaut, à partir d'Ubuntu [[:bionic|Bionic 18.04]]. | + | |
Il faut pour cela [[:ppa#ajout_d_un_ppa_a_vos_sources_logicielles|ajouter les PPA]] **ppa:pipewire-debian/pipewire-upstream**((https://launchpad.net/~pipewire-debian/+archive/ubuntu/pipewire-upstream)) et **ppa:pipewire-debian/wireplumber-upstream**((https://launchpad.net/~pipewire-debian/+archive/ubuntu/wireplumber-upstream)) dans vos sources de logiciels. | Il faut pour cela [[:ppa#ajout_d_un_ppa_a_vos_sources_logicielles|ajouter les PPA]] **ppa:pipewire-debian/pipewire-upstream**((https://launchpad.net/~pipewire-debian/+archive/ubuntu/pipewire-upstream)) et **ppa:pipewire-debian/wireplumber-upstream**((https://launchpad.net/~pipewire-debian/+archive/ubuntu/wireplumber-upstream)) dans vos sources de logiciels. | ||
Ligne 87: | Ligne 89: | ||
Pour voir la liste des logiciels et appareils disponibles (via [[#gestionnaire_de_session|WirePlumber]]) : | Pour voir la liste des logiciels et appareils disponibles (via [[#gestionnaire_de_session|WirePlumber]]) : | ||
<code>wpctl status</code> | <code>wpctl status</code> | ||
+ | |||
+ | **PipeWire** et **Wireplumber** se paramètrent nativement à l'aide de fichiers de configuration situés dans les répertoires ''/etc/pipewire'' et ''/usr/share/wireplumber'', qu'il est possible de surcharger avec des réglages personnalisés dans son répertoire personnel, respectivement ''~/.config/pipewire'' et ''~/.local/share/wireplumber''. | ||
+ | |||
+ | Il est aussi possible d'accéder à certains paramètres depuis des interfaces graphiques. | ||
+ | |||
+ | ==== Interfaces graphiques ==== | ||
+ | |||
+ | Il existe différentes interfaces graphiques permettant de gérer **PipeWire** : | ||
+ | * en particulier **[[https://github.com/dimtpap/coppwr|coppwr]]** fournit un accès à quantité d'informations et de réglages de bas niveau. Il propose entre autre un //graph// pour configurer le [[#routage]]. **coppwr** est disponible en [[:flatpak]] sur le dépôt [[https://flathub.org/apps/io.github.dimtpap.coppwr|Flathub]] et peut donc s'installer en suivant [[:tutoriel:installer_application_flatpak|cette procédure]] puis en installant le paquet ''io.github.dimtpap.coppwr''. | ||
+ | * **[[https://github.com/rncbc/qpwgraph|qpwgraph]]** est probablement l'interface la plus utilisée pour [[#router]] les signaux audio, vidéo et [[:MIDI]] (utilise la bibliothèque [[:Qt]]). | ||
+ | * **[[https://gitlab.freedesktop.org/pipewire/helvum|Helvum]]** est une alternative à **qpwgraph**, également consacrée au [[#routage]], utilisant la bibliothèque [[:GTK]]. | ||
==== Routage ==== | ==== Routage ==== | ||
Ligne 92: | Ligne 105: | ||
En plus d'utiliser simultanément plusieurs logiciels et interfaces matérielles, PipeWire permet de les relier ensemble dans n'importe quel sens, à la manière d'un studio virtuel. | En plus d'utiliser simultanément plusieurs logiciels et interfaces matérielles, PipeWire permet de les relier ensemble dans n'importe quel sens, à la manière d'un studio virtuel. | ||
- | On peut utiliser une interface graphique telle que [[https://gitlab.freedesktop.org/rncbc/qpwgraph|qpwgraph]], qui remplace avantageusement [[:QjackCtl]] (qu'on utilisait pour [[:jackd|JACK]]). | + | On peut gérer ces connexions en ligne de commande mais il est probablement beaucoup plus pratique d'utiliser une [[#interfaces graphiques|interface graphique]], telle que [[https://gitlab.freedesktop.org/rncbc/qpwgraph|qpwgraph]], qui remplace avantageusement [[:QjackCtl]] (qu'on utilisait pour [[:jackd|JACK]]). |
- | **qpwgraph** est disponible depuis les dépots officiels : **[[apt>qpwgraph]]** ou en [[https://flathub.org/apps/details/org.rncbc.qpwgraph|Flatpak]]. | + | **qpwgraph** est disponible depuis les dépots officiels : ''[[apt>qpwgraph]]'' ou en [[https://flathub.org/apps/details/org.rncbc.qpwgraph|Flatpak]]. |
Chaque élément (matériel ou logiciel) apparaît comme un bloc avec ses entrées à gauche et ses sorties à droite. On peut les relier les unes aux autres en tirant des liens par cliquer-glisser. Les liens peuvent ainsi conduire des signaux d'un logiciel ou d'un périphérique à l'autre. Des signaux : | Chaque élément (matériel ou logiciel) apparaît comme un bloc avec ses entrées à gauche et ses sorties à droite. On peut les relier les unes aux autres en tirant des liens par cliquer-glisser. Les liens peuvent ainsi conduire des signaux d'un logiciel ou d'un périphérique à l'autre. Des signaux : | ||
Ligne 112: | Ligne 125: | ||
Chaque connexion est un "//Stream//" représenté par ''source > destination''. | Chaque connexion est un "//Stream//" représenté par ''source > destination''. | ||
</note> | </note> | ||
+ | |||
+ | ==== Optimisation ==== | ||
+ | |||
+ | En [[:MAO]], on a souvent besoin de jouer le son //en temps réel//. Malheureusement le matériel électronique et les ordinateurs en particulier introduisent un problème qu'on appelle le //**temps de latence**// : il s'agit du délai qui apparaît entre le moment où on demande à la machine de reproduire un son (en appuyant sur une touche d'un clavier par exemple), et celui où le son sort effectivement des haut-parleurs.\\ | ||
+ | Il est souvent court (on l'exprime en millisecondes), mais si on peut négliger ce délai lorsqu'on appuie sur une touche play, le problème devient beaucoup plus épineux pour jouer de la batterie électronique ou pour appliquer un effet sur sa voix sans s'entendre en double.\\ | ||
+ | |||
+ | Diverses optimisations permettent de le réduire au maximum. La plus importante optimisation consiste à ajuster le //buffer// (taille du tampon) et le //sample rate// (fréquence d'échantillonnage). À ce sujet, voir //[[:mao#optimisation audio]]// sur la page //[[:MAO]]//.((Voir aussi la [[https://gitlab.freedesktop.org/pipewire/pipewire/-/wikis/Config-PipeWire#samplerate-settings|documentation officielle]].)) | ||
+ | <code> | ||
+ | pw-metadata -n settings 0 clock.force-rate <samplerate> | ||
+ | pw-metadata -n settings 0 clock.force-quantum <buffersize> | ||
+ | </code> | ||
+ | * Remplacer ''<samplerate>'' par la fréquence d’échantillonnage désirée. Plus cette taille est élevée meilleure est la qualité, plus court est la latence, mais plus haute est la consommation CPU. Les interfaces audio utilisent généralement des fréquences de 41000Hz, 48000Hz, ou 96000Hz.((Sachant que l'oreille humaine n'entends pas de fréquences supérieures à 20000Hz.)) | ||
+ | * Remplacer ''<buffersize>'' par la taille de tampon (en nombre de //samples//). Cette valeur doit être une puissance de 2. | ||
+ | ''quantum'' correspond ici à la taille de tampon (qu'on appelle généralement plutôt //buffer//). | ||
+ | <note>Pour les cartes sons USB, certaines combinaisons de framerate / buffer sont préférables à d'autres : voir sur [[https://wiki.linuxaudio.org/wiki/list_of_jack_frame_period_settings_ideal_for_usb_interface|cette page]] //(en)// les combinaisons indiquées en gras.</note> | ||
+ | |||
+ | Par exemple, pour une fréquence d’échantillonnage de 48000Hz et un tampon de 256 samples : | ||
+ | <code> | ||
+ | pw-metadata -n settings 0 clock.force-rate 48000 | ||
+ | pw-metadata -n settings 0 clock.force-quantum 256 | ||
+ | </code> | ||
+ | |||
+ | Pour vérifier les réglages : | ||
+ | <code> | ||
+ | pw-metadata -n settings | ||
+ | </code> | ||
+ | |||
+ | Pour réinitialiser les paramètres par défaut : | ||
+ | <code> | ||
+ | pw-metadata -n settings 0 clock.force-rate 0 | ||
+ | pw-metadata -n settings 0 clock.force-quantum 0 | ||
+ | </code> | ||
==== Gestionnaire de session ==== | ==== Gestionnaire de session ==== | ||
- | Le [[:mao#jack_et_les_gestionnaires_de_session|gestionnaire de session]] pour PipeWire installé par défaut sur Ubuntu est [[https://pipewire.pages.freedesktop.org/wireplumber/|WirePlumber]]. | + | Le [[:mao#gestionnaires_de_session|gestionnaire de session]] pour PipeWire installé par défaut sur Ubuntu est [[https://pipewire.pages.freedesktop.org/wireplumber/|WirePlumber]]. |
Il n'existe pour le moment pas d'interface graphique pour le gérer. | Il n'existe pour le moment pas d'interface graphique pour le gérer. | ||
Ligne 160: | Ligne 205: | ||
<code>pactl load-module module-raop-discover</code> | <code>pactl load-module module-raop-discover</code> | ||
Les appareils compatibles AirPlay visibles devraient alors apparaître comme les interfaces audio ordinaires de votre ordinateur. | Les appareils compatibles AirPlay visibles devraient alors apparaître comme les interfaces audio ordinaires de votre ordinateur. | ||
+ | |||
+ | ===== Utilisation basique en ligne de commande ===== | ||
+ | |||
+ | On peut pour cela utiliser l'utilitaire **WirePlumber** (commande ''wpctl''). | ||
+ | |||
+ | ==== Connaître le volume sonore ==== | ||
+ | |||
+ | La commande ''wpctl get-volume'' retourne une valeur numérique décimale. 0 est muet et 1 correspond au volume à 100%. Le volume peut être supérieur à 100% (par contre il a dans ce cas toutes les chances de saturer). | ||
+ | |||
+ | * Volume de la sortie principale :<code>wpctl get-volume @DEFAULT_AUDIO_SINK@</code> | ||
+ | |||
+ | * Volume du micro (entrée principale) :<code>wpctl get-volume @DEFAULT_AUDIO_SOURCE@</code> | ||
+ | |||
+ | Ces commandes retournent par exemple ''Volume: 0.85''. | ||
+ | |||
+ | ==== Régler le volume ==== | ||
+ | |||
+ | C'est la commande ''wpctl set-volume'' qui permet de définir le volume. On peut l'exprimer en nombre décimal ''1.0'' ou en pourcentage ''100%'', et en absolu ou relativement au volume actuel grâce aux signes ''+'' ou ''-''. | ||
+ | |||
+ | * Fixer le volume à 1,25 :<code>wpctl set-volume @DEFAULT_AUDIO_SINK@ 1.25</code> | ||
+ | |||
+ | * Augmenter le volume de 5% :<code>wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+</code> | ||
+ | |||
+ | * Diminuer le volume de 10% :<code>wpctl set-volume @DEFAULT_AUDIO_SINK@ 10%-</code> | ||
+ | |||
+ | * Augmenter le volume de 6% sans dépasser 130% :<code>wpctl set-volume -l 1.3 @DEFAULT_AUDIO_SINK@ 6%+</code> | ||
+ | |||
+ | ==== Mettre en sourdine (mute) ==== | ||
+ | |||
+ | La commande ''wpctl set-mute'' permet aussi bien d'activer que de désactiver la sourdine. | ||
+ | |||
+ | * Fixer le volume à 0 :<code>wpctl set-volume @DEFAULT_AUDIO_SINK@ 0</code> | ||
+ | |||
+ | * Basculer entre la sourdine et le réglage antérieur. Mettre en sourdine la sortie par défaut lorsque le volume n'est pas nul ou rétablir le volume après mise en sourdine :<code>wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle</code> | ||
+ | |||
+ | * Basculer la sourdine sur la sortie numéro ''62'' (numéro de sortie obtenu grâce à ''wpctl status'') :<code>wpctl set-mute 62 toggle</code> | ||
+ | |||
+ | * Basculer la sourdine sur l'entrée principale (généralement le micro) :<code>wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle</code> | ||
+ | |||
+ | * Mettre en sourdine la sortie principale pendant une minute :<code>wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle ; sleep 60 ; wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle</code> | ||
===== Problèmes courants ===== | ===== Problèmes courants ===== | ||
Ligne 167: | Ligne 252: | ||
* La commande <code>fuser -v /dev/snd/*</code> indique également si on utilise PipeWire et WirePlumber, ou autre serveur de son et [[#gestionnaire de session]]. | * La commande <code>fuser -v /dev/snd/*</code> indique également si on utilise PipeWire et WirePlumber, ou autre serveur de son et [[#gestionnaire de session]]. | ||
- | * Pour obtenir des informations sur votre installation audio, vous pouvez aussi [[:tutoriel:comment_installer_un_paquet|installer le paquet]] **[[apt>inxi]]** et lancer la commande : <code>inxi -A</code> | + | * Pour obtenir des informations sur votre installation audio, vous pouvez aussi [[:tutoriel:comment_installer_un_paquet|installer le paquet]] ''[[apt>inxi]]'' et lancer la commande : <code>inxi -A</code> |
* La commande <code>systemctl --user status pipewire</code> donnera aussi de nombreuses informations sur l'état du serveur. | * La commande <code>systemctl --user status pipewire</code> donnera aussi de nombreuses informations sur l'état du serveur. | ||
* La commande <code>wpctl status</code> donne un aperçu général de la configuration audio.\\ Chaque élément audio ou vidéo (matériel ou logiciel) est précédé d'un numéro qu'on peut utiliser comme identifiant (//ID//). On peut utiliser cet //ID// pour obtenir une description détaillée d'un élément précis de la manière suivante : <code>wpctl inspect ID</code> | * La commande <code>wpctl status</code> donne un aperçu général de la configuration audio.\\ Chaque élément audio ou vidéo (matériel ou logiciel) est précédé d'un numéro qu'on peut utiliser comme identifiant (//ID//). On peut utiliser cet //ID// pour obtenir une description détaillée d'un élément précis de la manière suivante : <code>wpctl inspect ID</code> | ||
+ | |||
+ | * En cas de problèmes audio comme des craquements, la commande <code>pw-top</code> permet de monitorer les processus audio, la latence de chaque interface, la charge des DSP et les décrochages audio / //[[mao#optimisation_audio|xruns]]// (colonne ''ERR'').((**(//en//)** [[https://docs.pipewire.org/page_man_pw-top_1.html|documentation de | ||
+ | pw-top]])) | ||
==== Delay Bluetooth ==== | ==== Delay Bluetooth ==== | ||
Ligne 185: | Ligne 273: | ||
===== Voir aussi ===== | ===== Voir aussi ===== | ||
- | * **(en)** [[https://pipewire.org|Site officiel]] | + | * **(//en//)** [[https://pipewire.org|Site officiel]] |
- | * **(en)** [[https://docs.pipewire.org|Documentation officielle]] | + | * **(//en//)** [[https://docs.pipewire.org|Documentation officielle]] |
- | * **(en)** [[https://gitlab.freedesktop.org/pipewire/pipewire/-/wikis/home|Wiki PipeWire]] sur [[wpfr>Freedesktop.org]] | + | * **(//en//)** [[https://pipewire.pages.freedesktop.org/wireplumber/design/understanding_session_management.html|Documentation de WirePlumber]] |
+ | * **(//en//)** [[https://gitlab.freedesktop.org/pipewire/pipewire/-/wikis/home|Wiki PipeWire]] sur [[wpfr>Freedesktop.org]] | ||
* [[https://linuxmao.org/PipeWire|PipeWire sur Linux MAO]] | * [[https://linuxmao.org/PipeWire|PipeWire sur Linux MAO]] | ||
* de nombreuses informations souvent valables aussi pour Ubuntu (mais en anglais), sur la [[https://wiki.archlinux.org/title/PipeWire|documentation de Arch Linux]] | * de nombreuses informations souvent valables aussi pour Ubuntu (mais en anglais), sur la [[https://wiki.archlinux.org/title/PipeWire|documentation de Arch Linux]] | ||
- | * **(en)** [[https://github.com/mikeroyal/PipeWire-Guide|Guide sur l'écosystème de PipeWire]] | + | * **(//en//)** [[https://github.com/mikeroyal/PipeWire-Guide|Guide sur l'écosystème de PipeWire]] |
+ | * [[https://youtu.be/lTv2jJDcPns|Cette vidéo]] en français explique PipeWire, ALSA, [[:PulseAudio]] et [[:jackd|JACK]]. À noter toutefois que PipeWire est désormais aussi performant que [[:jackd|JACK]] (depuis la sortie de la version 1), et qu'il est lui-même un //[[:services|daemon]]//. | ||
---- | ---- | ||
//Contributeurs : [[:utilisateurs:krodelabestiole]]// | //Contributeurs : [[:utilisateurs:krodelabestiole]]// |