Автор Тема: PipeWire - новый мультимедийный сервер  (Прочитано 19494 раз)

Оффлайн vita

  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4803
  • Да будет свет!
PipeWire - новый мультимедийный сервер
« : 17 Октября 2021, 22:20:18 »
PipeWire - это проект, направленный на значительное улучшение обработки аудио и видео в Linux. Он предоставляет графический процессор с малой задержкой поверх аудио- и видеоустройств, который можно использовать для поддержки сценариев использования, которые в настоящее время обрабатываются как pulseaudio, так и JACK. PipeWire был разработан с использованием мощной модели безопасности, которая упрощает взаимодействие с аудио- и видеоустройствами из контейнерных приложений, при этом поддержка приложений Flatpak является основной целью. Мы ожидаем, что PipeWire, наряду с Wayland и Flatpak, станет основным строительным блоком для разработки приложений Linux в будущем.
Заявленные возможности:
  • Захват и воспроизведение аудио и видео с минимальной задержкой.
  • Обработка мультимедиа аудио и видео в реальном времени.
  • Многопроцессорная архитектура, позволяющая приложениям обмениваться мультимедийным контентом.
  • Полная поддержка приложений PulseAudio, JACK, ALSA и GStreamer.
  • Поддержка изолированных приложений. См. Flatpak для получения дополнительной информации.
PipeWire - это бесплатное программное обеспечение, которое разрабатывается открыто. Оно было создано Вимом Таймансом, главным инженером Red Hat и соавтором мультимедийной среды GStreamer. Код можно найти на GitLab.
О выпуске PipeWire 0.3.33 сообщается на сайте OpenNET.
В описании новшеств Xubuntu 21.10 значится:
Цитата: OpenNET
Интегрирован мультимедийный сервер Pipewire, который используется в сочетании с PulseAudio.
Проект молодой, поэтому в ранних версиях было много багов. Лоровцы активно обсуждали тему Есть ли жизнь на Pipewire? Пробуем, делимся.
Пока применение PipeWire слабо освещено.
Последние версии inxi показывают наличие / отсутствие в системе нового сервера, например, так:
inxi -A
Audio:     Device-1: Intel Celeron N3350/Pentium N4200/Atom E3900 Series Audio Cluster driver: snd_hda_intel
           Sound Server-1: ALSA v: k5.11.0-38-generic running: yes
           Sound Server-2: PulseAudio v: 14.2 running: yes
           Sound Server-3: PipeWire v: 0.3.24 running: yes

Самые последние версии PipeWire можно получить из репозитория ppa:pipewire-debian/pipewire-upstream для Ubuntu 18.04+.
sudo add-apt-repository ppa:pipewire-debian/pipewire-upstream -y
Делай с нами, делай как мы, делай лучше нас!

Оффлайн vita

  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4803
  • Да будет свет!
Re: PipeWire - новый мультимедийный сервер
« Ответ #1 : 22 Мая 2022, 00:58:48 »
Более развёрнутая документация о PipeWire размещена на русскоязычной ArchWiki. Имеется GUI под именем Helvum — GTK обёртка для pipewire, но, к сожалению, для Ubuntu он представлен только в формате flatpak.

Для представления интерфейса Helvum нашёлся скриншот из этой статьи:

« Последнее редактирование: 22 Мая 2022, 20:24:17 от vita »
Делай с нами, делай как мы, делай лучше нас!

Оффлайн vita

  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4803
  • Да будет свет!
Re: PipeWire - новый мультимедийный сервер
« Ответ #2 : 23 Мая 2022, 18:54:36 »
Своим опытом как использовать мультимедийный сервер PipeWire вместо PulseAudio в Ubuntu 22.04 поделился известный блоггер Ji m.
Комментарии к статье неоднозначны, да и сам автор не советует использовать свои рекомендации на рабочей машине.
Делай с нами, делай как мы, делай лучше нас!

Оффлайн alv

  • Ветеран
  • *****
  • Сообщений: 1470
  • Это я и есть
    • Наш Блогосайт
Re: PipeWire - новый мультимедийный сервер
« Ответ #3 : 24 Мая 2022, 07:09:06 »
сам автор не советует использовать свои рекомендации на рабочей машине.
Разве это не достаточная "рекомендации"?
Впрочем, для меня уже фраза из Вашего стартового топика была достаточной:
Цитировать
PipeWire, наряду с Wayland и Flatpak, станет основным строительным блоком для разработки приложений Linux в будущем.
Напомнило, кстати, как в Линуксформате, покойном, было интервью с Кейтом Паккардом. Там он долго говорил о том, какое будет счастье пользователю, когда они доведут до ума свой Wayland. А под занавес на вопрос интервьюера, что испольpует сам, скромно так ответил: TWM (может, кто ещё помнит, что это такое).
Что, в свою очередь, наводит на мысль о модном враче, который всем своим пациентам прописывает дорогие патентованные лекарства. А сам при любом насморке бежит к бабке-захарке в деревню...
За прекрасных дам!

