LINUX.ORG.RU

Представлен мультимедийный сервер PipeWire, идущий на смену PulseAudio

 , ,


6

3

Кристиан Шаллер (Christian Schaller), возглавляющий группу по развитию десктоп-систем в компании Red Hat и Fedora Desktop Team, официально анонсировал проект PipeWire, в рамках которого развивается мультимедийный сервер нового поколения, расширяющий возможности PulseAudio средствами для обработки потоков видео, и в будущем идущий на замену PulseAudio. Первым этапом внедрения станет поставка PipeWire в Fedora 27 для обработки видео, в то время как PulseAudio пока продолжит применяться для звука. Код проекта написан на языке Си и распространяется под лицензией LGPLv2.1.

Изначально проект развивался одним из создателей фреймворка GStreamer под именами PulseVideo и Pinos (в честь испанского города), но позднее было выбрано более подходящее имя. PipeWire расширяет область применения PulseAudio обработкой любых мультимедийных потоков и способен смешивать и перенаправлять потоки с видео. PipeWire также предоставляет возможности для управления источниками видео, такими как устройства захвата видео, web-камеры или выводимое приложениями содержимое экрана. Например, PipeWire позволяет организовать совместную работу нескольких приложений с веб-камерой и решает проблемы с безопасным захватом содержимого экрана и удалённым доступом к экрану в окружении Wayland.

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

Основные возможности:

  • захват и воспроизведение звука и видео с минимальными задержками;
  • средства для обработки видео и звука в режиме реального времени;
  • многопроцессная архитектура, позволяющая организовать совместный доступ к контенту нескольких приложений;
  • модель обработки на основании графа мультимедийных узлов с поддержкой циклов обратной связи и атомарных обновлений графа;
  • возможность подключение обработчиков как внутри сервера, так и внешних плагинов;
  • эффективный интерфейс доступа к видеопотокам через передачу файловых дескрипторов и доступа к звуку через совместно используемые кольцевые буферы (shared ringbuffer);
  • возможность обработки мультимедийных данных от любых процессов;
  • наличие плагина к GStreamer для упрощения интеграции с существующими приложениями;
  • поддержка изолированных окружений и Flatpak;
  • поддержка плагинов в формате SPA (Single Page Application) и возможность создания плагинов, работающих в режиме жесткого реального времени;
  • гибкая система согласования используемых мультимедийных форматов и выделения буферов;
  • использование одного фонового процесса для маршрутизации звука и видео, а также возможность работы в форме звукового сервера, хаба для предоставления видео приложениям (например, для gnome-shell screencast API) и сервера для управления доступом к аппаратным устройствам захвата видео.

>>> Подробности

развивался одним из создателей фреймворка GStreamer под именами PulseVideo и Pinos

Pinos

Лучше бы остался под таким названием.

Вообще звучит неплохо. Не название, а описание проекта. Но мне вот интересно, эти «гениальные» инженеры редхата будут вручную в каждом приложении добавлять поддержку их нескучного API? Я абсолютно уверен, это поделие с наполеонскими планами не будет предоставлять реализацию API PulseAudio, например.

a1batross ★★★★★ ()

у нас есть 13 стандартов, давайте изобретем 14-й.

Но пульсу закопать однозначно!

leg0las ★★★★★ ()
Последнее исправление: leg0las (всего исправлений: 1)

Во, в линуксах опять всё переписывают.

fornlr ★★★★★ ()

Использование одного фонового процесса для маршрутизации звука и видео

Как же они задолбали со своими фоновыми процессами.

anonymous ()

Поддержка плагинов в формате SPA (Single Page Application)

Шта? Теперь в звуковом сервере есть встроенный браузер?

Deleted ()
Ответ на: комментарий от a1batross

Я абсолютно уверен, это поделие с наполеонскими планами не будет предоставлять реализацию API PulseAudio, например.

There is still a goal to somehow offer ABI compatability with Pulse Audio, but the exact form of that is not decided yet, multiple approaches are being discussed, like for example keeping the current API implementation and just putting Pipewire in behind it.

anonymous ()

Еще один комбайн, линукс катится в СГ

anonymous ()
Ответ на: комментарий от mx__

Т.е. то что накропал Поттеринг оказалось не тру ?

Да, Pulse_Audio_ оказался не очень-то пригоден для _видео_. Удивительно, что ты заметил.

AP ★★★★★ ()
Последнее исправление: AP (всего исправлений: 1)

Многопроцессная архитектура, позволяющая организовать
совместный доступ к контенту нескольких приложений;
Допускается подключение обработчиков как внутри сервера, > > так и внешних плагинов;
Эффективный интерфейс доступа к видеопотокам через передачу > файловых дескрипторов и доступа к звуку через совместно
используемые кольцевые буферы (shared ringbuffer);
Возможность обработки мультимедийных данных от любых
процессов;

Это стоит рассматривать как ответ Шапки на внедрение ДРМ в браузеры ?

mx__ ★★★★★ ()
Ответ на: комментарий от AP

Да, Pulse_Audio_ оказался не очень-то пригоден для _видео_.
Удивительно, что ты заметил.

судя по описанию они аудио тоже прихватывают. Хотя могли просто расширить нужными плагинами Пульсу-Аудио и изменить ЕГО название.

mx__ ★★★★★ ()
Ответ на: комментарий от Pinkbyte

И? Его кто покупает? Тем более в варианте Desktop (не Workstation) он предоставляется без поддержки. Это уже попахивает деятельностью Остапа Бендера.

te111011010 ()
Ответ на: комментарий от te111011010

