Выпуск звукового сервера PulseAudio 8.0

Представлен релиз звукового сервера PulseAudio 8.0, который выступает в роли посредника между приложениями и различными низкоуровневыми звуковыми подсистемами, абстрагируя работу с оборудованием. PulseAudio позволяет управлять громкостью и смешиванием звука на уровне отдельных приложений, организовывать поступление, смешивание и вывод звука при наличии нескольких входных и выходных каналов или звуковых карт, позволяет на лету менять формат звукового потока и использовать плагины, дает возможность прозрачно перенаправлять звуковой поток на другую машину. Код PulseAudio распространяется в рамках лицензии LGPL 2.1+. Поддерживается работа в Linux, Solaris, FreeBSD, OpenBSD, DragonFlyBSD, NetBSD, OS X и Windows.

Ключевые улучшения PulseAudio 8.0:

  • Метод автоматической маршрутизации звука теперь работает по аналогии с переключением профилей. Если в системе имеется более одного профиля, модуль module-switch-on-port-available отбросит профили у которых не активны подключения к портам. Например, в системе с подключенными наушниками и HDMI, отключение наушников приведёт к перенаправлению звука через HDMI. Кроме того, PulseAudio теперь запоминает последний использованный профиль для порта, т.е. для HDMI будет выбран корректный профиль, а не просто выбран профиль по умолчанию (стерео);
  • Улучшена поддержка NetBSD и OS X. В основную кодовую базу PulseAudio перенесено большинство патчей, поставляемых в составе порта из pkgsrc-репозитория NetBSD. В OS X, благодаря добавлению модуля module-coreaudio-detect, обеспечена работа PulseAudio в конфигурации по умолчанию;
  • Реализована возможность использования Systemd journal для хранения клиентских логов. Настройка осуществляется через переменную окружения PULSE_LOG_JOURNAL, при установке которой все клиентские библиотеки будут отправлять логи в Systemd journal вместо syslog. При одновременной установке переменных окружения PULSE_LOG_JOURNAL и PULSE_LOG_SYSLOG более высокий приоритет отдаётся Systemd journal;
  • В состав включён новый скрипт scripts/benchmark_memory_usage.sh для определения потребления памяти. Скрипт позволяет проконтролировать изменение расхода памяти при увеличении числа клиентов;
  • Добавлен программный интерфейс для управления балансом между каналом сабвуфера (LFE) и всеми остальными каналами, позволяющий при выборе громкости для сабвуфера учесть состояние параметров всех других каналов (за исключением mono и aux). Например, данный интерфейс даёт возможность реализовать единый регулятор громкости, регулирующий изменение громкости сабвуфера при смещении правого-левого или переднего-заднего баланса других каналов;
  • В модуль module-dbus-protocol добавлена поддержка отображения через D-Bus API профиля звуковой карты и порта.
  • Добавлена поддержка конфигурационных директорий /etc/pulse/client.conf.d и /etc/pulse/deamon.conf.d, в которые можно добавлять дополнительные файлы конфигурации, переопределяющие настройки в /etc/pulse/client.conf и /etc/pulse/daemon.conf;
  • Внутренняя библиотека pulsecore-X.Y. so перемещена в отдельную директорию /usr/lib/pulseaudio, вместо размещения в корне /usr/lib.

© OpenNet