Випуск мультимедійного сервера PipeWire 0.3.33

Опубліковано випуск проекту PipeWire 0.3.33, який розвиває мультимедійний сервер нового покоління, що йде на заміну PulseAudio. PipeWire розширює можливості PulseAudio засобами для роботи з потоками відео, можливістю обробки звуку з мінімальними затримками та новою моделлю безпеки для керування доступом на рівні окремих пристроїв та потоків. Проект підтримується в GNOME і вже за умовчанням застосовується у Fedora Linux. Код проекту написаний мовою Сі та поширюється під ліцензією LGPLv2.1.

Основні зміни в PipeWire 0.3.33:

  • Реалізовано можливість автоматичного перемикання між Bluetooth-профілями HSP (режим гарнітури) та A2DP (високоякісний висновок звуку).
  • У профілі Pro Audio покращена підтримка віртуальних джерел та пристроїв виведення звуку.
  • Поліпшено узгодження модифікаторів формату при сумісному використанні буферів прямого доступу до пам'яті (DMA-BUF) кількома клієнтами.
  • У графі мультимедійних вузлів реалізовано підтримку одночасного використання кількох частот дискретизації (за замовчуванням вимкнено).
  • У прошарку для сумісності з PulseAudio реалізовано модуль module-switch-on-connect для емуляції поведінки PulseAudio при підключенні нових пристроїв.

Нагадаємо, PipeWire розширює сферу застосування PulseAudio обробкою будь-яких мультимедійних потоків і здатний змішувати та перенаправляти потоки з відео. PipeWire також надає можливості для керування джерелами відео, такими як пристрої захоплення відео, web-камери або вміст екрана, що виводиться додатками. Наприклад, PipeWire дає можливість організувати спільну роботу кількох програм з веб-камерою і вирішує проблеми з безпечним захопленням вмісту екрана та віддаленим доступом до екрану в оточенні Wayland.

PipeWire також може виступати в ролі звукового сервера, що забезпечує мінімальні затримки та надає функціональність, що комбінує можливості PulseAudio і JACK, у тому числі враховує потреби систем професійної обробки звуку, на яку не міг претендувати PulseAudio. Крім того, PipeWire пропонує розширену модель безпеки, що дозволяє керувати доступом на рівні окремих пристроїв та конкретних потоків, і спрощує організацію прокидання звуку та відео із ізольованих контейнерів та в них. Однією з головних цілей є підтримка самодостатніх програм у форматі Flatpak і робота в графічному стеку на базі Wayland.

Основні можливості:

  • Захоплення та відтворення звуку та відео з мінімальними затримками;
  • Засоби для обробки відео та звуку в режимі реального часу;
  • багатопроцесна архітектура, що дозволяє організувати спільний доступ до контенту декількох додатків;
  • Модель обробки на основі графа мультимедійних вузлів за допомогою циклів зворотного зв'язку та атомарних оновлень графа. Допускається підключення обробників як усередині сервера, так і зовнішніх плагінів;
  • Ефективний інтерфейс доступу до відеопотоків через передачу файлових дескрипторів та доступу до звуку через спільно використовувані кільцеві буфери (shared ringbuffer);
  • можливість обробки мультимедійних даних від будь-яких процесів;
  • Наявність плагіна GStreamer для спрощення інтеграції з існуючими додатками;
  • Підтримка ізольованих оточень та Flatpak;
  • Підтримка плагінів у форматі SPA (Simple Plugin API) та можливість створення плагінів, що працюють у режимі жорсткого реального часу;
  • Гнучка система узгодження мультимедійних форматів і виділення буферів;
  • Використання одного фонового процесу для маршрутизації звуку та відео. Можливість роботи у формі звукового сервера, хаба для надання відео додатків (наприклад, для gnome-shell screencast API) та сервера для керування доступом до апаратних пристроїв захоплення відео.

Джерело: opennet.ru

Додати коментар або відгук