ОсновноеRadiotalkПользовательское
Технологии вещания, софт, скрипты
6   •   Посмотреть все темы

SAM Broadcaster

 

6245
Тарас @tarasian666
Если я добавляю URL в queue, дека его хавает, прогружает буфер до 100% и переходит на следующий трек, это нормально?)

незнаю не у всех оно хочет норм работать

Сервер, всмысле какой-нибудь no-ip? Сложный вариант, каждому диджею ставить...

Ну нет же! я не о том говорю

сэм куда вещает? на сервер! вот там же и установить или еще один сервер или настроить на запущеном сервере еще один маунт, если это icecast

24
Nikem79 @Nikem79
Icecast да.

Ещё один маунт, ну доспустим, а что потом?

Отредактировано Nikem79 - 14.09.2012
6245
Тарас @tarasian666
а потом искать тот нужный pal скрипт который будет проверть маунт )

24
Nikem79 @Nikem79
Примерно понял, надо попробовать, спасибо)

24
Nikem79 @Nikem79
Ещё вопрос, как скриптом добавить всё содержимое папки чтобы уложилось в queue в алфавитном порядке?..

6245
Тарас @tarasian666
с алфавитным порядком будет сложнее это ж надо у каждого файла прочитать теги или имя, занести в массив, соритровать и тогда добавить, вряд ли кто то таким страдал чтоб найти готовый скрипт, разве что то похожее

24
Nikem79 @Nikem79
Получилось с ретрансляцией канала, я по началу вводил не правильный URL ставил на конце .m3u а там не надо оказывается. URL должен заканчиваться названием маунта)

24
Nikem79 @Nikem79
Мне бы подошёл скрипт, с таким алгоритмом:

Чистим queue
Ресканируем директорию c:\mp3\передачи
Добавляем все файлы из неё в queue
Сортируем queue по алфавиту

В принцыпе всё кроме сортировки представляю как написать. Помогите с сортировкой? Передачи записанные транслировать бы...

24
Nikem79 @Nikem79
Протестировал работу ретрансляции.

Вообщем, не сложным скриптом:


Queue.clear();
Queue.AddURL('http://radioadres.ru:8888/rdj',ipBottom);

можно добиться того, что в заданное время Сэм будет проверять моунт /rdj и при наличии сигнала на нём, ретранслировать его. При отключении сигнала, автоматом продолжает играть свой контент. Так же при необнаружении сигнала, он продолжает играть свой контент. Время проверки сигнала примерно 10 секунд.

243
Владислав @VladokZzz
Nikem79 пишет:

Протестировал работу ретрансляции.

Вообщем, не сложным скриптом:


Queue.clear();
Queue.AddURL('http://radioadres.ru:8888/rdj',ipBottom);

можно добиться того, что в заданное время Сэм будет проверять моунт /rdj и при наличии сигнала на нём, ретранслировать его. При отключении сигнала, автоматом продолжает играть свой контент. Так же при необнаружении сигнала, он продолжает играть свой контент. Время проверки сигнала примерно 10 секунд.

как же он будет играть свой контент если у вас идет Queue.clear();

6245
Тарас @tarasian666
если все верно настроено то сэм сразу же начнет наполнять очередь опять

но впринципе если сделать ipTop вместо ipBottom то ненадо будет делать clear

243
Владислав @VladokZzz
tarasian666 пишет:

если все верно настроено то сэм сразу же начнет наполнять очередь опять

но впринципе если сделать ipTop вместо ipBottom то ненадо будет делать clear

Вот это верно! ) Проблема только возникает если у одной из сторон кратковременный обрыв канала.

24
Nikem79 @Nikem79
да, да, я переделал на ipTop так удобнее. И даже сделал это не в Шедулере, а в ПалСкрипте, который сканирует канал каждые 2 песни.

var Song : TSongInfo;

//скрипт будет выполнятся постоянно(многократно)
PAL.Loop := True;
//ставим задержку на кол-во треков
PAL.WaitForPlayCount(2); // ставим задержку на 2 трека
//Вставляем адрес
Queue.AddURL('http://radioServer.ru:8888/rdj',ipTop); //m3u в адрес вписывать не надо!


получилось довольно не плохо, Сэм играет свой контент, в который очередь набивается из определённой директории с ресканом и проверкой новых Мп3 файлов, (эта директория доступна по ФТП определённому кругу людей, для живого наполнения контента)

через каждые 2 песни (за 10 секунд до окончания песни) ищет сигнал на ********** и при отсутствии перескакивает на следующий трек в queue
при наличии сигнала успевает его пребуферить, закинуть в деку и начать вещание
также при потере сигнала (при отключении диджея) он сразу перекидывает на следующий трек, задержек практически не заметно.
и снова каждые два трека сканирует тот моунт.

Получается что ведущие в любой момент могут подключаться и отключаться от основного вещания. (По окончании песен).

Почему сделал 2 песни, а не одну, потому что у меня на радио есть джинглы длиной менее 10сек. Просто не успевает за время проигрывания пребуферить канал.

Единственное что плохо, что Сэм во время вещания ведущих отображает название трека "**********" а не реальное название трека ведущего.

Отредактировано Nikem79 - 19.09.2012
1572
KyPIIaToB @KyPIIaToB
Nikem79 пишет:


Единственное что плохо, что Сэм во время вещания ведущих отображает название трека "**********" а не реальное название трека ведущего.

Можешь так же в скрипте задавать название какое тебе угодно.
Погугли по поводу TSongInfo, помоему как то так

40
soulfood @soulfood
Вопрос по Event Scheduler

Создаю эвент (add files to Queue). Он срабатывает, но добавляет файл в конец списка Queue.

А мне надо в начало. Что делать?

6245
Тарас @tarasian666
ipbottom на iptop поменять

40
soulfood @soulfood
tarasian666 пишет:

ipbottom на iptop поменять



Спасибо!

Можно как-нибудь сделать разный порядок воспроизведения треков из одного плейлиста каждый раз как его запускаешь планировщиком?

Отредактировано soulfood - 02.11.2012
243
Владислав @VladokZzz
soulfood пишет:

tarasian666 пишет:

ipbottom на iptop поменять



Спасибо!

Можно как-нибудь сделать разный порядок воспроизведения треков из одного плейлиста каждый раз как его запускаешь планировщиком?

Queue.Shuffle;

243
Владислав @VladokZzz
tarasian666 пишет:

похоже надо исправить ошибки в базе

Сделать форму в которой выбираешь из списка песню, нажимаешь ОК и SAM ищет определенную песню в определенной категории и если находит, то ставить ее в очередь.

чуть модифицировать samPHPweb и вуаля, и не сэм будет искать, он тут не нужен, так как все песни в базе, и очередь тоже в базе

По сути он и не нужен, можно просто написать форму и на PHP управлять базой MySQL не трогая SAM. Только вот как отреагирует SAM от внесения изменений в Queue List в обход него? Он постоянно связывается с базой и обновляет лист или только проиграв одну композицию?

6245
Тарас @tarasian666
если убрать галочку в playlist rotation rules - cache queue или тп то должно нормально реагировать