Установка и настройка MPD (Music Player Daemon) и MPC (Music Player Client) на Raspberry Pi, Orange Pi, Banana Pi

MPD (music player daemon) — это музыкальный проигрыватель с клиент-серверной архитектурой, воспроизводящий музыку и заданного каталога. Принцип работы заключается в запуске собственно плеера (демона) на сервере и управлении им при помощи любого из богатого выбора клиентов, один из них — MPC (Music Player Client).
Возможен запуск MPD на локальном компьютере (к примеру Raspberry Pi, Orange Pi, Banana Pi и т.п.) и управлять им подключая клиент к localhost.

Преимущества данного плеера:

  • легковесность;
  • быстрота работы (приложение кэширует файлы и управление в клиентах осуществляется без задержек при добавлении файлов в плейлисты);
  • продолжение воспроизведения при прерывании с сохраненного места в треке;
  • автообновление базы данных при добавлении новых файлов;
  • управление с любого устройства в сети.

Установка MPD (Music Player Daemon)

Рассмотрим процесс установки и первоначальной настройки демона.
Установим с помощью apt-get (или любым удобным для вас способом). Пакет mpd находится в официальных репозиториях Ubuntu, поэтому для установки необходимо выполнить команду:

sudo apt-get install mpd

Настройка MPD (Music Player Daemon)

MPD можно запускать локально (используя конфигурацию пользователя), глобально (настройки применяются для всех пользователей), а также в нескольких экземплярах. Способ запуска (и настройки) зависит от того, как вы хотите использовать MPD (например, для использования на домашней системе более полезен запуск локально).

Чтобы Music Player Daemon мог воспроизводить аудио, необходимо настроить вывод звука через ALSA или OSS (возможно использование PulseAudio).

Настройка Music Player Daemon осуществляется редактированием /etc/mpd.conf. Расположение этого файла зависит от того, каким образом вы запускали MPD. Далее перечислены наиболее используемые параметры:

  • pid_file — Файл, в котором MPD хранит свой pid
  • db_file — База данных медиатеки
  • state_file — Хранит текущее состояние MPD
  • playlist_directory — Директория, в которую сохраняются плейлисты
  • music_directory — Директория, сканируемая MPD, при поиске музыки
  • sticker_file — Файл с метаданными аудиотреков (sticker database)
  • auto_update — Этот параметр включает автоматическое обновление базы данных MPD при изменении файлов в music_directory.

Примечание: Файлы должны существовать (пути, указанные при настройке) с правильными правами, иначе MPD не запустится.

Глобальные настройки

По умолчанию /etc/mpd.conf использует /var/lib/mpd и запускается от пользователя mpd. Но, т.к. /var/lib/mpd по умолчанию принадлежит пользователю root, вы должны изменить владельца папки, иначе mpd не сможет писать в нее:

chown -R mpd /var/lib/mpd

Директория с музыкой

Измените /etc/mpd.conf и добавьте в строку music_directory путь к вашей папке с музыкой:

music_directory /путь/к/музыке

MPD должен иметь разрешение на выполнение (+x) для всех директорий музыкальной коллекции, а также доступ на чтение во все директории, содержащие музыкальные файлы. Как правило, это противоречит со стандартной конфигурацией, в которой пользователи хранят свою музыку в своём домашнем каталоге.

Для решения данной проблемы существует несколько способов, которые могут помочь:

  • запуск MPD от имени текущего пользователя
  • добавить пользователя mpd в текущую пользовательскую группу и предоставить разрешения группе к вашему пользовательскому каталогу:
    gpasswd -a mpd <ваша пользовательская группа>
    chmod 710 /home/<ваш пользовательский каталог>
  • поместить свою музыкальную коллекцию в другой каталог путём
    • полного её перемещения в каталог, доступный mpd;
    • монтированием папки с привязкой к каталогу, в который у mpd есть доступ, например:
      mkdir /var/lib/mpd/music
      echo "/путь/к/пользовательской/музыке /var/lib/mpd/music none bind" >> /etc/fstab
      mount -a
    • в случае с фс Btrfs — подразделом Btrfs (необходимо сделать данные изменения постоянными, путём редактирования файла /etc/fstab);
    • созданием символической ссылки на папку с музыкой в /var/lib/mpd/music:
      mkdir /var/lib/mpd/music
      ln -s /путь/к/пользовательской/музыке /var/lib/mpd/music/