И? Его кто покупает? Тем более в варианте Desktop (не Workstation) он предоставляется без поддержки. Это уже попахивает деятельностью Остапа Бендера.

Продукт есть - значит он компании его выпускающей интересен. Иначе его бы закопали. А насчет твоих вопросов - я хз, я в RedHat не работаю, спрашивай у более сведущих людей

Pinkbyte ★★★★★ ()
Ответ на: комментарий от mx__

Да, не работает с видео. Фатальный недостаток. Ну и в lowlatency не умеет

Sunderland93 ★★★★★ ()
Ответ на: комментарий от a1batross

Не название, а описание проекта. Но мне вот интересно, эти «гениальные» инженеры редхата будут вручную в каждом приложении добавлять поддержку их нескучного API?

Этот API совместим с GStreamer, в будущем появится полная совместимость с пульсой

Sunderland93 ★★★★★ ()
Ответ на: комментарий от anonymous

А, ну и отлично. Главное чтобы не начали делать своё. Лучше расширять существующее без потери совместимости, пока это ещё возможно. А только потом напиливать новые API, оглянувшись назад и продумав всё возможное.

Sunderland93, какой ужас. Ещё и без того отвратительный гстример сюда привлекать.

a1batross ★★★★★ ()
Ответ на: комментарий от a1batross

у говнстримера апи не так уж плох, а вот совместимость, настраиваемость и качество бэкендов страдает.

mittorn ★★★★★ ()
Ответ на: комментарий от mittorn

Я вот о последнем как раз. Сколько их там в системе? Как минимум два: 0.1x, 1.x. И на каждый ещё свой набор либ.

Апи там обычное, в сишном стиле.

a1batross ★★★★★ ()
Ответ на: комментарий от a1batross

У меня только 0.10, 1.0 пока никому не понадобился

mittorn ★★★★★ ()
Ответ на: комментарий от Deleted

А ты думал. Это теперь становится стандартом де-факто для любых графических приложений, готовь анус. Лет через 8 хомячки с полным стеком Electron-приложений будут презрительно смерять взглядом ретроградов-нищебродов со всякими GTK+/Qt/EFL/SWT, как пользователи оных сейчас смотрят на всякие Tk/FLTK/Motif.

bodqhrohro_promo ()
Ответ на: комментарий от bodqhrohro_promo

И для аудио без задержек.

Без задержек физически невозможно.

AP ★★★★★ ()
Ответ на: комментарий от Odalist

Ага, разбежался

Гном как скажет, что без вяленного и пиноса не работает, так все дистры как миленькие и обмажутся новинками

Gary ★★★★★ ()

Pinos

Эти вместе с «Pidora» названия придумывают?

Вот сейчас PipeWire хвалить будут, а выйдет потом какая-нибудь штука, что на замену PipeWire придёт, и его (PipeWire) какахами закидают.

awesomelackware ()
Ответ на: комментарий от mx__

Т.е. то что накропал Поттеринг оказалось не тру?

Совершенно верно.

1. Идея с микшированием в большой буфер (т.е. надолго вперед по времени) в предположении, что ничего неожиданного не произойдет, и отмоткой и перемикшированием, если таки появится новый клиент или изменится громкость, была признана негодной. По задумке, это помогло бы сберегать батарейку за счет более редких пробуждений процессора. По факту, идея оказалась плохо совместима с обработкой звука - до сих пор нет открытой реализации ресемплера, состояние которой можно откатывать назад (т.е. говорить «ой, последние 10000 семплов посланы исходя из неверных предположений, вот правильная замена»).

2. Отсутствие публичного API для написания расширений означает, что разработчики обязаны брать ответственность за все модули. Даже за те, принцип работы которых до конца не понимают (типа эквалайзера). Т.е. нет возможности вынести сырые и непонятные модули в «не наш проект». А давление по поводу их включения есть.

3. Полностью проваленные переговоры о починке или выкидывании Flat Volumes - большинство дистрибутивов сейчас выключает эту принципиально неработоспособную фичу, но выкинуть ее из проекта невозможно, пока есть хотя бы один разработчик, выступающий за нее. Понимаю, что проблема не столько с кодом, сколько с сообществом.

AEP ★★★★★ ()
Ответ на: комментарий от awesomelackware

Вот сейчас PipeWire хвалить будут, а выйдет потом какая-нибудь штука, что на замену PipeWire придёт, и его (PipeWire) какахами закидают.

Более совершенная технология вытесняет менее совершенную. Всегда так будет. PipeWire заменит Пульс и остальное, D-BUS Broker заменит обычный D-BUS, systemd заменил.....ну суть понятна в общем. И лет через 15 появится более лучшая альтернатива, и также заменит существующую

Sunderland93 ★★★★★ ()

Ахаха, узнаю линукс. Всё сломать, всё переписать, недописать, опять переписать... И так по кругу.

IPR ★★★★★ ()
Ответ на: комментарий от Deleted

Шта? Теперь в звуковом сервере есть встроенный браузер?

Ну видно же, что веб-макака новость оформляла. О чём слышал, о том и пишет. Simple Plugin API там.

Ivan_qrt ★★★★★ ()
Ответ на: комментарий от IPR

Будто что-то плохое. Люди пробуют, экспериментируют, разрабатывают, а время расставляет всё на свои места. Перспективная технология всегда вытеснит неперспективную, как только та перестанет быть перспективной

Sunderland93 ★★★★★ ()

Это может служить заменой jack?

Или просто призван но решать самую крупную проблему вяленого — отсутствия единого api для видеозахвата и записи скринкастов?

energetix_user ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.