weekplanning

Voor vragen over Playlist Automation Language.
Plaats reactie
Fokko

weekplanning

Ongelezen bericht door Fokko »

Hallo beste mensen op het forum.

Allereerst ben ik hier nieuw en heb even een avondje gezocht naar de mogelijkheden van PAL scripts.
Ik heb nu een planning aan de praat voor de nonstop uren en dat werkt prima.
De hele week is het nonstop, behalve op de zaterdag en zondag tussen 12:00 en 14:00 zenden we een opgenomen programma uit.
Hoe kan ik dit het beste verwerken, in 1 script?, of in meerdere?
Ik heb gezocht op het forum maar niet echt kunnen vinden wat ik moet hebben.

Dit is de script voor het nonstop gedeelte:

Code: Selecteer alles

PAL.Loop:=True;
PAL.WaitForTime(T['XX:59:30']);
Queue.Clear; 
Queue.AddFile('C:\jofox\nieuws\opener\001.mp3',ipTop);
var QueueTime : Integer = (50*50*600);
While Queue.Duration < QueueTime do

Begin 

Cat['60&70'].QueueBottom(smRandom, EnforceRules);
Cat['80'].QueueBottom(smRandom, EnforceRules);
Cat['60&70'].QueueBottom(smRandom, EnforceRules);
Cat['jingle'].QueueBottom(smWeighted, EnforceRules);
Cat['90'].QueueBottom(smRandom, EnforceRules);
Cat['60&70'].QueueBottom(smRandom, EnforceRules);
Cat['80'].QueueBottom(smRandom, EnforceRules);
Cat['jingle'].QueueBottom(smWeighted, EnforceRules);
Cat['60&70'].QueueBottom(smRandom, EnforceRules);
Cat['60&70'].QueueBottom(smRandom, EnforceRules);
Cat['90'].QueueBottom(smRandom, EnforceRules);
Cat['advert'].QueueBottom(smRandom, EnforceRules);
Cat['jingle'].QueueBottom(smWeighted, EnforceRules);
Cat['60&70'].QueueBottom(smRandom, EnforceRules);
Cat['80'].QueueBottom(smRandom, EnforceRules);
Cat['60&70'].QueueBottom(smRandom, EnforceRules);
Cat['promo'].QueueBottom(smRandom, NoRules);
Cat['60&70'].QueueBottom(smRandom, EnforceRules);
Cat['80'].QueueBottom(smRandom, EnforceRules);
Cat['60&70'].QueueBottom(smRandom, EnforceRules);
Cat['jingle'].QueueBottom(smWeighted, EnforceRules);
Cat['60&70'].QueueBottom(smRandom, EnforceRules);
Cat['80'].QueueBottom(smRandom, EnforceRules);
Cat['60&70'].QueueBottom(smRandom, EnforceRules);
Cat['jingle'].QueueBottom(smWeighted, EnforceRules);
Cat['60&70'].QueueBottom(smRandom, EnforceRules);
Cat['80'].QueueBottom(smRandom, EnforceRules);
Cat['60&70'].QueueBottom(smRandom, EnforceRules);

end;
drOhimself

Re: weekplanning

Ongelezen bericht door drOhimself »

Het beste kun je dit in een PAL zetten.
Ik heb jouw gedeelte gebruikt.
Lokaal op testmachine gezet, werkt goed.
Nog wel even de PAL.Lock en PAL.Unlock uit gelaten, dit kan je na testen zelf goed zetten.

Code: Selecteer alles

//	http://broadcasterforum.nl/viewtopic.php?f=81&t=3966
//	De hele week nonstop, behalve op de zaterdag en zondag tussen 12:00 en 14:00 zenden we een opgenomen programma uit.
//	Indien gewenst, kunnen de PAL.Lock en PAL.Unlock in werking worden gezet. (ALLEEN na goed testen)

PAL.Loop := True;
//	PAL.LockExecution;

//	Afhankelijk van start-tijd van deze PAL, zal de QueueTime langer dan één uur zijn.
//	Wordt opgevangen door de Queue.Clear opdrachten.
	var QueueTime : Integer = (60*60*1000);

//	Zaterdag 12:00 - 14:00 live uur

	while DayOfWeek(Now) = Saturday and ((Now >= T['11:59:55']) and (Now <= T['12:00:00'])) do
		begin
//			PAL.UnLockExecution;
				PAL.WaitForTime(T['12:59:55']);
				Queue.Clear;			
				Queue.AddFile('C:\jofox\nieuws\opener\001.mp3',ipTop);
				ActivePlayer.FadeTonext;
