€
$
₴
₽
EN
RU
Vmeste.EU
Лента
Каталог
Файлы
Форумы
Услуги
Основное
Radiotalk
Пользовательское
Технологии вещания, софт, скрипты
6 •
Посмотреть все темы
Скрипт джингл через определенное количество треков
1
2
86
Dakar
@Dakar
13.02.2011
@reboot cd /home/icecast/; /usr/local/bin/icecast -b -c icecast.xml & >/dev/null 2>&1
sleep 5
@reboot cd /home/icecast/; /usr/local/bin/ices -c ices.conf
Sleep - значение в чем измеряеться ?
86
Dakar
@Dakar
13.02.2011
о как О_о ices не запускаеться от другого пользователя О_О только из под рута
86
pusik
@pusik
13.02.2011
еще кто нибудь поделился бы модулем заказа песен под icecast2+ices было бы вообще шикарно)
833
metra52
@metra52
13.02.2011
ну его писать придется самому с использованием MySQL
86
pusik
@pusik
13.02.2011
metra52
пишет:
ну его писать придется самому с использованием MySQL
я понимаю, может кто уже писал, чтоб не изобретать велосипед)
86
Dakar
@Dakar
13.02.2011
tarasian666
пишет:
можно, просто там где в модуле есть "о тегах" "ретурнить" пустую строку
Этьо ф конфиге ? просто я его немного почистил можно пример
а всё понял добавил суб на получение титла
Отредактировано Dakar -
13.02.2011
11
Louie
@Louie
28.02.2011
Извинитеч что поднимаю эту тему заного, но у меня какой то глюк с перл скриптом.
Вроде всё работает, джинглы проигрываются как надо, но после проигрывания джинла снова начинает играть та песня которая была до джинла и потом идет без повтора, до очередного джингла .. в чём причина может быть.
И еще один вопросик , как выключить рандом??
тег в ices.conf
<Randomize>0</Randomize>
прописан, но он всё равно играет рандомно..
6245
Тарас
@tarasian666
28.02.2011
рандум в скрипте задан
начсет повтора - может быть, скрипт не идеален, написан на быструю руку, чтоб показать вам как это делаеться, дальше сами )
11
Louie
@Louie
28.02.2011
так. а как его убрать из скрипта?
$play=int(rand($num));
я так понял эта строчка за это отвечает. С перлом я вообще не дружу, поэтому и прошу о помощи.
86
pusik
@pusik
28.02.2011
Попробуй так.
$play=int($num);
не уверен!
6245
Тарас
@tarasian666
28.02.2011
ну мануал в руки и вперед, я ведь тоже так делал )
лишиться рандума в этом скрипте не обойдеться изменением одной строчки
Добавлено спустя 45 секунд:
pusik
пишет:
Попробуй так.
$play=int($num);
не уверен!
ничего хорошего из этого не выйдет ))
11
Louie
@Louie
28.02.2011
Гхм... интересно. Какой именно мануал? тыкните пальчиком +)
Вот блин. Из-за рандома, надо половину и-нета пролистать +)) а заменить надо будет как всегда 1 или 2 строчки +)
6245
Тарас
@tarasian666
28.02.2011
Louie
пишет:
Гхм... интересно. Какой именно мануал? тыкните пальчиком +)
забанили в гугле? ищите мануал по языке perl
Louie
пишет:
Вот блин. Из-за рандома, надо половину и-нета пролистать +)) а заменить надо будет как всегда 1 или 2 строчки +)
ну если вы такой умный то заменяйте )) но скажу вам что 2мя строчками точно не обойдеться, обойдеться где-то в 3 ))
11
Louie
@Louie
01.03.2011
tarasian666
пишет:
Louie
пишет:
Гхм... интересно. Какой именно мануал? тыкните пальчиком +)
забанили в гугле? ищите мануал по языке perl
Louie
пишет:
Вот блин. Из-за рандома, надо половину и-нета пролистать +)) а заменить надо будет как всегда 1 или 2 строчки +)
ну если вы такой умный то заменяйте )) но скажу вам что 2мя строчками точно не обойдеться, обойдеться где-то в 3 ))
Спасибо!!!! +) замучался правдо, зато работает +) спс за подмогу !
3
Victor
@zanshee
20.06.2011
Застрял на той-же описанной ранее ошибке:
Logfile opened
Initialization of playlist handler failed. []
Ices Exiting...
ices.conf вот (искомый кусок):
Показать текст
<Playlist>
<Randomize>1</Randomize>
<Type>perl</Type>
<Module>ices.pm</Module>
</Playlist>
сам /usr/local/etc/modules/ices.pm вот (полностью):
Показать текст
sub ices_init
{
print "Perl subsystem Initializing:\n";
$jingle = 0;
return 1;
}
sub ices_shutdown
{
print "Perl subsystem shutting down:\n";
}
sub ices_get_next
{
print "Perl subsystem quering for new track:\n";
if($jingle < 7)
{
$jingle ++;
@music=`/bin/ls -1 /home/icecast/data/playlist/*.mp3`;
}
else
{
$jingle = 0;
@music=`/bin/ls -1 /home/icecast/data/jingles/*.mp3`;
}
$num = scalar (@music);
$play=int(rand($num));
chomp $music[$play];
return $music[$play];
}
return 1;
помогите пожалуйста! Кто как решил эту проблему? Вы-ж так ничего и не написали толком.. :(
6245
Тарас
@tarasian666
20.06.2011
<Module>ices.pm</Module> надо без .pm
3
Victor
@zanshee
21.06.2011
Спасибо, всё получилось, дальше буду курить мануал по perl.
Меня просто сбила с толку эта фраза:
tarasian666
пишет:
<Module>ices</Module> - название файла скрипта должно в таком случае быть ices.pm
..теперь только понимаю что фразу можно понять двояко, а не только так как я её понял. :)
7094
Dim
@Render
29.06.2011
Louie
пишет:
tarasian666
пишет:
Louie
пишет:
Гхм... интересно. Какой именно мануал? тыкните пальчиком +)
забанили в гугле? ищите мануал по языке perl
Louie
пишет:
Вот блин. Из-за рандома, надо половину и-нета пролистать +)) а заменить надо будет как всегда 1 или 2 строчки +)
ну если вы такой умный то заменяйте )) но скажу вам что 2мя строчками точно не обойдеться, обойдеться где-то в 3 ))
Спасибо!!!! +) замучался правдо, зато работает +) спс за подмогу !
Хоть бы отписался, как удалось рандом убрать правильно.
Не выходит его снести. :/
7094
Dim
@Render
02.07.2011
Может кто из знающих Perl помочь, подсказать ?
Как заменить этот рандом на последовательную подстановку числа ?
То есть чтобы цифры подставлялись последовательно от 1 до N. Где N = $num (то есть кол-во строк[файлов])
И ещё. Дойдя до числа $num, последнего номера строки (последнего файла из списка), происходил повтор всего цикла, то есть от 1 и снова до значения в переменной $num.
Курение perl и гугление циклов - не помогают решить задачу. :(
//upd
Уже не нужно. Ices и perl - фтопку.
Отредактировано Render -
07.07.2011
10
radchuk007
@radchuk007
13.11.2019
Здравствуйте. В теме добрый человек поделился скриптом для автоматического воспроизведения джиинглов через определённое количество треков. Кто может помочь усовершенствовать скрипт? Работу оплатим.
Нужно добавить ещё 4 переменные в этот скрипт, сейчас там одна - джинглы. Нужно что бы через определенное количество треков можно было запускать в эфир анекдоты, записанные программы и т.д. Идея та же что и со джинглами, но расширенная. Кто разбирается в Perl, откликнитесь, пожалуйста, если всё получиться, скрипт опубликую здесь, я думаю это многим будет полезно.