FreeSource: Мусорка/ALTLinux/Dokumentacija/PulseAudio

PulseAudio и ALTLinux Sisyphus

Бредисловие

В один день мне надоел весь этот зоопарк со звуковыми серверами в linux и я решил что надо что-то делать. В начале я использовал esound...

Введение

Что же такое PulseAudio спросите вы? Это очень мощный сетевой звуковой сервер для linux (и freebsd, сам видел ;) ). Она позволяет куче приложений использовать одну звуковую карту.

PulseAudio может играть через OSS, ALSA и jack. OSS уже почти умер, у меня не только oss модулей для ядре нет, но и выключенна эмуляция на уровне ALSA. Через jack я не пробывал. Здесь описана только настройка polypaudio через ALSA.

Установка PulseAudio

Для начала, нам надо поставить сам PulseAudio и некоторые дополнительные приложения для него.

Настройка звука через PulseAudio

И так, в общем случае, его даже настраивать не надо. Достаточно его запустить его вот так:

Если он у вас не запускается, то это может быть по следующим причинам:

1) В /tmp/ имеется .esd с правами 1777 и root:root. Достаточно удалить .esd (https://bugzilla.altlinux.org/show_bug.cgi?id=10017)

2) У вас не запущен HAL daemon. Запустите его.

3) У нас нет звуковой карточки или она не настроена.

Ну а кому охота настроить его ручками, руководство ниже.

Вот мой конфиг, в нём ключена эмуляция esd.

Или ещё один конфиг с выключенной эмуляцией esd:

Запуск и остановка звукового сервера

Теперь, можно его поднять следующей командой:

Что бы выключить (если сильно надо):

Настройка звуковых клиентов

Описание настройки XMMS и MPlayer ниже.

Настройка XMMS через PulseAudio

1) XMMS => Ставим плагин xmms-out-pulse и в настройках указываем что звук надо играть через него.

2) XMMS => Ставим плагин xmms-out-esd и в настройках выбираем его.

3) XMMS => Ставим плагин xmms-out-alsa и в настройках выбираем его.

Настройка MPlayer через PulseAudio

MPlayer => Ставим mplayer из Сизифа и говорим играть через pulse (-ao pulse).

Настройка amaroK через PulseAudio

1) Настройки -> Движок -> Xine -> модуль вывода pulseaudio

2) Настройки -> Движок -> Xine -> модуль вывода esd

3) Настройки -> Движок -> Xine -> модуль вывода alsa

Остальные звуковые клиенты которые умееют играть только через ALSA

Или, с настроеной ALSA играем всё через неё. ALSA сама сделает своё грязное дело.

PulseAudio и ALSA

В последнем релизе ALSA (1.0.12) в пакет alsa-plugins добавлен плагин для вывода звука через PulseAudio.

Для одного пользователя настраивается так:

И после, любое приложение играющее через alsa автоматически начинает играть на локальный PulseAudio сервер.

PulseAudio и libao

Ставим libao-pulse:

И настраиваем так:

PulseAudio и gstreamer

Ставим gst-pulse:

Как настраивается я не знаю. ;)

Различные замеченные проблемы

MPlayer как-то странно играет через esd эмуляцию в pulseaudio. Вобщем, не рекомендую.

При использовании hibernate с wks26-up ядром (wks26-smp не тестировал) возникает мелкая проблема. После просыпания машины из hibernate, pulseaudio надо остановить и запустить заново (иначе, звука просто нет).

https://bugzilla.altlinux.org/show_bug.cgi?id=10017 — workaround для такого, перед стартом PulseAudio убить .esd из /tmp.

Дополнительная документация

/usr/share/doc/pulseaudio-0.9.5/

/usr/share/doc/alsa-plugins-1.0.13/README-pulse

Что ещё будет?

Пока не известно, т.к. автор ушёл на пол года делать дипломную работу. ;)

Ссылок на эту страницу нет