В конфигурационном файле mpd может быть указана только одна директория с музыкой. Если музыкальная коллекция содержится в различных директориях, создайте символические ссылки в главную директорию (/var/lib/mpd). Не забудьте установить правильные права на эти директории.

Запуск MPD

MPD можно контролировать через service. Первый запуск может занять некоторое время, пока MPD будет сканировать вашу папку с музыкой.

Запуск:

sudo service mpd start

или

sudo /etc/init.d/mpd start

Остановка:

sudo service mpd stop

или

sudo /etc/init.d/mpd stop

Перезапуск:

sudo service mpd restart

или

sudo /etc/init.d/mpd restart

Показать статус, а также запущен он или нет:

sudo service mpd status

или

sudo /etc/init.d/mpd status

Настройка аудиовыхода

Чтобы изменить громкость mpd независимо от других программ, раскомментируйте или добавьте этот параметр в mpd.conf в разделе audio_output:

mixer_type			"software"

Пользователи ALSA захотят иметь следующие конфигурации аудио выхода:

audio_output {
        type            "alsa"
        name            "My ALSA Device"
        mixer_type      "software"      # optional
}

таким образом MPD клиенте сможет программно управлять громкостью отдельно от других приложений.

Пользователям PulseAudio потребуется внести следующие изменения:

audio_output {
        type            "pulse"
        name            "pulse audio"
}

Смена пользователя

Изменение группы, в которой работает MPD, может привести к таким ошибкам, как:

  • output: Failed to open "My ALSA Device"
  • [alsa]: Failed to open ALSA device "default": No such file or directory
  • player_thread: problems opening audio device while playing "Song Name.mp3"

Это связано с тем, что пользователи MPD должны быть частью аудиогруппы для доступа к аудио устройствам в каталоге /dev/snd/. Чтобы исправить это, сделайте пользователя MPD частью аудиогруппы:

gpasswd -a mpd audio

Локальная конфигурация (для каждого пользователя)

MPD может быть настроен для каждого пользователя (а не типичный метод глобальной настройки). Запуск MPD как обычного пользователя имеет следующие преимущества:

  • Один каталог ~/.config/mpd/ или ~/.mpd/ (или любой другой каталог), который будет содержать все файлы конфигурации MPD.
  • Проще избежать непредвиденных ошибок разрешения на чтение/запись.

Хорошей практикой является создание единого каталога для необходимых файлов и плейлистов. Это может быть любой каталог, к которому у вас есть права на чтение и запись, например, ~/.config/mpd/ или ~/.mpd/.

Создайте каталог для текущего пользователя ~/.config/mpd/ или ~/.mpd/:

mkdir ~/.config/mpd/

Скопируйте пример файла конфигурации в нужное место, например:

cd /usr/share/doc/mpd/examples
gunzip mpdconf.example.gz
cp /usr/share/doc/mpd/examples/mpdconf.example ~/.config/mpd/mpd.conf

Если файлы /usr/share/doc/mpd/examples/mpdconf.example.gz или /usr/share/doc/mpd/examples/mpdconf.example не существуют, можете создать новый файл и прописать в нём все параметры:

touch ~/.config/mpd/mpd.conf

или скопировать существующий /etc/mpd.conf файл и заменить все пути, к примеру:

cp /etc/mpd.conf ~/.config/mpd/mpd.conf

открыть этот файл:

nano ~/.config/mpd/mpd.conf

и заменить /var/lib/mpd/ на ~/.config/mpd/:
Установка и настройка MPD (Music Player Daemon) - Замена текста в nano

  1. Нажмите Ctrl+\. Обратите внимание, что в нижней части окна появляется окно;
  2. Затем введите строку /var/lib/mpd/, которую вы хотите заменить, и нажмите Enter;Установка и настройка MPD (Music Player Daemon) - Замена текста в nano (ввод заменяемой строки)
  3. Затем введите строку ~/.config/mpd/, на которую хотите заменить, и нажмите Enter;Установка и настройка MPD (Music Player Daemon) - Замена текста в nano (ввод заменяющей строки)
  4. В этот момент nano переходит к первому экземпляру того, что вы ищете, и показывает вам набор сочетаний клавиш, чтобы заменить все нажмите A;Установка и настройка MPD (Music Player Daemon) - Замена текста в nano (заменить все)
    Установка и настройка MPD (Music Player Daemon) - Замена текста в nano (всё)
  5. Сохраняем Ctrl+X, Y, Enter.

