Разработчиците на Fedora наскоро обявиха , че е планирана голяма промяна за следващата версия на Fedora 34, като всички аудио потоци от звуковите сървъри PulseAudio и JACK ще бъдат превключени към PipeWire.
Използването на PipeWire ви позволява да предложите професионални възможности за обработка на аудио в типична среда за настолно публикуване, да елиминирате фрагментацията и да обедините аудио инфраструктурата си за различни приложения.
В момента Fedora Workstation използва фоновия процес PulseAudio за обработка на аудио, а приложенията използват клиентската библиотека, за да взаимодействат с този процес, да миксират и управляват аудио потоци. Професионалната обработка на аудио използва звуковия сървър JACK и свързаната с него клиентска библиотека.
Вместо PulseAudio и JACK се предлага да се използва медиен сървър от следващо поколение PipeWire със слой за оперативна съвместимост, който ще поддържа работещи всички съществуващи клиенти и приложения на PulseAudio и JACK, доставяни във Flatpak формат.
За по-възрастни клиенти, използващи ALSA API с ниско ниво, ще бъде инсталиран плъгин ALSA, който насочва аудио потоци директно към PipeWire. Всички приложения, базирани на PulseAudio и JACK, ще могат да работят на PipeWire, без да се налага да инсталирате PulseAudio и JACK.
Това предложение е да се замени демонът PulseAudio с функционално съвместимо изпълнение, базирано на PipeWire. Това означава, че всички съществуващи клиенти, използващи PulseAudio Client Library, ще продължат да работят както преди, както и приложения, изпратени като Flatpak.
Цялото PRO аудио се обработва от клиентската библиотека JACK, която разговаря със сървъра JACK. Това предложение ще инсталира заместител на клиентска библиотека JACK, който говори директно с PipeWire. Всички съществуващи приложения за аудио жак PRO ще работят през PipeWire.
Като напомняне, PipeWire разширява възможностите на PulseAudio с видео стрийминг, обработка на аудио с ниска латентност и нов модел за сигурност за стрийминг и контрол на достъпа до устройства.
PipeWire предоставя и възможности за управление на видео източници, като например устройства за заснемане на видео, уеб камери или съдържание на екрана на приложения. Проектът е съвместим с GNOME и вече се използва широко във Fedora Linux за скрийкастинг и споделяне на екрана в Wayland-базирани среди.
PipeWire може да действа и като звуков сървър с ниска латентност с функционалност, която комбинира възможностите на PulseAudio и JACK, дори за нуждите на професионални системи за обработка на звук, за които PulseAudio не би могъл да претендира.
В допълнение, PipeWire предлага подобрен модел за сигурност , който позволява контрол на достъпа, специфичен за устройството и потока, и улеснява маршрутизирането на аудио и видео към и от изолирани контейнери.
Основни функции:
- Записвайте и възпроизвеждайте аудио и видео с минимално забавяне.
- Инструменти за обработка на видео и аудио в реално време.
- Архитектура с много нишки, която позволява споделянето на съдържание между множество приложения. Управлението и обработката на мултимедийни графики се извършва в различни процеси.
- Графичен модел за обработка на мултимедийни възли с поддръжка на цикли за обратна връзка и атомни графични актуализации.
- Разрешено е да свързвате драйвери както в сървъра, така и във външни приставки.
- Ефективен интерфейс за достъп до видео потоци чрез прехвърляне на файлови дескриптори и достъп до звук чрез споделени буфери.
- Възможността за обработка на мултимедийни данни от всеки процес.
- Наличието на приставка за GStreamer за опростяване на интеграцията със съществуващите приложения.
- Поддръжка за среда с пясъчник и Flatpak.
- Поддръжка за приставки във формат SPA (Simple Plugin API) и възможност за създаване на приставки, които работят в реално време.
- Гъвкава система за координиране на използваните мултимедийни формати и разпределяне на буфери.
Използване на един фонов процес за маршрутизиране на аудио и видео. Възможност за работа като звуков сървър, концентратор за предоставяне на видео на приложения (например за API на gnome-shell screencast) и сървър за контрол на достъпа до хардуерни устройства за улавяне на видео.
И накрая, промяната все още не е прегледана от Управляващия комитет на Fedora Engineering (FESCo), който отговаря за техническото развитие на дистрибуцията на Fedora.
Източник: https://www.mail-archive.com