PipeWire 1.0 l’audio Linux raggiunge la maggiore età

Il raggiungimento della maggiore età di Linux audio con PipeWire 1.0

Pinguini Rockhopper

Un tempo (e non è passato così tanto tempo), se volevi fare lavoro audio reale con bassa latenza su Linux, dovevi affrontare seri problemi. Questo non è più vero. PipeWire 1.0, un bus di streaming software audio/video, è finalmente qui dopo 15 anni di sviluppo.

Il problema che PipeWire risolve è che, per anni, Linux ha avuto tre modi diversi – e a volte contrastanti – di gestire l’audio: Advanced Linux Sound Architecture (ALSA), PulseAudio e JACK Audio Connection Kit (JACK).

Inoltre: Ultramarine Linux Flagship è una candidata per il desktop dell’anno

ALSA fornisce driver per schede audio basati sul kernel e librerie per sviluppatori di applicazioni. PulseAudio fornisce livelli di routing e controllo audio sopra ALSA. Entrambi questi programmi hanno avuto problemi, soprattutto nei primi anni. JACK, invece, è un’API e un demone del server audio per il supporto di connessioni audio a bassa latenza in tempo reale tra applicazioni.

ALSA è uno strumento essenziale per tutto il lavoro audio su Linux. PulseAudio è rivolto principalmente ai consumatori. Quando stai ascoltando YouTube Music, Spotify o Pandora sul tuo desktop Linux, stai quasi certamente usando PulseAudio. Ma se sei un musicista professionista o un fonico, hai bisogno di JACK. PipeWire, però, funziona sia per gli utenti comuni che vogliono ascoltare la loro musica, sia per le persone che mixano sessioni audio a 24 tracce.

Ma questo doppio ruolo non era quello con cui è nato PipeWire. All’inizio, PipeWire aveva a che fare con la condivisione di flussi video tra processi. La diffusione delle applicazioni containerizzate Flatpak e di Wayland, il sostituto del sistema di finestre X11, ha portato gli sviluppatori di PipeWire a realizzare che poteva fare molto di più.

Inoltre: Questo è il mio nuovo client di posta elettronica predefinito preferito per Linux

In particolare, gli sviluppatori di PipeWire credevano che potesse risolvere i conflitti e le limitazioni di PulseAudio e JACK. Tuttavia, PipeWire non cerca solo di sostituire questi strumenti. Come ha spiegato Wim Taymans, principal software engineer di Red Hat e creatore di PipeWire, in un’intervista a Fedora Magazine interview: “Il messaggio è ancora quello di utilizzare le API di PulseAudio e JACK. Sono testate, funzionano e sono completamente supportate”.

Infatti, ha continuato Taymans: “Non abbiamo ancora visto applicazioni utilizzare la libreria WirePlumber. Credo che questo sia in parte perché la compatibilità con PulseAudio è così buona che non c’è ancora bisogno di applicazioni native”.

Oggi, PipeWire serve da ponte tra le applicazioni e i dispositivi. Fornisce un metodo universale per le applicazioni per stabilire flussi multimediali. Questi flussi possono essere indirizzati a qualsiasi dispositivo o applicazione per la riproduzione o la registrazione. Inoltre, per facilitare lo scambio di flussi, PipeWire incorpora un sistema per determinare le connessioni tra applicazioni e dispositivi, specificando il collegamento, la modalità e il timing di queste connessioni.

Inoltre: Come openSUSE Tumbleweed rappresenta un ottimo esempio per le distribuzioni Linux with rolling release

PipeWire è già il server audio predefinito per le nuove distribuzioni desktop Linux, come Fedora Linux, Pop! OS, Ubuntu e openSUSE. Non ho dubbi che PipeWire presto sarà presente in tutte le distro Linux.

Per aiutarti con l’utilizzo di PipeWire, Collabora, l’azienda di supporto e consulenza per Linux e open source, mette a disposizione WirePlumber come gestore di sessione per i media pipeline di PipeWire. Per maggiori informazioni su come sfruttare al meglio PipeWire, visita il sito di LinuxMusicians e il forum Reddit di LinuxAudio.