Команда PipeWire объявила о выпуске PipeWire 1.4, которая предоставляет множество новых функций и улучшает производительность этого широко распространенного мультимедийного сервера Linux, управляющего аудио- и видеопотоками. Новая версия сохраняет совместимость по API и ABI со всеми предыдущими версиями 1.2.x и 1.0.x.
Начнем с того, что client-rt.conf
больше не существует. Отныне все клиенты будут полагаться на client.conf
, предоставляя им приоритет реального времени в потоках данных. Еще одно впечатляющее дополнение – поддержка UMP (MIDI2), который теперь является форматом по умолчанию для работы с MIDI1 и MIDI2.
Удобные вспомогательные функции включены для преобразования устаревших MIDI и UMP. Кроме того, ресемплер подвергся значительной оптимизации, включая поддержку предварительного вычисления общих фильтров преобразования во время компиляции, а также улучшенную отчетность о задержках.
Далее, в релизе расширены возможности Bluetooth за счет поддержки широковещательных каналов BAP и слуховых аппаратов, использующих ASHA. В пакет также входит новый кодек G722, а также улучшенные функции отчетности и настройки задержек.
Поклонники аудио высокого разрешения будут рады узнать, что плагин ALSA теперь поддерживает воспроизведение DSD, если это позволяет свойство alsa.formats
. Кроме того, был добавлен API для управления PipeWire JACK, что обеспечивает большее удобство для тех, кто соединяет JACK и PipeWire.
Также были добавлены различные плагины фильтров (например, EBUR128, param_eq, dcblock), а если вам нужна свертка, PipeWire может опционально использовать fftw для решения этой задачи. Плагин audioconvert получил немного оптимизации, и теперь он может добавлять дополнительные фильтр-графы в конвейер обработки.
Для разработчиков, тесно работающих с JSON, появились совершенно новые вспомогательные функции для более элегантного разбора описаний формата JSON. Кроме того, была интегрирована поддержка процессоров RISCV, а также доступны новые оптимизации ассемблера для тех, кто ориентируется на эту архитектуру.
Любители продвинутой интеграции телефонии будут рады увидеть в PipeWire 1.4 новый Telephony D-Bus API (совместимый с ofono). Более того, многопоточные задачи получают преимущества от улучшений в очередях вызовов, которые позволяют использовать параллелизм без риска возникновения путаницы или ошибок.
Что касается v4l2, то информация о часах была доработана, а для преобразования видеопотоков вместе с видеоадаптером можно использовать плагин видеоконвертации на основе ffmpeg. Элементы GStreamer также были усовершенствованы для лучшей работы с пулом буферов и согласования скорости, что привело к более плавному захвату и воспроизведению.
Модуль combine-stream теперь поддерживает смешивание нескольких потоков, а модуль netjack-manager помогает пользователям настраивать соединения более интуитивно, автоматически подключая потоки. Новые функции в native-protocol позволяют использовать абстрактные сокеты, что повышает гибкость. Сервер pulse получил такие улучшения, как поддержка блокировки воспроизведения и захвата в pulse.rules
.
К слову о потоковой передаче, плагин источника RTP теперь включает удобный режим ожидания, который экономит ресурсы, когда данные не передаются, а также может использовать синхронизацию PTP. Приемник VBAN теперь динамически создает потоки при их обнаружении, что делает сетевое аудио более удобным.
Подробнее обо всех изменениях в новой версии читайте в журнале изменений.
Комментарии (0)