Превратите свой Raspberry Pi в домашний музыкальный сервер с Mopidy

В моде домашние аудиосистемы от Sonos, но они могут быть довольно дорогими. Однако с помощью всего лишь Raspberry Pi и некоторых динамиков вы можете создать свою собственную аудиосистему DIY для воспроизведения локально сохраненной музыки, потоков Spotify, интернет-радиостанций, подкастов и многого другого через веб-интерфейс.

Все это стало возможным благодаря Mopidy, расширяемому безголовому музыкальному серверу, написанному на Python.

Что вам понадобится для создания музыкального сервера

• Raspberry Pi. Подойдет любая модель, хотя Mopidy будет работать значительно быстрее на более поздних полноразмерных моделях. Если вы используете Pi Zero, вам понадобится дополнительная плата ЦАП для проводного аудиовыхода.

• Пара активных динамиков с штекерным разъемом 3,5 мм для аудиовхода. Кроме того, вы можете выводить звук через телевизор через HDMI.

• Беспроводная сеть для доступа к музыкальному серверу через веб-интерфейс.

1. Установите Mopidy.

Во-первых, убедитесь, что вы используете последнюю версию Raspberry Pi OS. В идеале вы должны выполнить чистую установку на карту microSD с помощью Raspberry Pi Imager.

Чтобы установить последнюю версию Mopidy и всех ее зависимостей, введите следующие команды в окне Терминала:

 wget -q -O - https://apt.mopidy.com/mopidy.gpg | sudo apt-key add -
sudo wget -q -O /etc/apt/sources.list.d/mopidy.list https://apt.mopidy.com/buster.list
sudo apt update
sudo apt install mopidy

Загрузка и распаковка Mopidy может занять несколько минут.

Если вы используете ОС Raspberry Pi с образом рабочего стола, вам нужно будет добавить пользователя Mopidy в группу видео:

 sudo adduser mopidy video

Чтобы Mopidy запускался в качестве фоновой службы при загрузке, введите:

 sudo systemctl enable mopidy

2. Настройте параметры Mopidy.

Чтобы настроить параметры Mopidy, чтобы вы могли получить к нему доступ из веб-браузера на Raspberry Pi или другом устройстве, вам необходимо отредактировать файл mopidy.conf :

 sudo nano /etc/mopidy/mopidy.conf

Внизу файла добавьте следующие строки:

 [http]
hostname = 0.0.0.0

Если вы не используете аудиовыход через HDMI, также добавьте эти строки (без пробела в ), чтобы использовать разъем AV 3,5 мм:

 [ audio]
output = alsasink device=hw:1,0

Нажмите Ctrl + X , затем Y, чтобы сохранить файл.

Обратите внимание, что параметр device = hw: 1,0 указывает Mopidy использовать звуковую карту 1, устройство 0, которое является разъемом AV 3,5 мм. Если вместо этого используется дополнительная плата DAC, вам необходимо установить для нее другое значение – для списка аудиоустройств введите это в Терминале:

 aplay -l

Запустите службу Mopidy с помощью:

 sudo systemctl start mopidy

3. Откройте веб-интерфейс Mopidy.

Теперь попробуйте получить доступ к службе с вашего Raspberry Pi или другого устройства в той же сети. В веб-браузере введите следующий адрес: http: //raspberrypi.local: 6680

Вы должны увидеть веб-страницу с сообщением о Mopidy.

Чтобы получить к нему правильный доступ, вам необходимо установить веб-клиент как расширение Mopidy. Их несколько, но одна из самых сложных – Iris. Установите его с помощью:

 sudo python3 -m pip install Mopidy-Iris

Вам также необходимо выполнить следующую команду (в одной строке), чтобы дать пользователю mopidy sudo разрешение на запуск установщика Iris:

 sudo sh -c 'echo "mopidy ALL=NOPASSWD: /usr/local/lib/python3.7/dist-packages/
mopidy_iris/system.sh" >> /etc/sudoers'

Перезапустите сервис Mopidy, чтобы изменения вступили в силу:

 sudo systemctl restart mopidy

Теперь попробуйте получить доступ к веб-интерфейсу, посетив следующий адрес:

http: //raspberrypi.local: 6680 / iris /

Вы увидите веб-страницу, приветствующую вас в Ирис. Нажмите « Сохранить», и вы увидите пользовательский интерфейс.

4. Добавьте музыку в Mopidy.