Оффлайн vita

  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4803
  • Да будет свет!
Re: PipeWire - новый мультимедийный сервер
« Ответ #4 : 24 Мая 2022, 12:02:41 »
Алексей, Ваш искромётный юмор, как часто бывает, бъёт точно в цель  :)
Делай с нами, делай как мы, делай лучше нас!

Оффлайн alv

  • Ветеран
  • *****
  • Сообщений: 1470
  • Это я и есть
    • Наш Блогосайт
Re: PipeWire - новый мультимедийный сервер
« Ответ #5 : 25 Мая 2022, 10:47:33 »
Алексей, Ваш искромётный юмор, как часто бывает, бъёт точно в цель  :)
Таня, это скорее сарказм. К сожалению, окружающая среда даёт для него всё больше повода.
За прекрасных дам!

Оффлайн vita

  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4803
  • Да будет свет!
Re: PipeWire - новый мультимедийный сервер
« Ответ #6 : 25 Июня 2022, 22:48:04 »
WirePlumber (в переводе Проволочный сантехник) — это модульный менеджер сессий/политик для PipeWire и высокоуровневая библиотека на основе GObject, обертывающая API PipeWire, обеспечивающая удобство написания модулей демона, а также внешних инструментов для управления PipeWire. Этот пакет содержит демон WirePlumber и утилиты командной строки. Графического интерфейса пока нет.
В репозитории Ubuntu уже есть пакеты wireplumber для 22.04 и 22.10.
Делай с нами, делай как мы, делай лучше нас!

Оффлайн vita

  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4803
  • Да будет свет!
Re: PipeWire - новый мультимедийный сервер
« Ответ #7 : 10 Марта 2023, 12:49:21 »
Статья Магия pipewire знакомит с актуальными решениями ввода и вывода звука в Linux.



В настоящее время актуальными системами реализации звука в Linux принято считать:
  • ALSA — это одна из старейших звуковых подсистем ядра Linux, которая по своей сути является встроенным звуковым драйвером на уровне ядра Linux. Обеспечивает минимальные задержки, но очень капризна при работе c современными беспроводными устройствами и с несколькими звуковыми потоками.
  • PulseAudio — звуковой сервер/ретранслятор расположенный между ядром системы и физическими устройствами ввода и вывода звука. Позволяет управлять множеством звуковых потоков, изменять их частоту, работать с беспроводными устройствами. В общем, лишён почти всех недостатков ALSA, но прилично искажает изначальный сигнал и имеет весомые задержки.
  • Pipewire — современная реализация звукового сервера/ретранслятора, что по принципу работы полностью аналогичен PulseAudio. Лишён почти всех недостатков Pulseaudio и имеет обширную совместимость с множеством устройств прямо из коробки.
Помимо звукового драйвера ядра ALSA акцент в статье делается на самый современный и качественный звуковой сервер Pipewire.
Pipewire — радиосервер.
Pipewire-alsa — модуль расширения для перехвата запросов ALSA в pipewire.
Pipewire-pulse — модуль расширения для перехвата запросов PulseAudio в pipewire.
Pipewire-jack — модуль расширения для перехвата запросов jack в pipewire (уменьшение задержки).
Делай с нами, делай как мы, делай лучше нас!

Оффлайн vita

  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4803
  • Да будет свет!
Re: PipeWire - новый мультимедийный сервер
« Ответ #8 : 27 Ноября 2023, 01:45:25 »
Опубликован выпуск мультимедийного сервера PipeWire 1.0.0, который отмечен как первый стабильный релиз, ознаменовавший зрелость проекта. На уровне API и ABI версия 1.0 обратно совместима с веткой 0.3. PipeWire позиционируется как сервер, идущий на смену звуковому серверу PulseAudio и отличается от него добавлением средств для работы с потоками видео, возможностью обработки звука с минимальными задержками и новой моделью безопасности для управления доступом на уровне отдельных устройств и потоков. Проект поддерживается в GNOME и уже по умолчанию применяется в Fedora Linux, RHEL, Ubuntu, Debian, SUSE/openSUSE и многих других дистрибутивах Linux. Код проекта написан на языке Си и распространяется под лицензией LGPLv2.1.
Подробности на сайте OpenNET
Делай с нами, делай как мы, делай лучше нас!

Оффлайн vita

  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4803
  • Да будет свет!
Re: PipeWire - новый мультимедийный сервер
« Ответ #9 : 10 Декабря 2023, 01:29:29 »
В репозитории Ubuntu 23.04+ для PipeWire на базе Qt6 включены пакеты qpwgraph. Это пользовательский интерфейс для управления PipeWire Graph
Делай с нами, делай как мы, делай лучше нас!

Оффлайн ivm

  • Ветеран
  • *****
  • Сообщений: 3071
  • Что бы ни случилось, всё будет хорошо!
