MPD: The Music Player Daemon

Проект "Пакет дня" нуждается в помощи переводчиков. Если Вы можете помочь с переводом статей, пожалуйста, присоединяйтесь!

Оригинальная статья: Igor Stirbu. Перевод: Азовцев Юрий

Music Player Daemon - сервер, проигрывающий аудио-файлы и аудио-потоки, управляемый удаленным клиентом. MPD поддерживает аудио-файлы в форматах Ogg-Vorbis, MP3, FLAC, Wave и AIFF, а так же аудио-потоки в форматах Ogg-Vorbis и MP3. MPD поддерживает технологию cross-fade - "пересекающее-затухание" при смене треков.

MPD очень гибок, благодаря своей клиент/серверной природе. MPD может быть настроен как на прямое использование вашей звуковой карты, так и на трансляцию звукового потока в сеть (используя icecast). Он управляется клиентом, который может располагаться как на той же машине, так и в любом месте сети.

При запуске MPD сначала читает файл ~/.mpd.conf и затем /etc/mpd.conf при первой неудачной попытке. Он может быть одинаково успешно запускаться как непосредственно пользователем, так и в автоматическом режиме при старте компьютера. Ниже приседен пример конфигурационного файла .mpd.conf

# ~/.mpdconf
music_directory "/home/igor/media/mp3"
playlist_directory "/home/igor/.mpd"

state_file "/home/igor/.mpd/state_file"
db_file "/home/igor/.mpd/tag_cache"
error_file "/home/igor/.mpd/error_file"
log_file "/home/igor/.mpd/log_file"
pid_file "/home/igor/.mpd/pid_file"

mixer_type "alsa"
mixer_device "default"
mixer_control "PCM"

filesystem_charset "UTF-8"

audio_output {
type "alsa"
name "Local sound card"
}

audio_output {
type "shout"
name "Icecast2 stream ( http://keo:8000/stream.ogg)"
host "keo"
port "8000"
mount "/stream.ogg"
password "hackme"
# quality "7.0"
bitrate "128"
format "44100:16:1"
# Optional Paramters
user "source"
description "All your music are belong to us"
genre "rock"
}

Данный вариант позволяет мне использовать звуковую карту при работе за настольной станцией на которой и запцщен MPD, либо получать аудиопоток через сеть на ноутбуке.

Модификации для icecast.xml:

keo
/stream.ogg

Несколько замечательных возможностей доступно в MPD через кончигурационный файл. Если вы явно указываете pid_file появляетсяв озможность использовать mpd --kill для остановки сервера. state_file сохраняет состояние плеера (в т.ч. список воспроизведения, время и название текущей композиции, активные каналы). Если демон остановлен корректно - он записывает state_file состояние системы и при повторно запуске продолжает проигрывание и использует тот же список воспроизведения.

Посетите домашнюю страницу проекта MPD для получения более подробной информации, включая релизы, клиентов, FAQ. Пакеты для MPD доступны в дистрибутивах Debian начиная с Sarge и в Ubuntu, начиная с Hoary.

Клиенты

Из всего списка клиентских приложений к MPD в Debian доступны лишь самые основные, остальные варианты можно посмотреть на сайте проекта MPD. Я использую Gmpc. Он поддерживает интеграцию области уведомления, всплывающие панели с уведомлениями, панель настройки сервера. Можно выбрать клиент с ncurses интерфейсом, либо с интерфейсом командной строки, возможны варианты с web интерфейсом и другие варианты.

Нижеследующий скриншет показывает набор клиентов, подключеных к одному серверу: gmpc, pympd, ncmpc (ncurses), и phpMp2 (web).