• I






      
           

Научно-популярный образовательный ресурс для юных и начинающих радиолюбителей - Popular science educational resource for young and novice hams

Основы электричества, учебные материалы и опыт профессионалов - Basics of electricity, educational materials and professional experience

КОНКУРС
language
 
Поиск junradio

Радиодетали
ОК
Сервисы

Stock Images
Покупка - продажа
Фото и изображений


 
Выгодный обмен
электронных валют

Друзья JR



JUNIOR RADIO

 

Интернет и радио проигрыватель на Raspberry Pi

 

Мне понравилась идея хранить интересующую меня музыку на флэш-накопителе и иметь возможность легко ее менять. Кроме того, поскольку емкость флэш-накопителей росла, а цены падали, у меня могло быть достаточно большое количество песен, доступных одновременно. Затем, чтобы добавить глазури на пресловутый торт, я мог управлять интернет-радио/проигрывателем музыкальных файлов с помощью нового приложения для iPhone/iPod Touch, которое я разрабатывал, под названием MpdClient.

Со временем я разочаровался в том, что мне пришлось конвертировать все песни, которые я хотел воспроизвести на своем интернет-радио/проигрывателе музыкальных файлов, в MP3, чтобы воспроизводить их. Итак, я начал искать лучшее решение, которое позволило бы мне воспроизводить множество различных типов музыкальных файлов. Когда на сцене появился Raspberry Pi, я понял, как запустить полнофункциональную версию MPD, которая решила все мои проблемы. Теперь, сидя в своем любимом кресле, я могу слушать интернет-радиостанции или проигрывать исполнителей, альбомы или отдельные песни с флешки, подключенной к моему Raspberry Pi.

В этой статье я покажу вам шаг за шагом, как превратить ваш Raspberry Pi в дистанционно управляемый интернет-радио/проигрыватель музыкальных файлов.

Благодаря высокому уровню системной интеграции на Raspberry Pi (RPi) вы можете создать проигрыватель интернет-радио/музыкальных файлов с меньшим количеством компонентов, чем потребовалось бы при использовании перепрофилированного беспроводного маршрутизатора. На фиг.1 представлена​​блок-схема предлагаемой системы; В таблице 1 приведены некоторые сведения о необходимых компонентах. Для наших целей здесь я предполагаю, что ваш RPi будет подключен к существующей аудиосистеме (через соответствующий соединительный стереокабель) или будет использоваться с наушниками, поэтому мы не будем беспокоиться об обсуждении усилителей или динамиков.

ФИГУРА 1.

 

Я покажу вам, как подключить RPi к вашей локальной беспроводной сети с помощью недорогого (менее 6 долларов) USB-адаптера Wi-Fi. Тем не менее, вы можете проложить кабель Ethernet от вашего RPi к маршрутизатору и вообще отказаться от Wi-Fi.

Два порта USB на RPi Model B точно соответствуют нашим потребностям: один порт для USB-адаптера, а другой — для флэш-накопителя с музыкой. Модель A RPi не подойдет для этого приложения, потому что у нее есть только один USB-порт (если вы не хотите включать в свою систему USB-концентратор). В любом случае, увеличенный объем оперативной памяти (512 Мбайт) на Model B, вероятно, улучшит работу сервера MPD. Аппаратные подключения к/от RPi следующие:

Подключение адаптера питания к порту micro USB на карте.

Подключение аудиовыхода 3,5 мм к музыкальной системе через соответствующий кабель.

Установка карты памяти SD объемом 4 ГБ или больше, содержащей операционную систему.

Подключение USB-адаптера Wi-Fi к одному из USB-портов.

Временное подключение USB-концентратора к другому USB-порту. Это потребуется только во время процесса установки и будет удалено после завершения установки. В это время подключите USB-клавиатуру и мышь к концентратору. Концентратор USB будет заменен флэш-накопителем USB с музыкальной библиотекой после завершения установки.

Подключение к HDMI или композитному видеомонитору. RPi будет работать без головы; то есть после завершения процедуры установки монитор не требуется.

Когда я впервые начал использовать RPi для интернет-радио, у него была реальная проблема с громкими хлопками при переключении станций. На самом деле, настолько громкий, что это устройство почти делает непригодным для использования. Однако недавно я перезагрузил свой RPi версией операционной системы Raspbian от 02-09-2013 (доступной на raspberrypi.org); эта проблема, кажется, была исправлена.

Предполагая, что мы начинаем с недавно загруженного образа RPi, мы сначала запустим Wi-Fi, а затем обновим программное обеспечение ОС всеми новейшими пакетами. Далее мы обновим прошивку RPi и установим ряд пакетов, необходимых для запуска MPD. Наконец, мы настроим MPD для наших целей.

