Установка
Пакет mpd находится в официальных репозиториях Ubuntu, поэтому для установки необходимо выполнить команду:
Настройка
Конфигурационный файл можно найти по пути
он очень хорошо комментирован, поэтому если проблем с английским языком нет, с конфигурацией проблем не будет. Ниже приведено описание только тех пунктов, которые необходимо сконфигурировать для работы. Комментарии для удобства чтения удалены.
Замените «имя_пользователя» на имя своего пользователя.
Директория с музыкой.
Целесообразно создать в домашней папке директорию mpd, где будут храниться рабочие файлы приложения.
Следующие 6 строчек указывают место хранения рабочих файлов- создаваемых плейлистов, базы данных, лог файла, файла хранения PID и sticker_file.
Далее следуют основные настройки приложения.
Необходимо указать пользователя, от имени которого будет запускаться демон.
При запуске демона на сервере, необходимо указать IP адреса, которые будут иметь доступ к управлению плеером, возможные варианты:
localhost— для работы на локальном компьютере;
any— для доступа любого клиента из сети;
определенные IP адреса— через запятую можно выборочно указать адреса, имеющие доступ.
И порт, по умолчанию 6600.
Автообновление базы при добавлении файлов в папку с музыкой
Доступ к функциям демона по умолчанию.
Конфигурация аудио выхода. На современных дистрибутивах Ubuntu по умолчанию установлен музыкальный сервер PulseAudio, который целесообразно указать в настройках mpd, в результате этого вы получите нормализованный звук в различных приложениях и mpd. Достаточно указать только тип и имя, остальные параметры mpd определит автоматически.
Одновременно с этим нужно настроить pulseaudio на прием звукового потока по TCP, для этого в файле /etc/pulse/default.pa необходимо раскомментировать и подредактировать строчку
Указываем кодировку имен файлов и id3-тэгов.
и выставлением параметра
Теперь пульс не будет самостоятельно запускаться. Но нам-то он нужен! Создаем файл с именем pulseaudio.desktop в каталоге
Открываем текстовым редактором, например
Использование
Сервер установлен, настроен и запущен, теперь можно подключаться к нему любым из доступных клиентов и наслаждаться вашей любимой музыкой.
Интеграция с Unity
Для интегрирования меню управления MPD из индикатора управления громкостью в Unity необходимо добавить в систему репозиторий, установить пакет mpd-sound-menu .
Данный пакет обеспечивает возможность переключать треки вперед, назад, ставить на паузу, а также быстро переключаться между созданными ранее списками воспроизведения.
После установки необходимо настроить приложение, для чего нажать на индикатор звука Unity и выбрать MPD Sound Menu, в появившемся окне в строке Library Path необходимо указать путь к папке с музыкой (это нужно для того чтобы при экспорте путей к файлу в MPRIS можно было формировать валидные URI ), а также, если MPD запущен не на локальном компьютере, а на сервере, ввести адрес MPD-хоста. При желании, можно выставить автоматический запуск при старте системы.
Выглядит это следующим образом: Как видно, в меню не отображается обложка диска воспроизводимого трека и содержимое MPD-sound-menu не корректно отображается на светлых темах GTK-кнопки становятся просто черными (ошибки интерфейса не являются mpd-sound-menu-специфичными и все давно зарепорчены в Ubuntu-пакет indicator-sound 1) ).
В настоящее время разработка проекта фактически заморожена, так как автор больше не использует MPD. Наработки для новой версии (включая асинхронную библиотеку libmpd-qt для работы с сервером MPD) автор готов передать любому энтузиасту, желающему развивать проект дальше.
Консольные клиенты
Полный функционал управления плеером предоставляет консольный клиент mpc. Для установки необходимо выполнить
MPD+cron+mpc=будильник
Создаем и сохраняем плейлист в mpd c приятными уху записями.
Делаем его исполняемым
Добавляем запись в cron пользователя
Клиенты GTK+
Пакет gmpc находится в официальных репозиториях, для установки необходимо выполнить:
При первом запуске появится помощник настройки подключения. Указываем параметры подключения, нажимаем кнопку «Подключить» и «Готово».
Основное окно выглядит следующим образом.
Клиенты Android
MPDroid
Удобный клиент MPD предоставляющий полный функционал управления демоном. После установки необходимо выбрать беспроводную сеть, при подключении к которой будет осуществляться управление MPD
После чего необходимо указать IP aдрес сервера и порт для подключения
Окно управления выглядит так:
Клиенты iOS
Довольно неплохой клиент на iOS MPoD предоставляет полное управление серверной частью плеера. Клиент самостоятельно сканирует сеть на наличие MPD, но так же адрес и порт сервера можно указать вручную.
И к тому же в настройках можно выбирать любой источник воспроизведения, указанный в конфиге MPD
MPD — установка и настройка Music Player Daemon.
Music Player Daemon — музыкальный плеер с клиент-серверной архитектурой и широкими возможностями. Он умеет воспроизводить музыку из указанного каталога и транслировать ее по сети. Управлять демоном можно как локально, так и удаленно, а также есть широкий выбор фронтэндов — клиентов к mpd.
Рассмотрим процесс установки и первоначальной настройки нашего демона.
Установим с помощью apt-get (или любым удобным для вас способом)
sudo apt-get install mpd
И перейдем к настройке. За конфигурацию демона отвечает файл /etc/mpd.conf
sudo -e /etc/mpd.conf
Нам откроется структурированный файл с кучей комментариев после каждой из переменных настроек. Отредактируем некоторые из них:
Указываем пути на наши папки, не забыв создать необходимые с помощью команды mkdir -p
/.mpd/playlists
music_directory «/home/username/Music»
playlist_directory «/home/username/.mpd/playlists»
db_file «/home/username/.mpd/tag_cache»
log_file «/home/username/.mpd/mpd.log»
pid_file «/home/username/.mpd/pid»
state_file «/home/username/.mpd/state»
Настроим пользователя и адрес нашего демона
user «mpd» #оставим без изменений
bind_to_address «localhost» #оставим без изменений
Отключим вывод через alsa
#audio_output <
# type «alsa»
# name «My ALSA Device»
# device «hw:0,0» # optional
# format «44100:16:2» # optional
# mixer_device «default» # optional
# mixer_control «PCM» # optional
# mixer_index «0» # optional
#>
Настроим вывод звука через pulseaudio
audio_output <
type «pulse»
name «My Pulse Output»
# server «remote_server» # optional
# sink «remote_server_sink» # optional
>
Настроим потоковое вещание (открыть :8000/mpd.ogg в любой плеере, например vlc. Если хотите проигрывать поток как mp3 — замените ниже vorbis на lame).
audio_output <
type «httpd»
name «My HTTP Stream»
encoder «vorbis» # optional, vorbis or lame
port «8000»
# quality «5.0» # do not define if bitrate is defined
bitrate «128» # do not define if quality is defined
format «44100:16:1»
>
Пока достаточно. Еще раскоментируйте опцию mixer_type, выбрав наиболее подходящий вам. Я выбрал mixer_type «software»
Основные настройки закончены. Теперь применим несколько команд, позволяющих избежать проблем с уровнем доступа или с pulseaudio. Вы можете как столкнуться с этими проблемами, так и не встретить их. В любом случае перестраховка не помешает.
#Настроим права доступа
sudo usermod -a -G
sudo chmod g+rX
где folder_owner — имя владельца папки (в моем случае — username), mpd_user — пользователь указанный в mod.conf (в нашем случае — mpd), ну и path_to_folder в нашем случае /home/username/Music и /home/username/.mpd
sudo usermod -a -G username mpd
sudo chmod g+rX /home/username/Music
sudo chmod a+rwx /home/username/.mpd/
#Настраиваем права доступа в pulseaudio для mpd_user
sudo usermod -a -G pulse-access mpd
sudo usermod -a -G pulse mpd
Перезапустим mpd (после установки он запускается автоматически):
sudo /etc/init.d/mpd stop
sudo /etc/init.d/mpd start-create-db
Настройка демона готова. Перейдем к настройке клиента. Поставим простой консольный клиент mpc (пригодится во многих случаях), а также ncurses фронтэнд — ncmpc или ncmpcpp
sudo apt-get install mpc ncmpcpp
С его помощью можно создавать плейлисты, управлять воспроизведением и прочее. Чтобы узнать о его возможностях — нажмите цифру 1 в окне клиента. С помощью установленного нами mpc — можно настроить горячие клавиши. Просто зайдите в настройки клавиатурных сочетаний вашего DE и настройте mpc toggle, mpc prev, mpc next, mpc volume +5, mpc volume -5 (полный список возможностей узнать можно командой mpc help).
Вот так просто мы установили и настроили нетребовательный к ресурсам музыкальный плеер и научили его проигрывать музыку по сети (возможно ее принимать на любом устройстве).
Автор статьи Platon Puhlechev aka iFalkorr разрешает печатать данный текст.