Хорошо, теперь вам нужно добавить несколько музыкальных файлов в папку « Музыка » в каталоге / home / pi / . Mopidy поддерживает широкий спектр аудиокодеков, включая MP3 и FLAC. Поэтому передавайте музыкальные файлы любым удобным для вас способом, например, с помощью USB-накопителя.

Далее вам необходимо установить расширение Mopidy-Local для чтения локальных файлов. В окне терминала введите:

 sudo python3 -m pip install Mopidy-Local

Теперь снова откройте файл настроек Mopidy с помощью:

 sudo nano /etc/mopidy/mopidy.conf

Затем добавьте следующие строки, чтобы настроить поиск музыкальных файлов в папке Music :

 [local]
media_dir = /home/pi/Music

Перезапустите службу Mopidy с помощью:

 sudo systemctl restart mopidy

Затем выполните сканирование, чтобы найти свои музыкальные файлы:

 sudo mopidyctl local scan

Вы также можете сделать это из интерфейса Iris, перейдя в « Настройки» , прокрутив вниз и нажав кнопку « Начать локальное сканирование» .

Примечание. Для отображения треков в интерфейсе может потребоваться некоторое время. Вам также может потребоваться нажать кнопку « Обновить» на главном экране.

Теперь ваши треки должны появиться в интерфейсе Iris, и вы можете дважды щелкнуть по нему, чтобы воспроизвести его. Обратите внимание, что даже при использовании удаленного устройства для доступа к веб-интерфейсу звук будет воспроизводиться с Raspberry Pi.

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

Связанный: Музыкальные инструменты, которые вы можете построить с помощью Raspberry Pi

5. Трансляция из Spotify

Mopidy также поддерживает потоковые сервисы, такие как Spotify, YouTube Music и SoundCloud. Здесь мы покажем вам, как заставить Spotify работать, хотя обратите внимание, что вам понадобится учетная запись Premium.

Во-первых, вам необходимо установить расширение Mopidy-Spotify. Откройте окно Терминала и введите:

 sudo python3 -m pip install Mopidy-Spotify

Вам необходимо добавить свое имя пользователя и пароль Spotify Premium в файл конфигурации Mopidy, а также посетить веб-сайт Mopidy, чтобы авторизовать это расширение для своей учетной записи Spotify. Это даст вам client_id и client_secret для использования.

Снова откройте файл настроек mopidy.conf с помощью:

 sudo nano /etc/mopidy/mopidy.conf

Добавьте следующие строки, заменив значения своим именем пользователя Spotify, паролем, а также client_id и client_secret, полученными с mopidy.com:

 [spotify]
username = <your Spotify username>
password = <your Spotify password>
client_id = <your client_id>
client_secret = <your client_secret>

Как и раньше, нажмите Ctrl + X , затем Y, чтобы сохранить и выйти.

Перезапустите службу Mopidy с помощью:

 sudo systemctl restart mopidy

Теперь обновите веб-интерфейс Iris по адресу raspberrypi.local: 6680 / iris /, и у вас должен быть полный доступ к Spotify.

6. Добавьте Интернет-радио в Mopidy.

Вы также можете слушать свои любимые радиостанции через TuneIn. Чтобы установить расширение, введите:

 sudo python3 -m pip install Mopidy-TuneIn
sudo systemctl restart mopidy

В веб-интерфейсе Iris выберите параметр « Обзор», а затем « TuneIn», чтобы получить доступ к таким параметрам, как « Местное радио» , « Музыка» (для выбора жанров) и « Подкасты» .

Для более полного выбора подкастов вы можете установить расширение Mopidy-Podcast с помощью:

 sudo python3 -m pip install Mopidy-Podcast
sudo systemctl restart mopidy

Это позволяет просматривать подкасты, распространяемые в виде RSS-каналов, и воспроизводить отдельные выпуски в различных аудиоформатах. Вы также можете добавить для него дополнительное расширение Mopidy-Podcast-iTunes, которое позволяет искать и просматривать подкасты в Apple iTunes Store.

Подробнее: Лучшие проекты Raspberry Pi для начинающих

Создание собственного музыкального плеера

Помимо экспериментов с другими доступными расширениями Mopidy (mopidy.com/ext), вы даже можете добавить мини-ЖК-экран для создания портативного плеера. Один из самых простых способов сделать это – использовать одно из надстроек Pirate Audio от Pimoroni , которое имеет бонус в виде ЦАП (цифро-аналоговый преобразователь) для улучшенного качества вывода звука.

Тем не менее, вы решите использовать Mopidy, мы уверены, что вы получите отличные впечатления от прослушивания с помощью настраиваемого музыкального проигрывателя Raspberry Pi.