Решил в кои-то веки, сделать полезную публикацию в своем блоге. Ну и повод ведь есть. Как никак 11 лет моему ресурсу. Так что с праздником меня и переходим к делу.
Я уже рассказывал, что дома у меня домашний файловый сервер на плате Banana Pi R1. Установил я на него OpenMediaVault, добавил жесткий диск - там на плате разъем предусмотрен, удобно - музыка, фильмы, фото, документы. Доступно со всех устройств в доме. Операционку все же поставил официальную - кстати её разработку остановили на версии 16.04 в 2016 году. Всё что мне нужно работает - и локалка и wifi поднял. Единственное, что доработал, установил отдельный блок питания (рекомендуется помощнее) и от него толстыми проводами подпаял питание прямо на плату.
Но вот захотелось пользоваться banana ещё как и прослушиванием Интернет радиостанций. Тем более, что и аудиовыход 3'5 jack на плате есть. Остается установить необходимое программное обеспечение. Так как окружения рабочего стола у меня не установлено, работаю через консоль.
Воспользуемся советом отюда http://wiki.lemaker.org/BananaPro/Pi:Audio и отредактируем файл asound.conf так, чтобы воспроизведение шло в наше аналоговое устройство, то есть через разъем 3'5 на плате. Там всё просто, если нужен аналоговый выход то пишем card 0, если хотим воспроизводить через HDMI - card 1;
pcm.!default { type hw card 0 //If you want to set HDMI as output ,turn 0 to 1. device 0 } ctl.!default { type hw card 0 //If you want to set HDMI as output ,turn 0 to 1. }
Подключим какое - либо устройство вывода к гнезду (наушники, колонку) и проверим вывод звука командой:
speaker-test -twav -c2
Если звук не появился, то попробуйте доустановить alsa-utils и возможно понадобится pavucontrol
apt-get install alsa-utils
apt-get install pavucontrol
Теперь переходим к установке плеера, который будет работать в командной строке. После некоторого перебора вариантов я остановился на варианте плеера mpg123. Установка:
apt-get install mpd123
Плеер работает и с онлай-радио и файлами на устройстве пользователя.
Как запустить онлайн радио? Например есть такой ресурс http://icecast.omroep.nl/3fm-bb-mp3, значит вводим в консоли:
mpg123 http://icecast.omroep.nl/3fm-bb-mp3
Чтобы активировать кнопки управления плеером, воспользуемся командой:
-C , --control Включить клавиши управления терминалом
Запустим с этой опцией:
mpg123 -С http://icecast.omroep.nl/3fm-bb-mp3
Теперь например можно управлять громкостью воспроизведения клавишами [+] и [-] при активном окне терминала.
Основные команды для управления:
[s] или [ пробел ] включить отключить паузу
[f] следующий трек
[d] предыдущий трек
[l] показать плейлист и активную композицию
[q] выход
[b] возврат к началу трека
[0-9] перемещение по проигрываемой композиции, шаг 10% трека.
[m] просмотр технической информации о треке
[t] просмотр информации треке название, альбом и т.д.
Больше о информации по опциям https://linux.die.net/man/1/mpg123
Теперь создадим файл playlist, например в директории /home/user/music для того чтобы переключаться по станциям при помощи клавиш f и d
Для примера playlist имеет такой вид:
http://icecast.omroep.nl/3fm-bb-mp3
http://air.radiorecord.ru:8102/chil_128
http://air.radiorecord.ru:8102/club_128
http://air.radiorecord.ru:8102/dc_128
http://air.radiorecord.ru:8102/pump_128
http://air.radiorecord.ru:8101/rr_128
http://air.radiorecord.ru:8102/tm_128
http://air.radiorecord.ru:8102/vip_128
Сохраняем и запускаем наш плеер в консоли:
mpg123 -C -@/home/user/music/playlist
Переключаемся между станциями при помощи клавишей f и d
Для удобства использования, что бы каждый раз не запускать терминал, команду:
mpg123 -C -@/home/user/music/playlist
можно внести как запланированную задачу в Control Panel веб морды Openmediavault. Но в этом случае теряется возможность управления плеером. Запустится последняя прослушиваемая станция с громкостью выставленной до выхода из консоли.
Второй вариант управления это использовать Shellinabox из того же Openmediavault. В этом случае у вас сохраняются все возможности терминала, только управление через страницу вашего браузера.
При подготовке материала и настройке пользовался данными приведёнными в статье http://vsemubuntu.blogspot.com/2012/11/mpg123.html
P.S.
У кого в терминале название треков и станций отображается неправильно сконфигурируйте локаль при помощи команды:
dpkg-reconfigure console-setup