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

Скрипты PAL для Sam Broadcaster

 

243
Владислав @VladokZzz
У кого получилось реализовать?
Нужно запускать в определенное время из определенной папки, НО что бы добавлялись трэйки пока не пройдет 1 час с начала запуска.
То бишь есть 3 трэйка по 20 минут, нужно что бы в 20:00 запустился рандомный трэк, а потом шла проверка прошел ли час, если нет (а по факту всего 20 минут прошло) и добавлялся следующий из папки. Получается 3 раза.
Трэки могут быть любой продолжительности.
По истечении 1 часа добавление из папки прекращается.
Спасибо за внимание!

0
6245
Тарас @tarasian666
и что тут такого сложного?
делаем по типу (синтаксис не помню точно)
Loop
PAL.WaitForTime( 20:00) - ждем 20.00
запускаем трек
PAL.WaitForTime (+1:00) - ждем час
запускаем трек

другий скрипт из другой папки

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

и что тут такого сложного?
делаем по типу (синтаксис не помню точно)
Loop
PAL.WaitForTime( 20:00) - ждем 20.00
запускаем трек
PAL.WaitForTime (+1:00) - ждем час
запускаем трек

другий скрипт из другой папки

Дак надо удалить лишние если они больше часа занимают... получается через час надо делать очистку всего queue и добавлять снова трэки основной ротации?

Пришлось сделать так:
1. Подходит время 20:00 идет очистка Queue
2. Добавление всех трэков из папки
3. Запуск шафла этих песен в Queue
4. Проходит 1 час Идет очистка
5. Добавление трэков основного потока
6. Шафл на них в Queue
Работает, но мне кажется есть способ корректнее )

Отредактировано VladokZzz - 05.10.2011
0
1572
KyPIIaToB @KyPIIaToB
VladokZzz Я тебе дал выше постом тему, там есть скрипт.

0
237
Conviction™ @Rocketdock
Народ подскажите скрипт который будет перемешивать треки в Queue

0
6245
Тарас @tarasian666
изначально неправильно мыслите, их надо "рандумно" добавлять в queue, а не добавлять и потом перемешивать

0
237
Conviction™ @Rocketdock
да да именно так, у меня есть скрипт который делает так, если 2 деки свободны он берет целый плейлист и воспроизводит, хотелось бы чтобы треки мешались

0
237
Conviction™ @Rocketdock
ап

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

ап

Queue.Shuffle;

Добавлено спустя 1 минуту 27 секунд:
Может нашелся смельчак? Какой код для отслеживания кол-ва раз проигрывания? К примеру хочу включать трэйки, которые меньше всего раз проигрывались.

0
57
LAZAR @LAZ2735
Народ подскажите как можно реализовать например рандомный трек из категории CAT['New'], но перед этим проиграл джингл, итак каждый раз когда из этой категории загружается трек?

0
1572
KyPIIaToB @KyPIIaToB
LAZ2735 пишет:

Народ подскажите как можно реализовать например рандомный трек из категории CAT['New'], но перед этим проиграл джингл, итак каждый раз когда из этой категории загружается трек?

джингл определенный?

0
57
LAZAR @LAZ2735
да, определённый

0
1572
KyPIIaToB @KyPIIaToB
  1. var Song : TSongInfo;
  2. PAL.Loop := True;
  3. Queue.AddFile('C:\jingl.mp3',ipTop); // путь до джингла
  4. Song := CAT['CAT (New)'].ChooseSong(smRandom,NoRules);
  5. Queue.Add(song,ipTop);
  6. PAL.WaitForTime('+00:20:00'); //ожидаем до повтора

Не проверял, но должно быть все ок, если что пиши

0
57
LAZAR @LAZ2735
Спасибо большое, работает

0
243
Владислав @VladokZzz
Добавлено спустя 1 минуту 27 секунд:
Может нашелся смельчак? Какой код для отслеживания кол-ва раз проигрывания? К примеру хочу включать трэйки, которые меньше всего раз проигрывались.

ап

0
1572
KyPIIaToB @KyPIIaToB
На сколько я знаю в базе отмечается сколько какой трек был проигран. Бери и выводи себе табличку для удобства.

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

На сколько я знаю в базе отмечается сколько какой трек был проигран. Бери и выводи себе табличку для удобства.

Вывести то не проблема на уровне PHP, а на уровне SAM как?
У меня идет ротация шафлом, какие-то трэки проигрались раз 15, а какие-то 1-2 раза. Это не есть хорошо.

0
43
_ @radioplus
Есть скрипт, который постоянно выпускает джинглы:

PAL.Loop := True;
PAL.WaitForPlayCount(1);
PAL.WaitForTime('+00:02:00');
CAT['Station IDs (All)'].QueueTop(smLRPA, NoRules);


Как его отключать в определённые часы? К примеру в воскресенье с 16:00:00 до 16:50:00 и в понедельник с 0:00:00 до 0:50:00, чтобы в это время он не втсавлял джинглы после каждого трека?
Спасибо!

0
1572
KyPIIaToB @KyPIIaToB
radioplus пишет:

Есть скрипт, который постоянно выпускает джинглы:

PAL.Loop := True;
PAL.WaitForPlayCount(1);
PAL.WaitForTime('+00:02:00');
CAT['Station IDs (All)'].QueueTop(smLRPA, NoRules);

Как его отключать в определённые часы? К примеру в воскресенье с 16:00:00 до 16:50:00 и в понедельник с 0:00:00 до 0:50:00, чтобы в это время он не втсавлял джинглы после каждого трека?
Спасибо!

Только с помощью добавления правила по типу

if ((now >= T['18:00:00']) and (now <= T['18:00:30']) and (DayOfWeek(Now) = Wednesday)) or
((now >= T['18:00:00']) and (now <= T['18:00:30']) and (DayOfWeek(Now) = Friday)) then
begin

Это просто пример.

0





Согласие на обработку данных на нашем сайте

Продолжая просматривать страницу, вы соглашаетесь с использованием файлов «Cookie» и с Политикой конфиденциальности «Privacy».
Наверху или внизу страницы вы можете изменить валюту и язык по умолчанию. Английская версия сайта ещё находится в доработке и доступна не полностью.