PulseAudio - это сетевой сервер с открытым исходным кодом для Linux и других UNIX-подобных операционных систем. Он был разработан с нуля, чтобы предоставить пользователям надежную альтернативу старому ESOUND (Enlightened Sound Daemon).
Это модульный звуковой сервер
Будучи очень важной частью любой вычислительной среды, звуковой сервер в основном используется для программного микширования нескольких аудиопотоков, общего аппаратного и звукового API-абстракции, а также сетевой прозрачности. Это модульный звуковой сервер, который включает в себя множество модулей плагинов для поддержки звуковых протоколов, звуковых устройств, X Window System, bluetooth, JACK-соединений, RTP, SAP и SDP-транспорта, регулировки громкости, фильтров, а также различных протоколов.
Расширяемая архитектура плагина
Даже если его архитектура плагина расширяема, она поддерживает поддержку статической компоновки и автозагрузки модулей, более чем для одного источника или приемника, интерполяции латентности на стороне клиента, приемлемой функции с низкой задержкой и повторной выборки и преобразования образца. Для записи звука и воспроизведения проект обеспечивает очень точные измерения задержки. Он может быть легко встроен в другие программы, оснащен архитектурой «Zero-Copy» и простым интерфейсом командной строки, который позволяет опытным пользователям настраивать демона во время его работы.
Под капотом
Под капотом PulseAudio включает полностью асинхронный C API (Application Programming Interface), два синхронных API и несколько сетевых потоковых аудиопотоков. Звуковой сервер можно использовать для простого микширования нескольких звуковых карт и одновременной синхронизации нескольких потоков воспроизведения. Несколько проектов с открытым исходным кодом предлагают поддержку звукового сервера PulseAudio, такого как ALSA, LiVES, MPD, MPlayer, xine, VLC Media Player и SXEmacs.
Поддерживается при любом современном распространении s Linux
В настоящий момент PluseAudio поддерживается на любом современном дистрибутиве Linux, а также на операционных системах FreeBSD, NetBSD, Solaris, Mac OS X и Microsoft Windows (Win32). Он также является стандартным звуковым сервером многих известных Linux-систем и может быть легко сконфигурирован с помощью графических приложений PulseAudio Volume Control и PulseAudio.
Что нового в этом выпуске :
- В tarball для 12.1 содержался сломанный скрипт configure (сбой здания при установке gsettings), поэтому не используйте это! Используйте PulseAudio 12.2, это лучше! Нет никаких изменений, кроме регенерированного tarball с рабочим скриптом configure и обновленным файлом NEWS.
Что нового в версии 11.1:
- Лучшая отчетность по задержкам (и, следовательно, лучшая аналого-цифровая синхронизация) с профилем Bluetooth A2DP
- Гораздо более точная отчетность по задержкам для устройств AirPlay.
- Исправлена проблема с сбоем или высокой загрузкой процессора с Intel HDMI LPE
- модуль-switch-on-connect теперь игнорирует виртуальные устройства
- При использовании сквозной передачи для сжатого аудио, установите "non-audio" бит
- Приоритет выхода HDMI через выход S / PDIF
- Поддержка HSP для большего количества гарнитур Bluetooth.
- Выберите профиль Bluetooth A2DP по умолчанию вместо HSP
- Новые & quot; sink_input_properties & quot; аргумент модуля для модуля-ladspa-sink
- Новый & quot; use_system_clock_for_timing & quot; аргумент модуля для модуля-раковины
- модуль-труба-раковина теперь может использовать существующий трубопровод
- Steelseries Arctis 7 Поддержка стереозвука USB-гарнитуры.
- Поддержка динамиков Dell Thunderbolt Dock TB16.
- Фиксированная поддержка цифрового входа для некоторых звуковых карт USB
- Исправлено обнаружение Native Instruments Traktor Audio 6
- Возможность отключения ввода или вывода на macOS
- Новый & quot; древовидный & quot; опция для эквалайзера Speex
- Новый модуль: модуль-всегда-источник
- Файлы состояний не читаются всеми пользователями в системном режиме
- module-augment-properties теперь использует XDG_DATA_DIRS для поиска файлов .desktop
- Обновления привязок Vala
- Теперь можно избежать зависимости от GConf.
- Лицензия qpaeq изменена с AGPL на LGPL
- qpaeq портирован на Qt 5
- Совместимость с glibc 2.27
- Инструмент esdcompat больше не установлен, если поддержка esound отключена.
Что нового в версии:
- Автоматические улучшения маршрутизации
- Формирование лучей и различные другие новые функции в эхоподавителе WebRTC
- Различные улучшения в модуле-роли-пробки и модульной роли-ducking
- LFE ремиксы отключены по умолчанию
- перенос разделяемой памяти с поддержкой memfd
- Поддержка частоты дискретизации до 384 кГц
- Минимальная версия зависимостей зависимостей webrtc-audio-processing на 0.2
- Изменен стандарт C от C99 до C11.
Что нового в версии 8.0:
- Автоматическая маршрутизация с большей вероятностью изменяет профиль
- Улучшения поддержки OS X и NetBSD
- Журнал журналов Systemd для клиентов
- Новый интерфейс программирования баланса LFE
- Улучшения модуля-dbus-протокола.
- Более гибкое управление конфигурационными файлами
- pulsecore-8.0.so перемещен в частный каталог
- Новый скрипт для измерения потребления памяти
- Различные исправления ошибок и небольшие улучшения.
Что нового в версии 7.1:
- Исправьте crasher при использовании srbchannel
- Исправить опечатку системы сборки, которая заставила символические ссылки появляться в /
- Сделать карты Xonar лучше.
- Другие незначительные исправления и улучшения ошибок.
Что нового в версии 7.0:
- Синхронизация каналов LFE с фильтрацией нижних частот
- Новые resamplers на основе libsoxr
- Поддержка активации Socket для TCP
- & quot; srbchannel & quot; Механизм IPC включен по умолчанию
- Более гибкая поддержка обнаружения гнезд при использовании UCM
- Выход из-за SIGTERM не считается сбоем
- Лучшая поддержка Creative SoundBlaster Omni Surround 5.1
Что нового в версии 6.0:
- Поддержка родной HSP (гарнитуры) BlueZ 5.
- Поддержка профилей BlueZ 5 HFP (hands-free) через oFono
- поддержка активации сокета systemd
- Улучшенная поддержка многоканальных и 2.1 профилей
- Оптимизация отладки
- Многие незначительные улучшения, исправления ошибок и обновления i18n.
Что нового в версии 4.0:
- Лучшая обработка запросов с низкой задержкой
- Оптимизация при смешивании (общий, ARM NEON)
- По умолчанию повторный выборщик speex-float-1 (более низкий уровень использования ЦП)
- Основной рефакторинг Bluetooth для лучшей надежности и упрощения обслуживания
- Исправления для изящной передачи вручную в / из JACK
- Новый модуль для применения ducking на основе ролей потока
- Исправлена ошибка исправления инфраструктуры эхолота
- Выполнение Bash и zsh для инструментов командной строки
- Исправления Solaris и OS X
- Множество других улучшений, исправлений ошибок и документирования и обновлений i18n.
Что нового в версии 3.0:
- Поддержка ALSA Use Case Manager (UCM):
- Звуковое оборудование на настольных и портативных компьютерах обычно достаточно стандартно для PulseAudio для обработки с использованием общего набора файлов конфигурации. Ситуация различна, например, телефоны и планшеты. Практически всем этим устройствам нужны отдельные файлы конфигурации для описания аппаратного обеспечения, так что PulseAudio может правильно использовать все основные функции аппаратного обеспечения. Конфигурация может быть отправлена как файлы конфигурации PulseAudio, но люди ALSA работают над системой, которая позволяет приложениям (например, PulseAudio) использовать оборудование без дополнительной настройки в приложении. Система называется UCM, и теперь PulseAudio поддерживает ее.
- Параметры фильтра LADSPA, редактируемые в процессе работы:
- Модуль LADSPA теперь предоставляет базовый интерфейс D-Bus для изменения параметров фильтра на лету. Раньше параметры не могли быть изменены после загрузки фильтра.
- Встроенная поддержка источников Bluetooth:
- PulseAudio может использоваться в роли Bluetooth-гарнитуры, например, для подключения ноутбука к мобильному телефону и притворяться, что ноутбук представляет собой гарнитуру. В этом случае часто желательно перевести звук с телефона на звуковую карту ноутбука. Это делается автоматически с помощью модуля bluetooth-политики, которая по умолчанию загружается. Однако пользователям необходимо включить поддержку источника в их конфигурации BlueZ.
- Оптимизация ARM NEON:
- Добавлены оптимизации для преобразования формата выборки между форматами S16LE и плавающей запятой с использованием инструкций ARM NEON. Поддержка их определяется во время компиляции (на основе флагов FPU), а также во время выполнения (на основе / proc / cpuinfo). В рамках этих усилий была заложена основа для добавления дополнительных оптимизаций NEON в будущем.
- Сложная сдержка задержки устройства:
- Точная отчетность о задержках важна, например, для «синхронизация губ» при воспроизведении видео. PulseAudio полагается на аудиооборудование, чтобы предоставить точную информацию о задержке звука. Если эта информация некорректна по какой-либо причине, теперь можно настроить смещение, которое будет применяться к каждому отчету о латентности, благодаря работе Дамара Джелича «Google Summer of Code». Например, если вы смотрите видео и используете Bluetooth-гарнитуру для вывода звука, синхронизация губ может быть немного отключена, потому что PulseAudio в настоящее время не имеет надлежащей поддержки для запроса задержки для устройств Bluetooth. С помощью предстоящей версии pavucontrol вы сможете исправить проблему синхронизации, отрегулировав смещение задержки гарнитуры Bluetooth.
- Соблюдайте спецификацию базового каталога XDG:
- Расположение файлов конфигурации перемещено с ~ / .pulse на ~ / .config / pulse (или если задано значение $ XDG_CONFIG_HOME, а затем используйте это). Однако, если ~ / .pulse, он все равно будет использоваться, чтобы пользовательская конфигурация не терялась при обновлении PulseAudio. Файл cookie проверки подлинности также перемещен из ~ / .pulse-cookie в ~ / .config / pulse / cookie.
- Местоположение файлов времени выполнения (то есть файлов, которые не должны храниться при перезагрузках, например сокетах), перемещено из случайного каталога в / tmp в $ XDG_RUNTIME_DIR / pulse. Если $ XDG_RUNTIME_DIR не установлен, старая схема по-прежнему используется как резерв.
- Различные изменения ALSA:
- Регрессия в 2.0, которая может привести к тому, что некоторые машины не будут иметь "Speaker & quot; или "Внутренний микрофон" портов, в основном фиксируется в версии 3.0 - при использовании вместе с Linux 3.6 или выше. Кроме того, обходной путь для старых ядер применяется к некоторым наиболее распространенным машинам.
- Пьер-Луис Боссарт представил изменение, чтобы улучшить точность запросов по времени, и, таким образом, планирование по таймеру, путем атомарного запроса ряда временных параметров ALSA.
- Мы добавили свойство имени значка в порты ALSA, что могло помочь разработчикам пользовательского интерфейса отображать лучшие значки на каждом порту.
- Кроме того, было внесено несколько других изменений, таких как удаление неудобного порта lfe-on-mono и добавление большего количества имен управления микшерами, чтобы лучше синхронизировать с ядром.
- Усовершенствования для автоматического тестирования:
- Дэн Чжэнгрун улучшил поддержку автоматического тестирования PulseAudio в рамках своей работы Google Summer of Code. Улучшения включают поддержку отчетов об охвате тестирования с помощью gcov, изменение существующих тестов на использование «проверки» и т. Д. и позволяет запустить демон PulseAudio для тестирования, одновременно имея нормальный демон.
- Разгрузочные модули по имени:
- pactl и pacmd теперь поддерживают выгрузку модулей по имени. Раньше разгрузка могла выполняться только с помощью индекса модуля, что было немного неудобно, потому что обычно вы не знаете индекс, не глядя сначала.
- Улучшения ведения журнала:
- В дополнение к усовершенствованиям автоматического тестирования, GSoC student Deng также работал на средствах регистрации PulseAudio. Теперь можно изменить цель журнала запущенного демона с помощью pacmd, используя команду set-log-target. Кроме того, был добавлен новый тип целевого журнала: «новый файл». «Новый файл» цель подобна старому "файлу" с той разницей, что если данное имя файла уже существует, файл не перезаписывается, но вместо этого создается новый файл с пронумерованным суффиксом.
- Рефакторинг кода Bluetooth:
- В модулях Bluetooth много работы по рефакторингу, в качестве подготовки к предстоящей поддержке BlueZ 5 и упрощению работы кода в целом. Это не прямые изменения, видимые пользователем, но мы хотели бы воспользоваться этой возможностью, чтобы поблагодарить Микеля Астиза в любом случае за отличную работу, которую он сделал.
- Следующие шаги:
- Развитие продолжается, как всегда, и релиз 4.0 нацелен на то, чтобы произойти в апреле (пока мы не очень хорошо поддерживаем четырехмесячный цикл выпуска, хотя, так что сделайте это с куском соли). Отчет PulseConf 2012 предлагает некоторые подсказки о том, что может произойти дальше.
Что нового в версии 2.0:
- Альтернативные частоты выборки
- обнаружение Jack
- Отмена эха: компенсатор WebRTC, автоматическое управление усилением, компенсация дрейфа.
- Модуль виртуального объемного звучания
- Xen Паравиртуализированная звуковая раковина
- Исправлена поддержка HURD
- Улучшение качества декодера A2DP.
Что нового в версии 0.9.17:
- Леннарт Поттеринг (13):
- libpulse: добавить новый код ошибки PA_ERR_BUSY
- alsa: правильно конвертировать размеры буфера выборки
- alsa: надлежащим образом сообщать о случаях ошибок при сбое.
- i18n: добавить ja в LINGUAS
- i18n: выполнить make update-po
- build-sys: увеличить версию библиотеки
- doxygen: отбрасывать ссылки на pacat.c и paplay.c в качестве примеров, поскольку теги не полезны как таковые, а в случае паплета даже не существуют.
- doxygen: добавить rtclock.h в документацию
- doxygen: не путайте doxygen с ложным ..
- proplist: определение свойств для сохранения положения окна
- position-event-sounds: положение окна чека, если установлено, положение как по вертикали, так и по горизонтали
- : добавьте дополнительный коэффициент громкости, который применяется после повторной выборки.
- position-event-sounds: применять коэффициент громкости после, а не перед повторной выборкой
- amitakhya (1):
- Отправка перевода для Assamese
- anipeter (1):
- Отправка перевода для Malayalam
- hyuuga (1):
- Отправка перевода для po / ja.po
- ifelix (1):
- Отправка перевода для Tamil
- jassy (1):
- Отправка перевода для Punjabi
- kkrothap (1):
- Отправка перевода для Telugu
- rajesh (1):
- Отправка перевода для хинди
- runab (1):
- Отправка перевода для Bengali (Индия)
- sandeeps (1):
- Отправка перевода для Marathi
- swkothar (1):
- Отправка перевода для Гуджарати
- warrink (1):
- Отправка перевода для голландского
Комментарии не найдены