Для начала вставьте карту памяти SD с операционной системой в RPi и выполните все подключения, перечисленные в разделе «Оборудование» выше. После подачи питания ваш RPi должен загрузиться и автоматически перевести вас в raspi-config, если вы еще не выполнили первоначальную настройку, или в командную строку, если вы это сделали. В это время, пожалуйста, войдите в систему с именем пользователя pi и паролем raspberry.

В командной строке введите startx, чтобы запустить графический интерфейс пользователя (или GUI).

Щелкните значок Wi-Fi Config, чтобы настроить RPi для работы в беспроводной сети. Если вы собираетесь использовать проводное сетевое подключение, перейдите к шагу 6.

В меню приложения нажмите «Сеть», а затем «Добавить».

Введите SSID или имя вашей беспроводной сети и выберите соответствующий метод аутентификации для вашей сети, если таковой имеется. В моей беспроводной сети используется WPA2 — персональная аутентификация, но у вас может быть по-другому. Наконец, введите сетевой пароль в поле PSK.

Нажмите кнопку «Добавить», и если все в порядке, ваш RPi должен подключиться к вашей беспроводной сети. Если это не так, убедитесь, что у вас установлены правильные значения SSID, аутентификации и PSK.

Щелкните значок LXTerminal на рабочем столе, чтобы открыть окно оболочки.

Введите sudo apt-get update, чтобы позволить RPi определить все устаревшие пакеты ОС.

Введите sudo apt-get upgrade, чтобы установить все новые пакеты ОС.

После завершения обновления введите sudo reboot, чтобы перезагрузить систему. Перезагрузка необходима, чтобы использовать все новое программное обеспечение, которое вы только что установили.

Войдите в систему и снова запустите startx. На этот раз щелкните значок Midori, чтобы открыть браузер. Введите github.com/hexxeh/rpi-update в адресную строку.

Также щелкните значок LXTerminal, чтобы открыть окно оболочки.

В оболочке введите sudo apt-get install git-core, чтобы загрузить дополнительное программное обеспечение, которое нам понадобится.

Теперь мы загрузим и установим средство обновления прошивки RPi, чтобы наша система могла быть полностью обновлена​​как с точки зрения прошивки, так и программного обеспечения ОС. В окне Midori прокрутите вниз до раздела «Установка» и выделите длинную команду, которая начинается с sudo wget… После выделения скопируйте ее в буфер обмена, а затем вставьте в окно LXTerminal, чтобы выполнить.

Чтобы запустить средство обновления прошивки, введите sudo rpi-update.

После завершения этого процесса снова перезагрузите систему и снова войдите в систему.

Затем мы установим программное обеспечение, которое будет автоматически монтировать любые USB-накопители, подключенные к RPi. Это означает, что если вы подключите новый флэш-накопитель, система распознает его автоматически, и вам не нужно будет ничего делать. Введите sudo apt-get install usbmount. По завершении введите sudo service udev restart, чтобы система начала использовать программное обеспечение usbmount.

Чтобы проверить, работает ли автоматическое монтирование, выведите список содержимого каталога /media/usb0 с помощью команды ls /media/usb0. Каталог должен быть пуст. Подключите флешку с файлами к USB-концентратору и снова запустите команду. На этот раз содержимое флэш-накопителя должно быть видно в списке каталогов. Если нет, перезагрузитесь и повторите попытку.

Наконец, установите MPD и MPC с помощью команды sudo apt-get install mpc mpd. Мы устанавливаем MPD, потому что он нам нужен; мы устанавливаем MPC, чтобы помочь в тестировании сервера MPD.

Далее нам нужно отредактировать только что установленный файл конфигурации MPD. Мы вызовем редактор программы vi с помощью следующей командной строки: sudo vi /etc/mpd.conf. Вы можете использовать другой редактор, если он вам более удобен.

Найдите в файле строку music_directory и измените ее значение в двойных кавычках на «/media/usb0». Это сообщает MPD, где искать музыкальные файлы. Затем найдите строку bind_to_address и замените «localhost» на «any». Это позволяет нам удаленно взаимодействовать с сервером MPD. Далее найдите строку #mixer_type "software" и уберите знак #. Наконец, найдите строку #autoupdate "yes"; сначала удалите знак #, а затем измените «да» на «нет». Сохраните изменения в файле с помощью команды :wq, если используете vi.

Перезагрузитесь еще раз, чтобы MPD прочитал свою новую конфигурацию.

Войдите в систему и введите alsamixer в командной строке. Это вызовет графический интерфейс с ползунком в середине экрана. Увеличьте значение на три четверти, а затем нажмите клавишу Esc, чтобы завершить эту программу.

Чтобы убедиться, что модули ядра, необходимые для вывода звука из RPi, загружены, введите в окне оболочки следующую команду: sudo modprobe snd_bcm2835.