//	HIER BEGINT HET OPGENOMEN GEDEELTE OP ZATERDAG; wacht tot 14:00
				Queue.AddFile('C:\jofox\OPGENOMEN.mp3',ipTop);
				PAL.WaitForTime(T['13:59:55']);
				Queue.AddFile('C:\jofox\nieuws\opener\001.mp3',ipTop);
				ActivePlayer.FadeTonext;			
//			PAL.LockExecution;
		end;

//	Zondag 12:00 - 14:00 live uur

	while DayOfWeek(Now) = Sunday and ((Now >= T['11:59:55']) and (Now <= T['12:00:00'])) do
		begin
//			PAL.UnLockExecution;
				PAL.WaitForTime(T['12:59:55']);
				Queue.Clear;			
				Queue.AddFile('C:\jofox\nieuws\opener\001.mp3',ipTop);
				ActivePlayer.FadeTonext;
//	HIER BEGINT HET OPGENOMEN GEDEELTE OP ZONDAG; wacht tot 14:00
				Queue.AddFile('C:\jofox\OPGENOMEN.mp3',ipTop);
				PAL.WaitForTime(T['13:59:55']);
				Queue.AddFile('C:\jofox\nieuws\opener\001.mp3',ipTop);
				ActivePlayer.FadeTonext;			
//			PAL.LockExecution;
		end;
				
	While Queue.Duration < QueueTime do
		begin
			Cat['60&70'].QueueBottom(smRandom, EnforceRules);
			Cat['80'].QueueBottom(smRandom, EnforceRules);
			Cat['60&70'].QueueBottom(smRandom, EnforceRules);
			Cat['jingle'].QueueBottom(smWeighted, EnforceRules);
			Cat['90'].QueueBottom(smRandom, EnforceRules);
			Cat['60&70'].QueueBottom(smRandom, EnforceRules);
			Cat['80'].QueueBottom(smRandom, EnforceRules);
			Cat['jingle'].QueueBottom(smWeighted, EnforceRules);
			Cat['60&70'].QueueBottom(smRandom, EnforceRules);
			Cat['60&70'].QueueBottom(smRandom, EnforceRules);
			Cat['90'].QueueBottom(smRandom, EnforceRules);
			Cat['advert'].QueueBottom(smRandom, EnforceRules);
			Cat['jingle'].QueueBottom(smWeighted, EnforceRules);
			Cat['60&70'].QueueBottom(smRandom, EnforceRules);
			Cat['80'].QueueBottom(smRandom, EnforceRules);
			Cat['60&70'].QueueBottom(smRandom, EnforceRules);
			Cat['promo'].QueueBottom(smRandom, NoRules);
			Cat['60&70'].QueueBottom(smRandom, EnforceRules);
			Cat['80'].QueueBottom(smRandom, EnforceRules);
			Cat['60&70'].QueueBottom(smRandom, EnforceRules);
			Cat['jingle'].QueueBottom(smWeighted, EnforceRules);
			Cat['60&70'].QueueBottom(smRandom, EnforceRules);
			Cat['80'].QueueBottom(smRandom, EnforceRules);
			Cat['60&70'].QueueBottom(smRandom, EnforceRules);
			Cat['jingle'].QueueBottom(smWeighted, EnforceRules);
			Cat['60&70'].QueueBottom(smRandom, EnforceRules);
			Cat['80'].QueueBottom(smRandom, EnforceRules);
			Cat['60&70'].QueueBottom(smRandom, EnforceRules);
		end;
//	PAL.LockExecution;

//	drOhimself - SAM BroadcasterForum - 6 september 2011
Nog een vraagje :
Hoe kwam je aan deze getallen :QueueTime : Integer = (50*50*600);
Succes
Gebruikersavatar
Gerrit
Moderator
Berichten: 883
Lid geworden op: 16 nov 2008, 00:08
SAM-versie: 2018.7
Database: MySQL
Windows: 10
Locatie: Veenendaal
Contacteer:

Re: weekplanning

Ongelezen bericht door Gerrit »

Allereerst ben ik hier nieuw en heb even een avondje gezocht naar de mogelijkheden van PAL scripts.
Dat is grappig, bij jouw duurt een avondje 33:12 min. terwijl hij bij ons 6 uur duurt ! ;)

En euh drO, dit "QueueTime : Integer = (50*50*600);" staat in de weekplanner en is van toepassing bij de nonstop uren, op deze manier hoef je niet ieder uur te vullen met muziek, maar maak je onderaan het script 1x een muziek-format aan met de naam "QueueTime" erin verwerkt en dan vult het script ieder uur met dit format en die code (50*50*600) zorgt ervoor dat hij ongeveer een uur aan muziek in de Queue zet.