Отредактируйте ~/.config/mpd/mpd.conf и укажите необходимые файлы:

# Required files
db_file            "~/.config/mpd/tag_cache"
log_file           "~/.config/mpd/mpd.log"

# Optional
music_directory    "~/music"
playlist_directory "~/.config/mpd/playlists"
pid_file           "~/.config/mpd/pid"
state_file         "~/.config/mpd/state"
sticker_file       "~/.config/mpd/sticker.sql"

# User
user               "pi"

# Audio Output
audio_output {
    type         "alsa"
    name         "PI ALSA Device"
    device       "hw:0,0"        # optional
    format       "44100:16:2"    # optional
    mixer_type   "software"      # optional
}

Создайте все файлы и каталоги, указанные выше:

mkdir ~/music
mkdir ~/.config/mpd/playlists
touch ~/.config/mpd/{database,log,pid,state,sticker.sql}

После завершения настроек:

нужно настроить права пользователя:

sudo chown -R pi:pi /home/pi/.config/mpd/
sudo chmod 755 /home/pi/.config/mpd/*

убить текущую сессию:

sudo mpd --kill

запустить новую сессию и перезапустить службу:

mpd
sudo service mpd restart

Клиенты/установка mpc

Для использования mpd необходим отдельный клиент. Список клиентов можно просмотреть по ссылке mpd_wiki, один из клиентов — это mpc. mpc — клиент, использующий для управления mpd-сервером интерпретатор командной строки.

Установить клиент можно с помощью apt-get, поэтому для установки необходимо выполнить команду:

sudo apt-get install mpc

Чтобы посмотреть список всех команд, необходимо выполнить:

mpc help

здесь же рассмотрим лишь несколько команд управления музыкой:

  • mpc pause — приостановить проигрывание музыки
  • mpc stop — остановить проигрывание музыки
  • mpc next — следующий трек в плейлисте
  • mpc prev — предыдущий трек в плейлисте
  • mpc random — включит режим случайной следующей песни
  • mpc listall — показать список всех треков в базе
  • mpc playlist — показать текущий плейлист
  • mpc volume [+-]<num> — установить громкость на <num> (от 0 до 100) или настроить с помощью [+ -] <num>
  • mpc play [<position>] — начинает играть с позиции <position>

Как играть музыку

Для начала нужно скопировать музыку (mp3 файлы) в папке /var/lib/mpd/music (или ~/music, смотря какой путь вы указали в music_directory в файле mpd.conf).

дальше чистить плейлист:

mpc clear

после этого обновить музыкальную директорию, если не хотите делать каждый раз, тогда нужно установить параметр auto_update "yes" в файле mpd.conf:

mpc update

добавить музыку в плейлист:

mpc add <имя папки или файла>

и запустить проигрывание:

mpc play

Регулировать громкость можно с помощью команды:

mpc volume 50

что соответствует 50% от максимальной мощности. Можно прибавить на 10% mpc volume +10 или убавить mpc volume -10. Чтобы можно было управлять громкостью, необходимо установить mixer_type "software" в разделе audio_output в файле mpd.conf.

Как слушать интернет радио

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

Для начала нужно найти поток (ссылку) на вашу любимую радиостанцию, для шансона я нашёл следующий(ую):

http://chanson.hostingradio.ru:8041/chanson256.mp3

дальше нужно чистить плейлист, чтобы играло только радио:

mpc clear

далее нужно добавить поток в плейлист:

mpc add http://chanson.hostingradio.ru:8041/chanson256.mp3

и запустить плеер:

mpc play

и не забываем о главном, установить громкость на максимум, ну хотя бы на 90%:

mpc volume 90

ну, а если вы очень сильно любите слушать радио и хотите, чтобы ваша любимая станция запустилась вместе с вашим компьютером (Raspberry Pi, Orange Pi, Banana Pi или др.), тогда нужно будет добавить все эти 4 команды в файле /etc/rc.local до exit 0, должно получиться примерно так:

Установка и настройка MPD и MPC - Автозапуск радио на Orange Pi

Материалы

Использование юнитов
Music Player Daemon (Русский)
help.ubuntu.ru
MPC
mpd_mpc в качестве плеера (небольшой ман)

Похожие записи

Комментарии 11

  • Есть ли возможность просматривать программу передач интернет-радио?
    В частности в клиенте Cantana.

  • 7 and has covered self parking areas. This lot presents uncovered self parking spaces.
    The lot is open at all hours, and there can also be
    an airport transportation service that shuttles clients to the airport every 5 minutes.

    The shuttle service runs from 4 a.m. 12:45 a.m. They even have car care companies out there for booking.
    2019t have to wait till you get to the airport to determine where to park.

    Drivers are educated & certified to get you to the place you want safely.
    201d packages as an alternative. These packages are bundles created by ORD hotels with parking.
    Its essential air facility, O’Hare Worldwide Airport (ORD), is the
    busiest on this planet when measured by the number of takeoffs and landings.

    2019Hare International Airport is bigger and
    sometimes the go-to for these touring by means of
    Chicago internationally. 2019Hare Parking Garage Workplace.

  • Families in these modern times need certainly to find out further regarding many of these issues,
    even though there seems to under no circumstances end up being a
    sufficient quantity of spare time. Following precious time for relatives and buddies, and needless to say having a job, just what period of
    time is remaining to commit to getting to know all these essential instructions?
    Being an individual practising postnatal massage therapy, and in addition constructing webpages and running many
    different servers, time is most certainly a commodity which i normally do not
    possess more than enough of. Almost certainly, I am
    capable of finding the time important to analyze this crucial point more in-depth.
    Thanks to you for supplying this unique prized learning resource. http://cover.searchlink.org/test.php?a%5B%5D=%3Ca+href%3Dhttps%3A%2F%2Fporkshop.org%2Fblog%2F64335%2F5-explanations-why-every-new-mom-craves-postnatal-massage%2F%3Eporkshop.org%3C%2Fa%3E

  • I thought your blog was relevant and timely, either) and living a life in full appreciation of the randomness and patterns of nature, helps people
    feel sane and feeling joyous. Thinking about important memes is likewise some other sort of experience that can help us make the discovery of self understanding. https://clients1.google.tl/url?q=http%3A%2F%2Fmangalamassociates.com

  • Ahaa, its pleasant conversation on the topic of this article
    at this place at this website, I have read all that,
    so at this time me also commenting at this place.

  • United (free): The massive airline in Denver is United, so
    I take advantage of their app religiously to capture flight info, get my
    boarding passes moved into PassBook, and even observe my Mileage Plus miles.
    I additionally use Gate Guru, Evernote, and Flight Track Pro as others
    have talked about. If I really must get wherever
    on time, with out hilarious misinterpretations of my course
    requests, I take advantage of Tom Tom. In the US, I
    like to make use of the Navigon USA app for step-by-step directions, though Waze may also be helpful and extra fun. For me it was a toss up between Tom Tom ($35.99)
    and Navigon’s apps until a while back Navigon «upgraded» and Tom Tom shortly turned my main navigation app.
    I nonetheless keep Navigon for the POI information: Parking is
    easily discovered, and that i purchased the Zagat information. Maps and Google Maps:
    Either of those apps can provide the map data I need, in addition to pretty accurate
    directions. For pure relaxation I’ve loaded up the Kindle and iBooks apps
    with some mild studying materials, and i
    also can kill some time with Plants vs.

  • Ahaa, its fastidious conversation on the topic of this piece of writing here at this website, I
    have read all that, so at this time me also commenting
    at this place.

  • I really like looking at and I believe this website got some genuinely utilitarian stuff on it!

  • Waititi mentioned in early June 2021 that post-production can be completed by February 2022.

  • Be sure you reduce the possibility of the body when actively
    playing Jujutsu Kaisen 0 movie. A stability soccer ball can help in order to keep your back correctly in-line.
    {{If you do|Should you|Should you do|If you} {more|much
    more|a lot more|far more} {active|energetic|productive|lively} {Jujutsu Kaisen 0
    movie|Jujutsu Kaisen 0|Jujutsu Kaisen 0 imdb}

  • If some one needs to be updated with most up-to-date technologies
    therefore he must be go to see this web page and be up to date daily.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *