PipeWire 1.4: нова версія з покращеною підтримкою RISC-V, Bluetooth і JACK

Логотип PipeWire

Це було оголошено Випущена нова версія PipeWire 1.4, який з’являється після восьми місяців розробки та містить нову серію вдосконалень та оптимізацій.

Цей мультимедійний сервер, який став наступником PulseAudio, вирізняється не лише розширеним керуванням звуком із низькою затримкою, але й здатністю обробляти відеопотоки та фокусом на безпеці та контролі доступу.

Ключові нові функції PipeWire 1.4

Безсумнівно, одним із чудових удосконалень цієї нової версії PipeWire 1.4 є Удосконалення підтримки систем RISC-V, зростаюча архітектура у світі відкритого обладнання. Тепер є покращена підтримка процесорів RISCV і нова оптимізація асемблера для покращення продуктивності на цих пристроях.

Крім того, PipeWire тепер містить власну реалізацію сервера JACK, називається pipewire_jackserver, який дозволяє користувачам використовувати PipeWire JACK Control API. Це полегшує інтеграцію з професійними програмами, які покладаються на комплект аудіопідключення Jack (JACK) для розширеного керування аудіопідключенням.

Також покращено підтримку MIDI 2.0.або з реалізацією Universal MIDI Packet (UMP), який оптимізує передачу даних і перетворення між старими та новими форматами.

Що стосується Bluetooth, PipeWire Тепер ви можете надсилати аудіо на кілька пристроїв одночасно, завдяки реалізації базового аудіопрофілю (BAP), який оптимізує обробку аудіо в Bluetooth Low Energy (LE). Його також додано Сумісність зі слуховими апаратами ASHA (Потокове аудіо для слухових апаратів), покращення затримки та додавання підтримки кодека G722.

Інше покращення, яке представляє PipeWire 1.4, полягає в тому, що Конфігурація “client-rt.conf” більше не існує. Ну відтепер, Усі клієнти залежатимуть від “ client.conf ”, що надасть їм пріоритет у ваших потоках даних у реальному часі.

З боку Покращення модуля, згадується, що модульo ROC має більше параметрів конфігурації, поки модуль SAP тепер надсилає лише SDP оновлюється, коли щось змінюється і модуль netjack-manager підтримує автоматичне підключення потоків.

Інші вдосконалення Найкращі

  • Підтримка DSD в ALSA: Додано підтримку відтворення формату Direct Stream Digital (DSD) у звуковій системі ALSA.
  • Новий API телефонії: Інтегровано підтримку oFono, що полегшує керування звуком під час дзвінків.
  • Оптимізація перетворення відео: Новий плагін на основі FFmpeg покращує перетворення відео в PipeWire.
  • Більше контролю над правилами відтворення та захоплення: Тепер можна заблокувати відтворення або запис аудіо за допомогою правил у pulse.rules.
  • Покращення HDMI: Оптимізовано виявлення підтримуваних кодеків, таких як PCM, AC3, EAC3 і TrueHD, за допомогою інформації EDID HDMI.
  • Покращена інформація про годинник: Версія v4l2 тепер пропонує більш точні дані годинника, що є важливим для синхронізації відео та аудіо.
  • Конвертація відеопотоків: можливо використовувати плагін перетворення на основі ffmpeg у поєднанні з відеоадаптером для ефективного перетворення потоку.
  • Нативний протокол підтримує абстрактні сокети.
  • Сервер Pulse підтримує блокування відтворення та захоплення в pulse.rules.
  • Заблокований стан потоку тепер правильно повідомляється на імпульсному сервері.
  • Виправлено зворотне сальто в імпульсному сервері.
  • Додано підтримку параметрів затримки loopback і raop-sink.
  • Джерело RTP тепер має режим очікування, коли воно не працює, коли дані не надходять.
  • Додано підтримку часу PTP для потоків RTP.
  • Приймач VBAN тепер може динамічно створювати потоки, якщо їх виявлено.
  • Покращено повідомлення про помилки під час створення посилань.
  • Підтримка повернення (скасування) буфера без черги в pw-stream.
  • Додано підтримку випромінювання подій у pw-stream.
  • pw-cat тепер підтримує stdin і stdout.

Нарешті, якщо ви зацікавлені в тому, щоб дізнатися більше про це, ви можете ознайомитися з деталями в наступне посилання.

Варто зазначити, що PipeWire зараз використовується в більшості поточних дистрибутивів Linux, і якщо вам потрібно знати, чи є у вас PipeWire, просто запустіть:

pipewire --version