Op deze manier kun je verschillende formats op verschillende uren in de Queue laden.

Hier een voorbeeldje hoe het bij ons in het script staat:

Code: Selecteer alles

PAL.Loop:=True;
PAL.LockExecution;
var QueueTime : Integer = (60*60*500); 
var QueueTimeLoveland : Integer = (60*60*1200);
var QueueTimeTrancenight : Integer = (60*60*1200);
var QueueTimeNowDance : Integer = (60*60*1200);
//var QueueTimeJazzvalley : Integer = (60*60*1200);
En zo staat het dan in het desbetreffende uur:

Code: Selecteer alles

While Queue.Duration < QueueTimeLoveland do 
Begin 
Cat['Loveland'].QueueBottom(smRandom, NoRules);
Cat['Knuffel'].QueueBottom(smLRP, EnforceRules);
Cat['Knuffel'].QueueBottom(smLRP, EnforceRules);
end;
PAL.LockExecution;
end;
Dus eigenlijk bij deze PAL niet nodig.

Gerrit.
Vroeger was ik een twijfelaar, ik ben daar nu niet meer zo zeker van.
en
Ik houd van kritiek, maar ik moet het er wel mee eens zijn.
drOhimself

Re: weekplanning

Ongelezen bericht door drOhimself »

Ha Gerrit !
Bedankt voor de mooie uitleg.
Ik was op de lagere school nooit zo goed met rekenen, kreeg er bijles in, van een rond-borstige Pabo-studente.
Je begrijpt dat ik daardoor niet veel beter in rekenen ben geworden.. :-D :-D :-D :-D

Maar SAM werkt toch met microseconden in zijn telling?
Want ik ging er van uit dat mijn 60x60x1000 gewoon één uurtje was. (3.600.000 microseconden)
Maar ik kan het uiteraard fout hebben...
Ik hoor het graag !
Gebruikersavatar
Gerrit
Moderator
Berichten: 883
Lid geworden op: 16 nov 2008, 00:08
SAM-versie: 2018.7
Database: MySQL
Windows: 10
Locatie: Veenendaal
Contacteer:

Re: weekplanning

Ongelezen bericht door Gerrit »

Poe hee, voor de exacte uitleg van de berekening moet je bij Wout zijn, hij heeft het me wel eens uitgelegd maar dat weet ik niet meer precies.
Het enige wat ik wel weet, en dat is voor mij het belangrijkste, is dat ik met deze code ruim een uur muziek in mijn Queue krijg !! [smilie=good.gif]

Gerrit.
Vroeger was ik een twijfelaar, ik ben daar nu niet meer zo zeker van.
en
Ik houd van kritiek, maar ik moet het er wel mee eens zijn.
Gebruikersavatar
Wout
Beheerder
Berichten: 3522
Lid geworden op: 03 dec 2007, 14:17
SAM-versie: 2019.3
Database: MariaDB
Windows: 11
Locatie: West-Brabant
Contacteer:

Re: weekplanning

Ongelezen bericht door Wout »

Gerrit schreef:voor de exacte uitleg van de berekening moet je bij Wout zijn
viewtopic.php?f=81&t=3452&p=21463&hilit ... %3D#p21463
Afbeelding
drOhimself

Re: weekplanning

Ongelezen bericht door drOhimself »

....... I rest my case

(Vrij vertaald: [s]Ik laat Kees rusten.[/s] / hier wil ik het bij laten. )
Fokko

Re: weekplanning

Ongelezen bericht door Fokko »

Mannen, sorry voor mijn late reactie.
Maar bedankt voor de zeer uitgebreide uitleg.
Ennuh drOhimself, ik ga het script ff testen, bedankt!!! [smilie=good.gif]
Ik laat het hier even weten als het gelukt is.
Ik ben geen kenner met PAL, ik heb altijd met ots gewerkt, mar ben nu overgestapt nar Sam.
bedankt nogmaals voor de hulp, helemaal top!!!
drOhimself

Re: weekplanning

Ongelezen bericht door drOhimself »

Geen probleem Fokko,
Dat is juist de bedoeling van een forum, om veel te leren van andermans ervaringen.
En kom je er onverhoopt toch nog niet uit (na veel lezen/zoeken hier) dan zijn er uiteraard mensen genoeg die je 'een zetje in de goede richting' willen geven.

En PAL is een hele mooie scripttaal waar genoeg voorbeelden van zijn te vinden.
Vaak is 'tijd' het enige wat je erin moet investeren.....
We lezen binnenkort wel hoe je bent gevaren !
Plaats reactie