При обновлении Xubuntu с 9.10 до 10.04 автор этих строк столкнулся с проблемой нестабильной работы музыкального проигрывателя mpd при выводе звука через PulseAudio. До этого проблема решалась удалением из системы PulseAudio, однако в версии 10.04 это оказалось весьма проблематичным. В итоге всё-таки удалось "подружить" и далее будет показано как именно это было сделано.
Проблема заключается в том, что mpd стартует при загрузке системы и работает с правами пользователя mpd, а PulseAudio стартует при входе пользователя в систему и работает с его правами. Соответственно доступ к создаваемым файлам устройств так же ограничен текущим пользователем.
Решить проблему можно двумя способами:
- Запускать PulseAudio при старте системы и назначать другие, более "открытые" права на создаваемые устройства;
- Запускать mpd из под текущего пользователя при входе в систему.
Остановимся на втором варианте, так как он не требует серьёзного вмешательства в системную конфигурацию и большая часть работы будет в домашней директории пользователя.
Первым делом остановим mpd:
sudo invoke-rc.d mpd stop
Далее открываем в редакторе (необходимы права пользователя root) файл /etc/default/mpd и меняем значение параметра START_MPD на false:
START_MPD=false
Копируем файл конфигурации в домашнюю директорию:
cp /etc/mpd.conf ~/.mpdrc
Создаём структуру директорий, в которой mpd будет хранить свои данные:
mkdir -p ~/.mpd/{playlists,log}
Обновляем пути в файле конфигурации:
sed 's/\/var\/lib\/mpd/~\/.mpd/' -i ~/.mpdrc sed 's/\/var\/log\/mpd/~\/.mpd\/log/' -i ~/.mpdrc sed 's/\/var\/run\/mpd\/pid/~\/.mpd\/mpd.pid/' -i ~/.mpdrc
Если у вас ещё не настроен вывод звука и микшер на использование PulseAudio то сейчас самое время это сделать. Для этого нужно сначала закомментировать в файле ~/.mpdrc все параметры "mixer_type" и "audio_output", а затем добавить в конец файла строки:
# Вывод звука через PulseAudio audio_output { type "pulse" name "My Pulse Output" } # Использование аппаратного микшера mixer_type "hardware"
Закончив конфигурирование запустим mpd:
mpd ~/.mpdrc
Обновим медиа-библиотеку:
mpc update
Остаётся только настроить автоматический запуск mpd при входе пользователя в систему. Это можно сделать выбрав в главном меню XFCE пункты "Настройки" -> "Сеансы и запуск" -> "Автозапуск приложений":
На этом всё. Приятной работы!
2010-05-24 23:19:41 (#)