Тема: liquidsoap
http://savonet.sourceforge.net/
думаю откуда взять и как устанавливать не буду расписывать, есть и svn и deb пакеты которые есть в репозиториях, если уж не поймете то пишите.
может надо переместить тему в мануалы... но, так сказать, скрипт все таки.. и технология вещания.. и софт
самый простой запуск, просто плейлист вещаем
создаем скрипт
#!/usr/bin/liquidsoap
# где будут логи
set("log.file.path","/tmp/test.log")
# загружаем плейлист
myplaylist = playlist("/home/user/radio/music.m3u")
#запускаем вещалку
output.icecast(%vorbis,
host = "localhost", port = 8000,
password = "hackme", mount = "test", myplaylist)
конечно же ставим права на запуск и запускаем (без прав root)
в icecast должен появится маунт test и вещать в формате ogg
рассмотрим более интересное построения плейлиста
# загружаем плейлист
myplaylist = playlist("/home/user/radio/music.m3u")
# загружаем джинглы
jingles = playlist("/home/user/radio/jingles.m3u")
# строим плейлист с джинглами, radio = myplaylist - просто для удобства
radio = myplaylist
# задаем частоту джинглов, 1 джингл на 4 песни
radio = random(weights = [1, 4],[jingles, radio])
#запускаем вещалку
output.icecast(%vorbis,
host = "localhost", port = 8000,
password = "hackme", mount = "test", radio)
можно пускать на несколько серверов, просто прописывая "вещалки" с тем же плейлистом (но можно и разные)
output.icecast(%mp3,
host="localhost",port=8000,password="hackme",
mount="test_mp3",radio)
output.shoutcast(%mp3,
host="localhost", port = 8002,
password = "changeme", radio)
рассмотрим построение плейлиста в зависимости от времени суток
#дневной плейлист
day = playlist("/home/user/radio/day.pls")
#ночной
night = playlist(/home/user/radio/night.pls")
#задаем время
radio = switch([({ 6h-22h }, day), ({ 22h-6h }, night)])
реализация кроссфейда
#построение плейлиста с кроссфейдом
#fade_out - затухание предыдущей песни в сек
#fade_in - нарастание следующей песни в сек
radio = crossfade(start_next=1.,fade_out=5.,fade_in=3.,playlist("/home/user/radio/playlist.pls"))
другие опции вещялки: genre, url, public (true или false), name, protocol (http или icy), bitrate
пока не разобрался с заказами, разберусь - дополню.
может кто уже работал с liquidsoap, дописывайте свои "достижения"
Отредактировано tarasian666 (07-12-2011 20:27:24)