Наконец, введите amixer cset numid=3 1, чтобы направить звук на разъем 3,5 мм на RPi.

Перезагрузитесь еще раз и внимательно посмотрите на сообщения, которые выводятся на монитор. Убедитесь, что вы не видите никаких ошибок при автоматическом запуске сервера MPD. Если вы это сделаете, что-то не так, и вам нужно будет выяснить, что это такое, и исправить это.

Теперь пришло время узнать, работает ли наше интернет-радио/проигрыватель музыкальных файлов. Для этого теста убедитесь, что на флэш-накопителе, подключенном к USB-концентратору, есть музыкальные файлы. Затем подключите наушники к разъему 3,5 мм на RPi. Введите следующую команду в окне оболочки: mpc add [url=http://64.40.99.2:8088]http://64.40.99.2:8088[/url]. Затем введите mpc play. Если все хорошо, вы должны услышать интернет-радиостанцию​​«Битлз».

Затем введите mpc clear, чтобы запретить серверу воспроизводить интернет-радиостанцию. Затем введите mpc update, чтобы сервер MPD создал базу данных песен на флэш-накопителе. Введите mpc listall, и вы должны увидеть все перечисленные песни, которые находятся на флэш-накопителе.

Затем введите mpc add, а затем одно из имен файлов, которые вы видели в команде listall. Наконец, введите mpc play, и вы должны услышать только что добавленную песню.

Если эти тесты пройдены успешно, вы готовы к работе. Вы можете выключить RPi и удалить USB-клавиатуру, мышь и USB-концентратор. Не забудьте подключить флэш-накопитель USB с вашими песнями обратно к RPi и подключить аудиокабель к стереосистеме.

Для удаленного управления сервером MPD вы можете использовать мое приложение для iPhone/iPod Touch (MpdClient) или любое другое доступное клиентское приложение MPD.

Сервер MPD, используемый вместе с RPi, может воспроизводить множество различных форматов аудиофайлов. Если вам нужен полный список поддерживаемых файлов, введите mpd --version в командной строке. Это означает, что вы можете поместить на флэш-накопитель различные типы аудиофайлов, и MPD без проблем проиндексирует и воспроизведет их все.

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

Когда MPD получает команду выполнить обновление, он извлекает информацию из файлов песен и сохраняет ее в своей частной базе данных. Это позволяет использовать очень мощные возможности поиска и сортировки. Используя клиент MPC, который мы установили на RPi для тестирования, мы можем вывести список всех доступных песен, набрав mpc listall. Введите mpc list artist, чтобы просмотреть список всех исполнителей с песнями на флэш-накопителе. Введите mpc list album, чтобы просмотреть альбомы, с которыми связаны песни на флэш-накопителе. Наконец, введите жанр списка mpc, чтобы просмотреть жанры песен на флэш-накопителе.

Хотя эти возможности могут показаться не такими мощными, рассмотрим следующий пример. Скажем, вы выполняете жанр списка mpc и получаете перенастроенный следующий список:

Мир

Камень

Неклассифицируемый

Праздничный день

Альтернатива и панк

Скажем, вам хочется слушать только мировую музыку. Вы можете сделать это, используя следующую серию команд:

mpc clear — Очищает плейлист сервера от всех песен, которые останавливают воспроизведение.

mpc findadd жанра World — создает на сервере музыкальный плейлист World.

mpc play — Запускает воспроизведение мировой музыки.

Конечно, я использовал жанр здесь только в качестве примера, но вы можете использовать те же методы для выбора песен из определенного альбома или для воспроизведения всех песен определенного исполнителя. Довольно мощная штука, на самом деле.

Очень удобно иметь дистанционно управляемый интернет-радио/проигрыватель музыкальных файлов. Самостоятельная сборка недорого делает его намного слаще.


Характерная черта

Модель А

Модель Б

Рекомендованная розничная цена

$25.00

$35.00

ЦПУ

700 МГц ARM11 с аппаратной плавающей запятой

графический процессор

Возможность видео 1080p

Память

256 МБ совместно с графическим процессором

512 МБ совместно с графическим процессором

USB-порты

1

2

Видео выходы

HDMI и композитное видео

Аудио выходы

Стерео разъем 3,5 мм + HDMI

Встроенное хранилище

SD-карта памяти до 128 ГБ

Сеть

Никто

10/100 Ethernet

Связь

3,3 "х 2,1"

Размер

3,3 "х 2,1"

Требования к мощности

300 мА - 1,5 Вт

700 мА — 3,5 Вт

Официальная ОС

Raspbian-версия Linux

ТАБЛИЦА 2. Технические характеристики Raspberry Pi.




Необходимо добавить материалы...
Результат опроса Результаты Все опросы нашего сайта Архив опросов
Всего голосовало: 373



          

Радио для всех© 2024