PipeWire 1.2 был выпущен сегодня в качестве последней стабильной версии этого известного сервера с открытым исходным кодом для работы с аудио- и видеопотокам в Linux.
Основные моменты PipeWire 1.2 (кодовое название Aviation) включают явную поддержку метаданных синхронизации, поддержку Snap для Ubuntu и других дистрибутивов, использующих формат упаковки приложений Canonical sandboxed, поддержку обязательных метаданных при согласовании параметров буфера, а также поддержку асинхронной обработки, позволяющей планировать узлы асинхронно.
«Граф не будет ждать выхода узла, чтобы продолжить обработку, но вместо этого будет использовать выход предыдущего цикла (или молчание). Это добавляет один цикл задержки, но позволяет избежать блокировки графа обработки некоторыми узлами. Потоки и фильтры не реального времени теперь также используют эту асинхронную обработку. – объясняют разработчики
PipeWire 1.2 также добавляет модуль snapcast-discover для потоковой передачи данных на серверы snapcast, поддержку создания и использования нескольких циклов данных на сервере и клиентах, а также поддержку сродства процессора и приоритетов для циклов данных, а также реализацию концепции node.sync-group
для обеспечения совместного планирования всех узлов при запуске транспорта JACK.
Кроме того, добавлена поддержка кодеков Google OPUS, LC3-SWB и AAC-ELD для улучшения работы с аудио через Bluetooth а также поддержка конфигурации источников вещания. Модуль loopback получил поддержку up и downmixing, модуль RTP теперь поддерживает протокол управления PTP, а патчи UCM для конфликтующих устройств были объединены.
Среди других заметных изменений в PipeWire 1.2 появилась поддержка security-context, позволяющая приложениям Flatpak запрашивать у PipeWire сокет с определенными свойствами для монтирования в Flatpak, поддержка использования сервером и клиентами PipeWire нескольких потоков для параллельной обработки узлов, а также новая опция A -P
для предоставления дополнительных свойств контекста.
И, наконец, PipeWire 1.2 добавляет новый модуль для загрузки параметрического эквалайзера, поддержку локальных сервисов RAOP (Remote Audio Output Protocol), RTP и Pulse Avahi discoverers, фильтры Vulkan bit и convert, поворот камеры в узле libcamera, а также новый инструмент pw-container для запуска контекста безопасности и запуска в нем приложения.
В нем также изменен способ связывания пиров и обновления счетчиков путем возобновления работы пиров, когда узел отсоединен и еще не обработан, что должно привести к уменьшению случайных выпадений на графике при повторном подключении, а также улучшены отчеты об ошибках разбора конфигурации с указанием номера строки и столбца.
Кроме того, в этом выпуске обновлены элементы GStreamer и исправлены многие другие ошибки и улучшения, поэтому для получения более подробной информации ознакомьтесь с примечаниями к выпуску на странице проекта на GitLab, откуда вы также можете загрузить tarball с исходным кодом PipeWire 1.2, если вам захочется скомпилировать его на своих дистрибутивах Linux.
Комментарии (0)