How-to`s — mpd + icecast2 = интернет-радио
Хочу рассказать, каким образом можно поднять у себя дома небольшую радиостанцию. Для этого нам потребуется icecast2 и mpd.
Что такое mpd? Вот определение из Wiki: «MPD — музыкальный проигрыватель с клиент-серверной архитектурой, который читает музыку из указанного каталога, а при помощи клиента можно управлять воспроизведением».
Для того, чтобы установить mpd, необходимо выполнить следующую команду (на примере Ubuntu):
Теперь его необходимо настроить. Конфигурационный файл находится в /etc/mpd.conf. Откроем его для редактирования от пользователя root:
Приведу свой пример конфигурации:
Итак, сохранив настройки создаем базу с нашей коллекцией музыки:
Теперь осталось только запустить mpd:
Для управления mpd можно поставить какой-либо клиент, коих довольно много, например Sonata (gtk) или ncmpc (console, рис 1.).
Рис.1. Консольный клиент для mpd - ncmpc
Теперь перейдем к icecast2. Из Wiki: «Icecast — свободное ПО для организации потокового цифрового аудиовещания». Для его установки выполняем следующую команду:
Настройки хранятся в /etc/icecast2/icecast.xml. Я выбрал для себя такой путь, создать в домашнем каталоге папку icecast2, в которой будут храниться все настройки, следовательно надо скопировать все файлы из /etc/icecast2 в эту папку и выставить на нее права:
Далее открываем файл icecast.xml:
Приведу изменения по сравнению с конфигурацией по умолчанию (mpd.conf и icecast.xml довольно хорошо прокомментированы, но все же, перед внесением изменений сделайте их резервные копии):
Теперь, чтобы иметь возможность запускать его через /etc/init.d/icecast2, необходимо в файле /etc/default/icecast2 произвести следующие изменения:
Теперь все готово, чтобы запустить icecast2, выполняем:
Набираем в браузере http://127.0.0.1:8000/ и мы должны увидеть примерно следующее:
Как минимум мы теперь знаем о том, что icecast2 работает. Теперь перезапускаем mpd и открываем любую композицию (если вы устанавливали ncmpc, то его можно запустить следующим образом: ncmpc --host=127.0.0.1 --port=6600). В icecast2 заходим в пункт «Administration» (нас попросят ввести login и password), там на первой же «вкладке» (Admin Home) после «Global Server Stats» будет информация о смонтированном потоке:
Вот и все, осталось только рассказать своим знакомым, что у вас есть своя интернет-радиостанция, к которой они могут обратиться по адресу http://your_ip_address:8000/stream.ogg.m3u
P.S. Не хотелось углубляться в настройки, целью было поднять mpd + icecast2 с минимальной рабочей конфигурацией (тем более про настройку mpd было уже довольно много сказано, хотя бы тут и тут), от которой в дальнейшем можно было бы шагать. И еще pdf c текстом поста.
P.P.S. Уже по теме кое-что было.
Что такое mpd? Вот определение из Wiki: «MPD — музыкальный проигрыватель с клиент-серверной архитектурой, который читает музыку из указанного каталога, а при помощи клиента можно управлять воспроизведением».
Для того, чтобы установить mpd, необходимо выполнить следующую команду (на примере Ubuntu):
sudo apt-get install mpd
Теперь его необходимо настроить. Конфигурационный файл находится в /etc/mpd.conf. Откроем его для редактирования от пользователя root:
sudo gedit /etc/mpd.conf
Приведу свой пример конфигурации:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
######################## REQUIRED PATHS ######################## |
если оставить только секцию "shout", то вы не сможете слышать музыку, которая играет в данный момент
Итак, сохранив настройки создаем базу с нашей коллекцией музыки:
sudo /etc/init.d/mpd start-create-db
на более старых версиях проигрывателя был префикс --create-db
Теперь осталось только запустить mpd:
sudo /etc/init.d/mpd start
Для управления mpd можно поставить какой-либо клиент, коих довольно много, например Sonata (gtk) или ncmpc (console, рис 1.).
Рис.1. Консольный клиент для mpd - ncmpc
Теперь перейдем к icecast2. Из Wiki: «Icecast — свободное ПО для организации потокового цифрового аудиовещания». Для его установки выполняем следующую команду:
sudo apt-get install icecast2
Настройки хранятся в /etc/icecast2/icecast.xml. Я выбрал для себя такой путь, создать в домашнем каталоге папку icecast2, в которой будут храниться все настройки, следовательно надо скопировать все файлы из /etc/icecast2 в эту папку и выставить на нее права:
sudo chown -R icecast2:icecast $HOME/icecast2
Далее открываем файл icecast.xml:
sudo gedit ~/icecast2/icecast.xml
Приведу изменения по сравнению с конфигурацией по умолчанию (mpd.conf и icecast.xml довольно хорошо прокомментированы, но все же, перед внесением изменений сделайте их резервные копии):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
<icecast> |
Теперь, чтобы иметь возможность запускать его через /etc/init.d/icecast2, необходимо в файле /etc/default/icecast2 произвести следующие изменения:
1 2 |
CONFIGFILE="$HOME/icecast/icecast.xml" |
Теперь все готово, чтобы запустить icecast2, выполняем:
sudo /etc/init.d/icecast2 start
Набираем в браузере http://127.0.0.1:8000/ и мы должны увидеть примерно следующее:
Как минимум мы теперь знаем о том, что icecast2 работает. Теперь перезапускаем mpd и открываем любую композицию (если вы устанавливали ncmpc, то его можно запустить следующим образом: ncmpc --host=127.0.0.1 --port=6600). В icecast2 заходим в пункт «Administration» (нас попросят ввести login и password), там на первой же «вкладке» (Admin Home) после «Global Server Stats» будет информация о смонтированном потоке:
Вот и все, осталось только рассказать своим знакомым, что у вас есть своя интернет-радиостанция, к которой они могут обратиться по адресу http://your_ip_address:8000/stream.ogg.m3u
P.S. Не хотелось углубляться в настройки, целью было поднять mpd + icecast2 с минимальной рабочей конфигурацией (тем более про настройку mpd было уже довольно много сказано, хотя бы тут и тут), от которой в дальнейшем можно было бы шагать. И еще pdf c текстом поста.
P.P.S. Уже по теме кое-что было.