Выпуск звукового сервера PulseAudio 12.0
Состоялся релиз звукового сервера PulseAudio 12.0, который выступает в роли посредника между приложениями и различными низкоуровневыми звуковыми подсистемами, абстрагируя работу с оборудованием. PulseAudio позволяет управлять громкостью и смешиванием звука на уровне отдельных приложений, организовывать поступление, смешивание и вывод звука при наличии нескольких входных и выходных каналов или звуковых карт, позволяет на лету менять формат звукового потока и использовать плагины, дает возможность прозрачно перенаправлять звуковой поток на другую машину. Код PulseAudio распространяется в рамках лицензии LGPL 2.1+. Поддерживается работа в Linux, Solaris, FreeBSD, OpenBSD, DragonFlyBSD, NetBSD, macOS и Windows.
Ключевые улучшения PulseAudio 11.0:
- Улучшены средства для точного определения задержек при передаче звука с использованием bluetooth-профиля A2DP и протокола AirPlay. Ранее PulseAudio не получал от ядра сведения о задержках для A2DP, что приводило к проблемам с синхронизацией звука при воспроизведении видео, теперь размер звукового буфера существенно уменьшен, что позволяет более точно оценивать задержки через контроль за заполнением буфера. Для AirPlay проблема решена через составления списка известных задержек для тех или иных моделей устройств;
- В module-switch-on-connect, отвечающим за переключение вывода по умолчанию на новые устройства, теперь игнорируются виртуальные устройства
- При пробросе сжатых звуковых потоков через S/PDIF или HDMI для данных потоков теперь устанавливается флаг «non-audio», который сигнализирует, что данные не являются обычным звуком и требуют дополнительного раскодирования;
- HDMI помечен как более приоритетный канал вывода по сравнению с S/PDIF (ранее при наличии HDMI и S/PDIF по умолчанию выбирался S/PDIF, хотя на деле обычно он менее востребован пользователями);
- Расширено число bluetooth-гарнитур для которых поддерживается профиль HSP (Headset Profile). При подключении гарнитуры могут информировать о поддержке HSP двумя способами, но ранее PulseAudio поддерживал лишь один из них и ошибочно распознавал некоторые гарнитуры как не поддерживающие HSP;
- Для bluetooth-устройств, которые одновременно поддерживают профили A2DP и HSP по умолчанию теперь активируется профиль A2DP, обеспечивающий более высокое качество звука. Изменение решает проблему с подключением bluetooth-наушников со встроенной гарнитурой, для которых ранее приходилось каждый раз вручную менять профиль для прослушивания музыки;
- В модуль module-pipe-sink добавлена возможность вывода в уже созданные именованные каналы и добавлен параметр «use_system_clock_for_timing», позволяющий использовать для синхронизации потока системный таймер (можно читать из потока с любой скоростью (например, утилитой «cat»), так как интенсивность записи скоординирует сам модуль);
- Добавлена поддержка стереовывода для USB-гарнитур Steelseries Arctis 7, которые на аппаратном уровне предоставляют два устройства для моно и стерео с раздельным управлением громкостью;
- Реализована поддержка разъёмов подключения громкоговорителей Dell Thunderbolt Dock TB16;
- Добавлена возможность выключения входа или выхода на платформе macOS для чего в модули module-coreaudio-detect и module-coreaudio-device добавлены опции «record» и «playback»;
- В систему подавления эха Speex (module-echo-cancel) добавлен параметр «dereverb» (включен по умолчанию), отвечающий за активацию удаления эффектов реверберации при записи звука (подобные эффекты возникают например при записи в пустой комнате с голыми стенами);
- Представлен новый модуль module-always-source, который позволяет удостовериться, что всегда доступен как минимум один источник звука, не работающий в режиме монитринга (зеркалирование выхода на вход);
- При записи в системном режиме файлы состояния теперь не доступны на чтение всем пользователям (umask изменён на 022);
- В модуле module-augment-properties, который читает файлы .desktop для получения информации о приложении, подобные файлы теперь ищутся в каталоге, на который указывает переменная окружения XDG_DATA_DIRS (ранее поиск выполнялся по фиксированному пути /usr/share/applications);
- Решена проблема, приводившая к краху или зацикливанию с большой нагрузкой на CPU после отсоединения кабеля HDMI во время воспроизведения звука, в случае использовании звукового драйвера Intel HDMI LPE;
- Решены проблемы с записью звука на некоторых звуковых картах с интерфейсом USB при использовании цифрового входа (в ALSA mixer требуется выставление порта как «IEC958 In»);
- Налажено определение звуковых карт Native Instruments Traktor Audio 6 с интерфейсом USB;
- Реализована возможность исключения GConf из списка зависимостей (в paprefs 1.0 по умолчанию будет загружаться module-gsettings вместо module-gconf);
- Графический эквалайзер qpaeq портирован на Qt 5 и поменял лицензию с AGPL на LGPLv2.1, которая применяется и для остального кода PulseAudio;
- Обеспечена совместимость с glibc 2.27.
© OpenNet