Jingle aan het begin en einde van PAL script

Voor vragen over Playlist Automation Language.
Gesloten
sprk

Jingle aan het begin en einde van PAL script

Ongelezen bericht door sprk »

Hoi,

Ik gebruik het volgende PAL script:

Code: Selecteer alles

    PAL.Loop:=True;

        PAL.LockExecution;
    //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    var Woensdag            : Boolean;
    var DDays              : Boolean;
    var Begintijd          : string = '18:00:00'; // Begintijd
    var Eindtijd           : string = '18:59:59'; // Eindtijd
    var QueueTimeUur : Integer = 1*(60*60*1200);  //1=1uur 2=2uur 3=3uur om X uur muziek te vullen :)
    //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    // Enkele dag, De Woensdag
    Woensdag := (DayOfWeek(Now) = Wednesday);
    //Hieronder kan je dagen combineren :)
    //------------------------------------------------------------------------------
    // Alle D-dagen, Woensdag
    DDays := (Woensdag);
    //------------------------------------------------------------------------------
    //+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-

    while (DDays) and ((Now >= T[Begintijd]) and (Now <= T[Eindtijd])) do
     begin

    Queue.Clear;

        While Queue.Duration < QueueTimeUur do
      Begin
    Cat['Eurovision2012'].QueueBottom(smLRP, EnforceRules);
    Cat['Eurovision2012'].QueueBottom(smLRP, EnforceRules);
      end;

    ActivePlayer.FadeTonext;
     
    PAL.WaitForTime(T[Eindtijd]);
    ActivePlayer.FadeTonext;

     end;
     
    // Onderstaand regel altijd als laatste houden.
      PAL.UnLockExecution; 
Nu zou ik heel graag willen dat aan het begin en einde van het PAL script een bepaalde jingle wordt gedraaid.

Ik had daarom de volgende regel toegevoegd:
Queue.AddFile('E:\OUTmusic\Dropbox\Outmusic\Eurovision jingles\ESC_WELKOM_SONGFESTIVAL.mp3',ipTop);

Daardoor zag het script er als volgt uit:

Code: Selecteer alles

    PAL.Loop:=True;

        PAL.LockExecution;
    //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    var Woensdag            : Boolean;
    var DDays              : Boolean;
    var Begintijd          : string = '18:00:00'; // Begintijd
    var Eindtijd           : string = '18:59:59'; // Eindtijd
    var QueueTimeUur : Integer = 1*(60*60*1200);  //1=1uur 2=2uur 3=3uur om X uur muziek te vullen :)
    //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    // Enkele dag, De Woensdag
    Woensdag := (DayOfWeek(Now) = Wednesday);
    //Hieronder kan je dagen combineren :)
    //------------------------------------------------------------------------------
    // Alle D-dagen, Woensdag
    DDays := (Woensdag);
    //------------------------------------------------------------------------------
    //+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-

    while (DDays) and ((Now >= T[Begintijd]) and (Now <= T[Eindtijd])) do
     begin

    Queue.Clear;

        While Queue.Duration < QueueTimeUur do
      Begin
    Queue.AddFile('E:\OUTmusic\Dropbox\Outmusic\Eurovision jingles\ESC_WELKOM_SONGFESTIVAL.mp3',ipTop);  
    Cat['Eurovision2012'].QueueBottom(smLRP, EnforceRules);
    Cat['Eurovision2012'].QueueBottom(smLRP, EnforceRules);
      end;

    ActivePlayer.FadeTonext;
     
    PAL.WaitForTime(T[Eindtijd]);
    ActivePlayer.FadeTonext;

     end;
     
    // Onderstaand regel altijd als laatste houden.
      PAL.UnLockExecution; 
Ik vermoed dus dat ik die regel op een verkeerde plek in het script heb ingevoerd, want toen kreeg ik ineens om de twee nummers een jingle.

Dus mijn vraag: waar in het script zou ik die regel moeten invullen om aan het begin én einde van dat uur een jingle te spelen, en dat hij in de tussentijd alleen maar nummers uit de CAT Eurovision2012 speelt?

Alvast bedankt voor jullie hulp!
drOhimself

Re: Jingle aan het begin en einde van PAL script

Ongelezen bericht door drOhimself »

Je hebt die regel gezet in dit gedeelte : " While Queue.Duration < QueueTimeUur do ".
Die regel houd in dat er gekeken wordt naar of het aantal minuten van de in de queue aanwezige nummers, kleiner is dan het aantal minuten wat in je uur moet zitten (= 1 uur)
Als dat het geval is, dan worden die 3 regels uitgevoerd :

Code: Selecteer alles

Queue.AddFile('E:\OUTmusic\Dropbox\Outmusic\Eurovision jingles\ESC_WELKOM_SONGFESTIVAL.mp3',ipTop); 
    Cat['Eurovision2012'].QueueBottom(smLRP, EnforceRules);
    Cat['Eurovision2012'].QueueBottom(smLRP, EnforceRules);

Dus je zal hem even daarboven moeten plaatsen :

Code: Selecteer alles

..... 
Queue.Clear;
Queue.AddFile('E:\OUTmusic\Dropbox\Outmusic\Eurovision jingles\ESC_WELKOM_SONGFESTIVAL.mp3',ipTop); 
        While Queue.Duration < QueueTimeUur do
.......
drOhimself

Re: Jingle aan het begin en einde van PAL script

Ongelezen bericht door drOhimself »

Graag nog even een reactie VOORDAT het topic gesloten wordt.
Momenteel kan ik niet zien wie het gesloten heeft.
Gebruikersavatar
Wout
Beheerder
Berichten: 3501
Lid geworden op: 03 dec 2007, 14:17
SAM-versie: 2019.3
Database: MariaDB
Windows: 11
Locatie: West-Brabant
Contacteer:

Re: Jingle aan het begin en einde van PAL script

Ongelezen bericht door Wout »

Heb de PAL wat veranderd, dat het compacter wordt waardoor het waarschijnlijker overzichtelijker wordt dan het vorige.

Code: Selecteer alles

PAL.Loop:=True;

    while (DayOfWeek(Now) = Wednesday) and ( (Now >= T['18:00:00']) and (Now <= T['18:59:59']) ) do
    begin
        Queue.Clear;
        Queue.AddFile('E:\OUTmusic\Dropbox\Outmusic\Eurovision jingles\ESC_WELKOM_SONGFESTIVAL.mp3',ipTop);
        While Queue.Duration < 4320000 do
        Begin     
            Cat['Eurovision2012'].QueueBottom(smLRP, EnforceRules);
            Cat['Eurovision2012'].QueueBottom(smLRP, EnforceRules);
        end;
        ActivePlayer.FadeTonext;
        PAL.WaitForTime(T['18:59:59']);
    end; 
Afbeelding
sprk

Re: Jingle aan het begin en einde van PAL script

Ongelezen bericht door sprk »

Ik heb uiteindelijk het volgende script gebruikt:

Code: Selecteer alles

    PAL.Loop:=True;

        PAL.LockExecution;
    //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    var Woensdag            : Boolean;
    var DDays              : Boolean;
    var Begintijd          : string = '18:00:00'; // Begintijd
    var Eindtijd           : string = '18:59:59'; // Eindtijd
    var QueueTimeUur : Integer = 1*(60*60*1200);  //1=1uur 2=2uur 3=3uur om X uur muziek te vullen :)
    //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    // Enkele dag, De Woensdag
    Woensdag := (DayOfWeek(Now) = Wednesday);
    //Hieronder kan je dagen combineren :)
    //------------------------------------------------------------------------------
    // Alle D-dagen, Woensdag
    DDays := (Woensdag);
    //------------------------------------------------------------------------------
    //+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-

    while (DDays) and ((Now >= T[Begintijd]) and (Now <= T[Eindtijd])) do
     begin

    Queue.Clear;
Queue.AddFile('E:\OUTmusic\Dropbox\Outmusic\Eurovision jingles\ESC_WELKOM_SONGFESTIVAL.mp3',ipTop); 
        While Queue.Duration < QueueTimeUur do
      Begin
    Cat['Eurovision2012'].QueueBottom(smLRP, EnforceRules);
    Cat['Eurovision2012'].QueueBottom(smLRP, EnforceRules);
      end;

    PAL.WaitForTime(T[Eindtijd]);
Queue.AddFile('E:\OUTmusic\Dropbox\Outmusic\Eurovision jingles\ESC_STEMMEN.mp3',ipTop); 
     end;
     
    // Onderstaand regel altijd als laatste houden.
      PAL.UnLockExecution; 
Dat ging, op z'n zachtst gezegd, niet goed.

Hij begon het uur met een stuk of 8 (!) keer de jingle (ESC_WELKOM_SONGFESTIVAL.mp3). Dat zag ik gelukkig, dus die heb ik snel handmatig uit de queue gewist.

Daarna ging het bijna een uur goed, met allemaal gezellige Songfestivalliedjes, ach, je moet ervan houden.

Rond 19:00 uur speelde hij wel heel netjes de laatste jingle (ESC_STEMMEN.mp3), maar toen stonden er toch nog een stuk of 6 Songfestivalliedjes in de queue, die hij eerst nog uit wilde spelen. Hij maakte de queue om 19:00 uur en na het spelen van ESC_STEMMEN.mp3 dus níet leeg.

Ik doe vast iets verkeerd, toch?
drOhimself

Re: Jingle aan het begin en einde van PAL script

Ongelezen bericht door drOhimself »

Hmm.. ik zal het straks hier even in de test zetten.
drOhimself

Re: Jingle aan het begin en einde van PAL script

Ongelezen bericht door drOhimself »

Nou, deze loopt goed.
Ik heb de PAL.Lock regels er even uitgehaald en nog een 'ActivePlayer.FadeTonext' bijgezet.
Waar je ook even naar moet kijken bij jou, waar je DJ Player instelling op staat.
Ik heb hem op 'Play only queue' staan.

Code: Selecteer alles

//http://www.broadcasterforum.nl/viewtopic.php?f=81&t=4561&p=28539#p28533
//Jingle aan het begin en einde van PAL script

PAL.Loop:=True;
	//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	var Donderdag          : Boolean;
	var DDays              : Boolean;
	var Begintijd          : string = '20:00:00'; // Begintijd
	var Eindtijd           : string = '20:59:59'; // Eindtijd
	var QueueTimeUur : Integer = 1*(60*60*1100);  //1=1uur 2=2uur 3=3uur om X uur muziek te vullen :)
	//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	// Enkele dag, De Donderdag
	Donderdag := (DayOfWeek(Now) = Thursday);
	//Hieronder kan je dagen combineren :)
	//------------------------------------------------------------------------------
	// Alle D-dagen, Donderdag
	DDays := (Donderdag);
	//------------------------------------------------------------------------------
	//+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-

	while (DDays) and ((Now >= T[Begintijd]) and (Now <= T[Eindtijd])) do
		begin
			Queue.Clear;
			Queue.AddFile('E:\OUTmusic\Dropbox\Outmusic\Eurovision jingles\ESC_WELKOM_SONGFESTIVAL.mp3',ipTop);
			// meteen om 'begintijd' je eerste jingle afspelen
			ActivePlayer.FadeTonext;
			// je queue vullen tot aan 'Eindtijd' + beetje meer
			While Queue.Duration < QueueTimeUur do
				Begin
					Cat['Eurovision2012'].QueueBottom(smLRP, EnforceRules);
					Cat['Eurovision2012'].QueueBottom(smLRP, EnforceRules);
				end;
			PAL.WaitForTime(T[Eindtijd]);
			Queue.Clear;
			Queue.AddFile('E:\OUTmusic\Dropbox\Outmusic\Eurovision jingles\ESC_STEMMEN.mp3',ipTop);
			ActivePlayer.FadeTonext;
		end;
sprk

Re: Jingle aan het begin en einde van PAL script

Ongelezen bericht door sprk »

drOhimself schreef:Nou, deze loopt goed.
Ik heb de PAL.Lock regels er even uitgehaald en nog een 'ActivePlayer.FadeTonext' bijgezet.
Waar je ook even naar moet kijken bij jou, waar je DJ Player instelling op staat.
Ik heb hem op 'Play only queue' staan.
Dank je wel, ik ga hem vanavond om 6 uur uitproberen en laat je weten hoe het gegaan is!

De mijne staat op Auto DJ, want normaal gesproken (dus buiten dit uurtje om) gebruikt hij een clockwheel (Category Rotation), en ik dacht dat hij dan op Auto DJ moest staan? Ik houd normaal gesproken (dus buiten dit uurtje om) 0 liedjes in m'n queue, alleen als hij een jingle of TOTH speelt dmv een PAL-script of Event komt het in de queue.
sprk

Re: Jingle aan het begin en einde van PAL script

Ongelezen bericht door sprk »

Nou, volgens mij helemaal goed :) Dus ik ben er erg blij mee! Dank voor jullie hulp weer!
Gesloten
  • Vergelijkbare Onderwerpen
    Reacties
    Weergaves
    Laatste bericht