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

Формирование плейлиста в SAM при помощи .pal

 

117
lyfm @lyfm
Итак, сегодня для того, чтобы в определённое время играла определённая рубрика в рандоме я использую следующий скрипт (в данном случае у нас категория "morning"):
Показать текст


Тут, я думаю, ничего объяснять не надо.
Раньше мне хватало простого рандома, но сейчас я бы хотел установить параметры ротации как на Auto DJ.
Проблема в том, что Auto DJ формирует плейлист из предоставленных ему категорий вобщем-то как надо, но установить время для определённой категории невозможно. ТО есть: по правилам ротации (утренний-дневной-вечерний-ночной эфир) он не ротирует треки, а всё впремешку. Соответственно, нужно пользоваться подобным скриптом, но только с применением правил ротации.

"QueueBottom(smRandom, NoRules);" - Если же сказать скрипту, чтобы он делал это по правилам, то он будет обычным авто-диджеем и будет делать соверешенно тоже самое - все треки будут идти в независимости от времени, отведённому им.

Нужно сделать авто-диджей с блек джеком и ш.. временными рамками для определённой категории.
Такие дела. Возможно?

ps Простите моё нубство, ибо дизайнер я, не кодер. Совсем.

Добавлено спустя 6 минут 2 секунды:
Забыл написать, что данная ротация хрень посредством такого скрипта очень легко сбивает расписание, ибо джинглы никто не отменял

0
117
lyfm @lyfm
хмм.. а куда делись все старожилы сайта? я что-то пропустил?

0
468
Klef @Klef
lyfm пишет:

хмм.. а куда делись все старожилы сайта? я что-то пропустил?

как куда, спились все

pal синтаксис уже забыл, ибо с него давно слез :)
но наметку дам:

  1. var P : TPlayer;
  2. var OldTime : DateTime;
  3. OldTime := Now;
  4. PAL.Loop:=True;
  5. PAL.WaitForQueue(1);
  6. If (OldTime>T['00:00:00']) AND (OldTime<=T['08:00:00']) Then
  7. begin
  8. CAT['night'].QueueBottom(smLemmingLogic, EnforceRules);
  9. End;
  10. If (OldTime>T['08:00:00']) AND (OldTime<=T['14:00:00']) Then
  11. begin
  12. CAT['morning'].QueueBottom(smLemmingLogic, EnforceRules);
  13. End;
  14. If (OldTime>T['14:00:00']) AND (OldTime<=T['18:00:00']) Then
  15. begin
  16. CAT['afternoon'].QueueBottom(smLemmingLogic, EnforceRules);
  17. End;
  18. If (OldTime>T['18:00:00']) AND (OldTime<=T['22:00:00']) Then
  19. begin
  20. CAT['evening'].QueueBottom(smLemmingLogic, EnforceRules);
  21. End;
  22. If (OldTime>T['22:00:00']) AND (OldTime<=T['23:59:59']) Then
  23. begin
  24. CAT['night'].QueueBottom(smLemmingLogic, EnforceRules);
  25. End;

что такое night, morning, afternoon и evening объяснять не надо ;)

0
117
lyfm @lyfm
Всё равно они идут беспорядочно. А, хотя нет, теперь они чередуются в плейлисте: сначала рубрика morning, потом другая, потом другая, потом другая, потом опять morning. Вопрос, сами категории папкам присваивать в Playlist Rotation Rules? там папкам я дал категории и прописал Cat['night'].QueueBottom(smLemmingLogic, EnforceRules);

Так?

0
117
lyfm @lyfm
хмм, а вот нифига не так, я не стал устанавливать ничего в Playlist Rotation Rules, оставив там всё стандартно просто включив скрипт. Интересно получилось

0
468
Klef @Klef
если же указанный выше код работает, что я не могу гарантировать :)
то он должен работать так:
кидать в корзину воспроизведения из разных самовских папок плей листов (в зависимости от времени)
согласно правилам ротации (не повторять что то раньше чем)

0
23
f4ke @f4ke
Или скрипт не рабочий или я не правильно делаю.

Вот скрипт
var P : TPlayer;
var OldTime : DateTime;

OldTime := Now;

PAL.Loop:=True;
PAL.WaitForQueue(0);

If (OldTime>T['18:40:00']) AND (OldTime<=T['20:00:00']) Then
begin
CAT['Station IDs (All)'].QueueBottom(smLemmingLogic, EnforceRules);
End;


Все равно в 18:40 не началась трансляция с папки

0
1572
KyPIIaToB @KyPIIaToB
Возможно поможет

**********

0
117
lyfm @lyfm
Ну кстати Klef'овский скрипт отлично пашет и делает то, что надо

0
23
f4ke @f4ke
Хм, я в PAL, не опытен так как и в радио, но когда я загрузил этот скрипт доигрует трек должны играть треки с пл что указаний в скрипте, а в меню пишет "Waiting for queue to reach 1 items"

0
117
lyfm @lyfm
Ну, пишет и добавляет

0
23
f4ke @f4ke
У меня оно в наглую не добавляет! Вот скрипт я даже не делал разные папки просто что бы с одной хотя бы загружало

var P : TPlayer;
var OldTime : DateTime;

OldTime := Now;

PAL.Loop:=True;
PAL.WaitForQueue(1);

If (OldTime>T['00:00:00']) AND (OldTime<=T['08:00:00']) Then
begin
CAT['123'].QueueBottom(smLemmingLogic, EnforceRules);
End;

If (OldTime>T['08:00:00']) AND (OldTime<=T['14:00:00']) Then
begin
CAT['123'].QueueBottom(smLemmingLogic, EnforceRules);
End;

If (OldTime>T['14:00:00']) AND (OldTime<=T['18:00:00']) Then
begin
CAT['123'].QueueBottom(smLemmingLogic, EnforceRules);
End;

If (OldTime>T['18:00:00']) AND (OldTime<=T['22:00:00']) Then
begin
CAT['123'].QueueBottom(smLemmingLogic, EnforceRules);
End;

If (OldTime>T['22:00:00']) AND (OldTime<=T['23:59:59']) Then
begin
CAT['123'].QueueBottom(smLemmingLogic, EnforceRules);
End;


Папку 123 я создал в меню Playlist, в разделе Playlist, вместе с моей папкой 123 там ещё есть папки Tracks, DemoTracks. Все же правильно ? Режими пробивал разные - Queue, Auto Dj, Manual.

0
468
Klef @Klef
2 f4ke
задача к скрипту, а то у меня сердце обливается кровавыми слезами, смотря на код, который вы указали в своем предыдущем посте.

0





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

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