Wersja 0.3.33 serwera multimediów PipeWire

Opublikowano wydanie projektu PipeWire 0.3.33 rozwijającego serwer multimedialny nowej generacji, zastępujący PulseAudio. PipeWire rozszerza PulseAudio o strumieniowanie wideo, przetwarzanie dźwięku o niskim opóźnieniu i nowy model bezpieczeństwa dla kontroli dostępu na urządzeniu i na strumieniu. Projekt jest utrzymywany na środowisku GNOME i jest już domyślnie używany w Fedorze Linux. Kod projektu napisany jest w języku C i rozpowszechniany na licencji LGPLv2.1.

Główne zmiany w PipeWire 0.3.33:

  • Wprowadzono możliwość automatycznego przełączania pomiędzy profilami Bluetooth HSP (tryb zestawu słuchawkowego) i A2DP (wysokiej jakości wyjście audio).
  • Profil Pro Audio ma lepszą obsługę wirtualnych źródeł dźwięku i urządzeń wyjściowych.
  • Ulepszona negocjacja modyfikatora formatu podczas współdzielenia buforów bezpośredniego dostępu do pamięci (DMA-BUF) między wieloma klientami.
  • Na grafie węzłów multimedialnych zaimplementowano obsługę jednoczesnego wykorzystania wielu częstotliwości próbkowania (domyślnie wyłączona).
  • Warstwa kompatybilności PulseAudio implementuje moduł włączania modułu, który emuluje zachowanie PulseAudio po podłączeniu nowych urządzeń.

Przypomnijmy, że PipeWire rozszerza zakres PulseAudio o przetwarzanie dowolnych strumieni multimedialnych oraz umożliwia miksowanie i przekierowywanie strumieni wideo. PipeWire zapewnia także opcje zarządzania źródłami wideo, takimi jak urządzenia do przechwytywania wideo, kamery internetowe lub zawartość ekranu wyświetlaną przez aplikacje. Na przykład PipeWire umożliwia współpracę wielu aplikacji z kamerą internetową i rozwiązuje problemy z bezpiecznym przechwytywaniem ekranu i zdalnym udostępnianiem ekranu w środowisku Wayland.

PipeWire może również pełnić funkcję serwera audio o niskim opóźnieniu i zapewniać funkcjonalność łączącą w sobie moc PulseAudio i JACK, w tym uwzględniającą potrzeby profesjonalnych systemów przetwarzania dźwięku, czego PulseAudio nie mógł sobie zapewnić. Ponadto PipeWire oferuje zaawansowany model bezpieczeństwa, który umożliwia zarządzanie dostępem dla poszczególnych urządzeń i strumieni, ułatwiając kierowanie sygnału audio i wideo z i do izolowanych kontenerów. Jednym z głównych celów jest obsługa samodzielnych aplikacji w formacie Flatpak i praca w stosie graficznym opartym na Wayland.

Najważniejsze cechy:

  • Przechwytuj i odtwarzaj dźwięk i wideo z minimalnymi opóźnieniami;
  • Narzędzia do przetwarzania obrazu i dźwięku w czasie rzeczywistym;
  • Architektura wieloprocesowa umożliwiająca współdzielenie zawartości kilku aplikacji;
  • Model przetwarzania oparty na grafie węzłów multimedialnych z obsługą pętli sprzężenia zwrotnego i atomową aktualizacją wykresu. Dopuszczalne jest podłączanie handlerów zarówno wewnątrz serwera jak i zewnętrznych wtyczek;
  • Wydajny interfejs dostępu do strumieni wideo poprzez przesyłanie deskryptorów plików i dostępu do dźwięku poprzez współdzielone bufory pierścieniowe;
  • Możliwość przetwarzania danych multimedialnych z dowolnych procesów;
  • Obecność wtyczki do GStreamera upraszczającej integrację z istniejącymi aplikacjami;
  • Wsparcie dla izolowanych środowisk i Flatpak;
  • Obsługa wtyczek w formacie SPA (Simple Plugin API) oraz możliwość tworzenia wtyczek pracujących w trudnym czasie rzeczywistym;
  • Elastyczny system negocjacji używanych formatów multimedialnych i przydziału buforów;
  • Używanie pojedynczego procesu w tle do kierowania dźwięku i obrazu. Możliwość pracy jako serwer dźwięku, koncentrator dostarczający wideo do aplikacji (na przykład dla API screencastu powłoki gnome) oraz serwer do kontrolowania dostępu do urządzeń przechwytujących wideo.

Źródło: opennet.ru

Dodaj komentarz