Достъпен е мултимедиен сървър PipeWire 0.3, заменящ PulseAudio

Публикувано значителен релиз на проекта PipeWire 0.3.0, разработваща мултимедиен сървър от ново поколение, който заменя PulseAudio. PipeWire разширява възможностите на PulseAudio с инструменти за работа с видео потоци, възможност за обработка на звука с минимални закъснения и нова модел за сигурност за управление на достъпа на ниво отделни устройства и потоци. Проектът се поддържа в GNOME и вече активно се използва в Fedora Linux за запис на съдържание на екрана (screencasting) и споделяне на екран в среди базирани на Wayland. Кодът на проекта е написан на езика C и разпространява под лицензия LGPLv2.1.

Основни промени в PipeWire 0.3:

  • Напълно преработен е планировчикът за обработка на потоци. Промените позволиха пускането на слой за осигуряване на съвместимост със звуковия сървър JACK, чиято производителност е сравнима с JACK2.
  • Преработен и обявен за стабилен API. Всички бъдещи промени в API ще се извършват без нарушаване на обратната съвместимост с настоящите приложения.
  • Включен е мениджър на сесии, който позволява управление на графа на мултимедийните възли в PipeWire, както и добавяне на нови потоци. В момента мениджърът предлага само най-основните функции и в бъдеще ще бъде разширен или заменен с по-функционален и гъвкав вариант, като WirePlumber.
  • Подобрени са библиотеките за осигуряване на съвместимост с PulseAudio, JACK и ALSA, позволяващи използването на PipeWire с настоящи приложения, предназначени за работа с други звукови системи. Библиотеката за ALSA вече е почти напълно готова, но библиотеките за JACK и PulseAudio все още изискват доработка. PipeWire все още не е готов за пълна замяна на PulseAudio и JACK, но в следващите версии въпросите на съвместимостта ще бъдат приоритетно разглеждани.
  • Включени са някои GStreamer плъгини за взаимодействие с PipeWire. Плъгинът pipewiresrc, използващ PipeWire като източник на звук, в повечето случаи работи без проблеми. Плъгинът pipewiresink за изведене на звук чрез PipeWire все още не е без известни проблеми.
  • Подкрепата на PipeWire 0.3 интегрирана в прозоречния мениджър Mutter, разработван от проекта GNOME.

Напомняме, че PipeWire разширява приложението на PulseAudio, обработвайки всякакви мултимедийни потоци и е способен да смесва и пренасочва потоци с видео. PipeWire също така предоставя възможности за управление на източниците на видео, като устройства за захващане на видео, уеб камери или съдържание на екрана, генерирано от приложения. Например, PipeWire дава възможност за съвместна работа на няколко приложения с уеб камера и решава проблемите с безопасното захващане на съдържание на екрана и отдалечения достъп до екрана в среда на Wayland.

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

Основни възможности:

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

Източник: opennet.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster