savostin
@savostin
Еще один программист

Комплект софта для создания интернет-радиостанции

Подскажите пожалуйста, существует ли в природе готовый набор программ для *nix, который бы без бубнов завелся и смог быстренько создать простейшую интернет-радиостанцию из папки с mp3 файлами?
Хочется: указать папку с mp3, подправить конфиг и запустить сервис, который будет рандомно играть эти файлы и желательно не сильно грузить систему (могу чтоб не конвертировать на лету, приводить библиотеку к одному битрейту по крону). В идеале имел бы вебморду, чтоб можно было сделать next/skip.
Не хочется: конвертировать в AAC/OGG и пр., искать кодеки, собирать из исходников, патчить ядро, не обнаружить каких-то зависимостей в стандартном репозитории и пр. Не хотелось бы Java.
Не интересуют hosted solution (проект в интранете, да и всякие лицензии и пр.)
Конкретной ОС нет, на выбор Centos (5/6), Debian.
Мои умения (скорей усилия) ограничиваются «yum search/install» / «apt-get». В крайнем случае могу configure > make > make install. Английский на уровне.
Желательно с инструкцией, если набор ставится неоднозначно.
Знаю про icecast, ezstream, Liquidsoap, airtime, J Radio, ARAS, R.O.S.S., VLC. Читал статьи на Хабре.
Все это в какой-то степени не отвечает требованиям или не заводится с моими знаниями (например, инструкция в инете устаревшая).
  • Вопрос задан
  • 5342 просмотра
Пригласить эксперта
Ответы на вопрос 5
BuriK666
@BuriK666
Компьютерный псих
Можно запустить icecast2+mpd
Ответ написан
Комментировать
shurshur
@shurshur
Сисадмин, просто сисадмин...
Собственно вот мой скрипт: sbin.ru/radio.zip
Он был даже двух версий, внутри обе с примером запуска (бесконечный while т.к. иногда под нагрузкой мой старый сервак не справлялся с процессом и коннект рвался).

Для запуска нужен icecast, perl-модуль Shout, а также вот это sbin.ru/mp3tools-27-11-05.tgz (на x86_64 могут прилично глючить, потому что писалось это в 2003-2005 годах, а первый amd64 у меня появился в 2006 году).

Рандом по списку был сделан так: выбирался случайный элемент, выкидывался из списка, а следующий выбирался на расстоянии между cur_list_length/2 и cur_list_length от текущего. Это понижало шансы на выбор двух песен одного исполнителя подряд, ведь предполагалось, что исполнители в файле сгруппированы (у меня они были разложены по каталогам, а список генерировался с помощью find). Реализовать какой-нибудь более умный алгоритм я так и не собрался.
Ответ написан
shurshur
@shurshur
Сисадмин, просто сисадмин...
icecast+ices?

В своё время решил эту задачу написанным на коленке perl-скриптом, использующим модуль Shout для доступа к icecast-серверу. Работало не один год, могу поискать.
Ответ написан
Было дело использовал liquidsoap — очень понравилась, есть примеры на оф-сайте для быстрого старта.
Ответ написан
iFrolov
@iFrolov
Даже здесь я писал 2 статьи про стриминг, а мануалов вообще хоть попой кушай. Страшно и непонятно — добро пожаловать на фриланс, вроде бы очевидно, к примеру я за такое беру от 300 американских рублей. Решения вроде «денвера» наглость, ибо радиостанция — это не «папка с музыкой», это в первую очередь идея и представление как оно будет. Если вы музыкальный редактор, то должны это понимать, а сисадмин не должен пугаться сборки из сорцов, да уж тем более не говорить про сборку ядра. Да и вообще непонятны требования, вопрос с преобразованием битрейта выглядит так, словно стриминг будет идти на пентиуме166. Мне, как автору своих решений для стриминга, крайне непонятны такие вопросы.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы