Анонсирован (http://lists.freedesktop.org/archives/pulseaudio-discuss/201...) выпуск звукового сервера PulseAudio 6.0 (http://pulseaudio.org/), который выступает в роли посредника между приложениями и различными низкоуровневыми звуковыми подсистемами, абстрагируя работу с оборудованием. В новый выпуск принято более 400 исправлений, в подготовке которых приняли участие 50 разработчиков. Код PulseAudio распространяется в рамках лицензии LGPL 2.1+. Поддерживается работа в Linux, Solaris, FreeBSD, DragonFlyBSD, NetBSD, Mac OS X и Windows.
PulseAudio позволяет управлять громкостью и смешиванием звука на уровне отдельных приложений, организовывать поступление, смешивание и вывод звука при наличии нескольких входных и выходных каналов или звуковых карт, позволяет на лету менять формат звукового потока и использовать плагины (http://www.pulseaudio.org/wiki/Modules), дает возможность прозрачно перенаправлять звуковой поток на другую машину.Ключевые улучшения (http://www.freedesktop.org/wiki/Software/PulseAudio/Notes/6.0/) PulseAudio 6.0:
- Обеспечена поддержка профилей HFP (Hands-Free Profile) и HSP (Headset Profile) для подключения беспроводных гарнитур и наушников с интерфейсом Bluetooth. Для использования профилей HSP/HFP с BlueZ 5 подготовлено два бэкенда - "native" и "oFono", каждый из которых имеет свои достоинства и недостатки. В бэкенде "native" реализована только поддержка профиля HSP, чего достаточно для работы с большинством звуковых устройств. Вторым недостатком является отсутствие возможности установки ролей ("headset role"), что, например, не позволяет задействовать ПК в роли гарнитуры при подсоединении ПК к мобильному телефону.
Бэкенд "oFono" основан на одноимённом телефонном стеке (https://01.org/ofono) и наоборот поддерживает только HFP и не может работать с HSP. Впрочем, ограничение в поддержке профилей не критично, так как большинство устройств поддерживают как HFP, так и HSP. Из ролей поддерживается только работа в форме гарнитуры, т.е. при подсоединении ПК к мобильному телефону, в отличие от бэкенда "native", ПК можно будет использовать только как гарнитуру, но нельзя подключить к гарнитуры к ПК. Кроме того, oFono пока не поддерживает средства управления громкостью гарнитуры (PulseAudio не может передать гарнитуре параметры громкости и выставляет громкость только на своей стороне). Одновременная работа бэкендов "native" и "oFono" не поддерживается, следует выбрать один из них.
- Возможность использования функции активации по сокету, предоставляемой системным менеджером systemd, для автоматического запуска пользовательского экземпляра PulseAudio в ответ на попытку обращения к звуковому серверу. В настоящее время возможна активация только по unix-сокетам, поддержка TCP-сокетов ожидается в будущим выпусках. Активному использованию активации PulseAudio по сокету также мешают ограничения по одновременному использованию создаваемой для пользовательского сеанса шины доступа к PulseAudio через D-Bus и пользовательской шины, создаваемой при активации по сокету. К сеансовой шине пока привязаны такие функции, как module-jackdbus-detect, протокол резервирования устройств, отслеживание работы сервера в libpulse, module-rygel-media-server, сервис обращений к серверу через D-Bus;- Представлен новый механизм передачи потоков srbchannel ("Shared RingBuffer channel"), позволивший снизить нагрузку на CPU на 10-25% в условиях обеспечения минимальных задержек. В srbchannel для передачи пакетов метаданных между клиентом и сервером используется разделяемая память, а не unix-сокеты, с информированием о поступлении пакетов через API eventfds. Подобный подход позволил незначительно сократить число операций копирования памяти, но существенно снизил интенсивность обращения к системным вызовам. Реализация srbchannel пока не включена по умолчанию из-за возможного присутствия ошибок, для активации следует передать значение "srbchannel=true" в module-native-protocol-unix;
- Код переназначения каналов ускорен благодаря внедрению низкоуровневых специфичных оптимизаций (например, задействованы инструкции ARM NEON). Оптимизации с использованием инструкций ARM NEON также добавлены в код смешивания двух 16-разрядных потоков, содержащих одинаковое число каналов.
- В модуль module-combine-sink добавлена поддержка адаптивных задержек (dynamic latency), позволяющих использовать модуль с приложениями, чувствительными к задержкам;
- Улучшена поддержка многоканальных звуковых карт. Для карт, которые могут быть открыты только в многоканальном режиме, но для которых не удаётся подобрать число каналов, теперь предоставляется возможность определения каналов драйвером;
- Добавлена поддержка объёмного звука 7.1 для звуковых систем с интерфейсом HDMI. Улучшена работа с профилями 2.1 и нового синтаксиса их выбора (surround21:card), поддержка которого появилась в ALSA 1.0.28;
- В утилите pactl добавлена возможность установки разной громкости для каждого канала устройства или потока.
- Возможность работы с несколькими экземплярами модулей module-jack-sink и module-jack-source;- В модуль module-switch-on-connect добавлена новая опция "only_from_unavailable", позволяющая разрешить переключение на новое устройство только в ситуации недоступности устройства по умолчанию.
URL: http://lists.freedesktop.org/archives/pulseaudio-discuss/201...
Новость: http://www.opennet.me/opennews/art.shtml?num=41663
Pulse в windows? o_O
> Pulse в windows? o_OВ Windows качество звука зависит от драйверов для звуковой платы и сопровождающего П/О.
Pulse в windows нужен только для того, чтобы передавать звук на linux-устройство для воспроизведения.
Использовал винду с колонками, как динамики для своих линуксовых устройств. :)
Что за устройства такие? о_О
> Что за устройства такие? о_Оарч в виртуалочке же :)
> Pulse в windows? o_Oчто только не делают люди, чтоб запустить под вынью скайп без рекламы
как вариант - cygwin+pulse+skype_for_lin
>Обеспечена поддержка профилей HFP (Hands-Free Profile) и HSP (Headset Profile) для подключения беспроводных гарнитур и наушников с интерфейсом Bluetoothджва года ждал. Уже выбросил bluetooth гарнитуру
А напомните какие вопрсоы решает PulseAudio в Windows?
работа с Cygwin
А чем ALSA не угодил?
Лично я пользуюсь чистой ALSA на всех компах. Я попробовал пульсу, когда мне сказали что там можно записывать звук из конкретного приложения, а не из всей системы. Соврали. Продолжаю стримить в твич с помощью ALSA + аппаратное кодирование h264, а также грабить видео с онлайн-ТВ.
>СовралиНе соврали. Таки можно. Просто не сказали, что нужна куча костылей и все равно будет адский десинк и глюки.
Расскажи, пожалуйста, про лупбэк и аддаратное кодирование.
>аппаратное
Вечером приду домой и расскажу.
ALSA не позволяет выводить звук в блютус гарнитуру. И выводить с неё.
http://wiki.gentoo.org/wiki/Bluetooth_Headset#ALSA
http://wiki.gentoo.org/wiki/Bluetooth_Headset#BlueZ_5
вручную хадкордя адрес BT - спасибо, не надо
> ALSA не позволяет выводить звук в блютус гарнитуру. И выводить с неё.Тебе, может, и не позволяет. Несовершеннолетним много чего не позволяют.
тебе тоже не позволяет.
Разработчики PulseAudio узнали про минимальные задержки. Молодцы.А тем временем простой и в меру скромный парень из Франции... http://undeadly.org/cgi?action=article&sid=20150211134052&mo...
еще теперь значение громкости при старте сервера с опцией "flat-volumes = no" стало нормальным
и "onlyunavailable" джва года ждал
> еще теперь значение громкости при старте сервера с опцией "flat-volumes = no"
> стало нормальнымflat-volumes? Пульса перестала пердеть в микрофон? "Флатуляции" = пердёжь.
Оно уже подружилось с jack так чтобы можно было на лету запускать и останавливать jack?
Во всяких там убунтах и федорах это уже лет пять работает, если не больше.Вот, например, в браузере играет ютубовский ролик. Запускаем джек, ролик сам встаёт на паузу. Делаем что-нибудь в джеке, затем останавливаем джек. В браузере ролик снимается с паузы и играет дальше.
Если у вас это так не работает, жалуйтесь разработчику дистрибутива.
Я хочу чтобы при запуске jack и остановке всё продолжало играть :)Сейчас я просто всегда держу jack запущенным и во время музицырования просто меняю задержку в нём на маленькую. Всё это время pulseaudio работает поверх.
Ээээ. Понятно, что нужно привязать все к systemd, но как аргументируется использование механизма systemd для вызова через сокет? Пользовательская программа не может самостоятельно запустить pulseaudio с пайпом?
Ехала абстракция через абстракцию. Наверняка этот пульсаудио вносит немаленькую задержку.
ой, только не говорите мне что, например, VST плагины, написаны на асемблере и все приложения которые их пользуют тоже на асемблере...)))Сейчас все на абстракциях, благо процессоры и шины позволяют хоть на яве писать...))) Андроид тому пример. )))
> ой, только не говорите мне что, например, VST плагины, написаны на асемблере
> и все приложения которые их пользуют тоже на асемблере...)))
> Сейчас все на абстракциях, благо процессоры и шины позволяют хоть на яве
> писать...))) Андроид тому пример. )))Не путайте производительность с отзывчивостью.
Интернет с лунной орбитой до 622 Мбит/с
http://www.computerra.ru/99848/broadband-connection-to-the-moon/Всё ровно по 2-3 секунды ждать пока сигнал долетит только в одну стороны. Так же и абстракции, процессоры обрабатывать могут сколько угодно информации, но в реальности даже в играх задержки становятся только больше. Но со звуком и записью такие вещи неприемлемы.
Им уже можно пользоваться, или всё так же трещит, шипит и только проблемы привносит?
Интересно насколько глубоко его apulse имитирует, может кто копал?
Скайп у меня работает без проблем.
apulse и предназначен изначально для скайпа.
Работал бы 4-ый скайп через алсу, или работал бы до сих пор 2-ой, то этого проекта-костыля и не существовало бы.
Но Ринату я премного благодарен!
Хоть его проекты и костыли, как и freshplayer (панорама в google maps только на флеше), но в них есть потребность и своё дело они выполняют на отлично и не имеют аналогов!
Apulse это не имитация, а отдельная реализация PulseAudio API. Не реализованные функции помечены буковкой Z.
>Для использования профилей HSP/HFP с BlueZ 5 подготовлено два бэкенда - "native" и "oFono", каждый из которых имеет свои достоинства и недостатки. Одновременная работа бэкендов "native" и "oFono" не поддерживается, следует выбрать один из них.Вся суть PulseAudio.
Совершенно не нужная вещь. Лучше бы допилили alsa. Там всего то добавить регулятор звука на каждое приложение и лиммитер на выходную шину dmix прилепить (alsa вроде умеет плагины цеплять), чтобы звук не пердел от двух и больше приложений играющих на максимуме одновременно. И будет идеальная система, такая же как и в этой вашей винде, только лучше и почти без задержек.
Все єто давно уже есть в OSS ;)