Re: PipeWire - новый мультимедийный сервер
« Ответ #10 : 10 Декабря 2023, 12:20:47 »
Сравнил звучание в PipeWire с Pulse Audio. С PipeWire красочно-объёмное, в старом варианте как-то плоско-примитивно. Тестировал на акустике Sven 103 + USB звуковая карта. Разница велика.

Оффлайн vita

  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4803
  • Да будет свет!
Re: PipeWire - новый мультимедийный сервер
« Ответ #11 : 07 Апреля 2024, 15:10:54 »
В связи с полным переходом на сервер PipeWire в тестируемой сборке на основе Ubuntu 24.04 в среде Mate громкость звука регулируется индикатором Ayatana (ayatana-indicator-sound). Чтобы снизить уровень громкости, можно воспользоваться регулировкой параметров в редакторе Dconf по пути org.ayatana.indicator.sound.amplified-volume-decibels, предварительно включив опцию allow-amplified-volume. По умолчанию было выставлено 11 децибел, понизила до 7.
Делай с нами, делай как мы, делай лучше нас!

Оффлайн ivm

  • Ветеран
  • *****
  • Сообщений: 3071
  • Что бы ни случилось, всё будет хорошо!
Re: PipeWire - новый мультимедийный сервер
« Ответ #12 : 16 Апреля 2024, 19:47:01 »
Интересную картину сегодня наблюдал. Обычно, чтобы не мешать домашним, использую блютус наушники. Ранее достаточно было перевести звук на наушники, а остальные источники звука автоматически отключались. Сегодня же звук остался на акустике, а проверка настройки звучала в наушниках. Так что получилось, что одновременно работали два звуковых устройства. Решил выключением акустики через настройки звука. Звук после этого перешёл полностью на наушники. Впервые с таким сталкиваюсь.

Оффлайн ivm

  • Ветеран
  • *****
  • Сообщений: 3071
  • Что бы ни случилось, всё будет хорошо!
Re: PipeWire - новый мультимедийный сервер
« Ответ #13 : 28 Июня 2024, 21:27:46 »
Выпуск мультимедийного сервера PipeWire 1.2.0 описан на опеннете.
В новой версии:
• В модель обработки потоков данных на основании графа узлов добавлена поддержка асинхронной обработки, при которой граф узлов не блокируется при отсутствии вывода от определённого узла, а продолжает работу, используя данные от узла, полученные в прошлом цикле. Таким образом, ценой задержки в один цикл удаётся избежать ситуации, когда один узел блокирует работу остальных узлов в графе.
• Реализована концепция групп синхронизированных узлов (node.sync-group), позволяющая создавать группы узлов, одновременно активируемых планировщиком. Функция может использоваться для одновременного планирования активации узлов при запуске транспорта JACK.
• Улучшен вывод сведений об ошибках в файле конфигурации, добавлено упоминание места, где допущена ошибка в настройках (номер строки и позиция в строке).
• Добавлена поддержка технологии Explicit Sync, позволяющей приложениям информировать композитный менеджер на базе протокола Wayland о готовности вывода кадра на экран, что даёт возможность добиться снижения задержек и избавиться от появления артефактов при выводе графики. В частности, Explicit Sync решает проблемы с нарушением вывода и подвисаниями на системах с GPU NVIDIA и включённой поддержкой Wayland.
• Реализована возможность определения обязательных метаданных при согласовании параметров буфера, которые используются для обеспечения поддержки "Explicit Sync".
• Добавлена поддержка создания и использования нескольких циклов обработки данных (data-loop) в клиенте и сервере. В циклы обработки данных добавлены возможности для привязки к определённым ядрам CPU и выставления приоритетов.
• Предоставлена возможность изменения отладочных уровней, управляющих выводом информации в лог, без перезапуска, используя метаданные.
• Переработана логика связывания пиров (узлов в графе потоков данных, определяющих внешние источники или приёмники данных).
• Приняты патчи для обработки устройств, помеченных как конфликтующие через ALSA UCM (Use Case Manager).
• Добавлен модуль snapcast-discover для потоковой передачи контента в серверы SnapСast.

Оффлайн vita

  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4803
  • Да будет свет!
Re: PipeWire - новый мультимедийный сервер
« Ответ #14 : 31 Октября 2024, 15:06:42 »
к сожалению, для Ubuntu он представлен только в формате flatpak.

Начиная с Ubuntu 23.10 пакет helvum в формате deb стал доступным для установки из официального репозитория, как и пакет  easyeffects, c описанием которых можно ознакомиться в статье Helvum и EasyEffects: два замечательных приложения для пользователей PipeWire.
Богатые настройки программы Easy Effects частично опробовала в тестируемой Matuntu-P (Ubuntu 25.04)

P.s.: Безусловно это поверхностный взгляд, но начало освоения PipeWire и его приложений положено.
Делай с нами, делай как мы, делай лучше нас!