sorry voor de hele lastige uitleg maar hoop dat jullie begrijpen wat ik bedoel
ik heb in de bijlage de 2 scripts waarmee ik werk
mvg joeri
Code: Selecteer alles
// http://www.broadcasterforum.nl/viewtopic.php?f=81&t=4424&p=28065#p28062
// laden van reklame/nieuws/reklame SANDELAND FM om xx:59:55
// laatste nummer van het uur passend maken
// Wat variabele instellen
var RestTijd : Integer ;
var Now_minutes, tijd, uur : String ;
var D : TDataSet ;
var plus_uur : DateTime ;
var filename : String;
PAL.Loop := True ;
// Speed some things up
PAL.LockExecution ;
// Begin dit script op elk uur vanaf 5 seconden voor het uur
PAL.WaitForTime(T['XX:59:55']) ;
Queue.Clear;
Queue.AddFile('F:\\Reclame\Sandeland FM jingle - Reclame aanduiding.mp3',ipBottom);
ActivePlayer.FadeToNext;
Cat['Advertisements (All)'].QueueBottom(smRandom, NoRules);
Queue.AddFile('F:\Uurjingles\nieuws1uur.mp3',ipBottom);
Queue.AddFile('F:\Novum nieuws\nieuws.mp3',ipBottom);
filename := FormatDateTime('dd-mm-hh',Now)+'.m3u';
Writeln(filename);
Queue.AddList('C:\Program Files\StationPlaylist\Playlist\'+filename, ipBottom);
// Begin dit script op elk uur vanaf 5 minuten voor het uur
PAL.WaitForTime(T['XX:55:00']) ;
plus_uur := T['+01:00:00'] ;
tijd := FormatDateTime('hh', plus_uur) ;
uur := 'c:\tijd\' + tijd + '.mp3' ;
// Alleen de minuten van het uur
Now_minutes := FormatDateTime('n', Now) ;
// De aantal minuten afhalen van 1 uur en waar rekening is gehouden met de spelende nummer in miliseconden
RestTijd := ( ( (60 - Now_minutes ) * 60000) ) - ( Activeplayer.Duration - ActivePlayer.CurTime ) ;
// Hier zoek ie de nummer met de juiste lengte + een beetje meer
D := QUERY('SELECT ' +
'songlist.artist, songlist.filename, songlist.duration ' +
'FROM ' +
'songlist ' +
'WHERE ' +
'date_played <= DATE_SUB( NOW( ), INTERVAL 1 HOUR )' + // Alleen nummers die al 1 uur niet zijn gespeeld
'AND '+
'duration '+
'BETWEEN '+
':RestTijd '+
'AND '+
':RestTijd + 9000 ' + // Hier wat speling op de lengte van het gezochte nummer met 9 seconden
'ORDER BY RAND() ' + // Hij pakt een willekeurige nummer die voldoet aan de eisen
'LIMIT 1', [RestTijd], True ) ;
D.First ;
while not D.EOF do
begin
Queue.Addfile(+D['filename'], IpTop) ;
D.next ;
end ;
D.free ;
// Slow some things down
PAL.UnLockExecution ;
// Broadcasterforum 2012-04-01 / drOhimself / Wout / SandelandFMCode: Selecteer alles
PAL.LockExecution;
PAL.loop := true;
const LOCATION = 'c:\Radio\Jingles\tijd\';
var uur, oldpath : String ;
uur := FormatDateTime('hh', Now) ;
var path : String = '';
var time,hour,minute,second,millisecond : Integer;
PAL.UnLockExecution;
WriteLn('Komend uur: '+ IntToStr(uur+1));
While (Now >= T[uur+':59:48']) and (Now <= T[uur+':59:55']) do
BEGIN
PAL.LockExecution;
path := LOCATION + IntToStr(uur+1) + '.mp3';
Queue.AddFile(path, ipTop);
PAL.UnLockExecution;
PAL.WaitForTime(T['xx:59:56']);
ActivePlayer.FadeTonext ;
END;
Code: Selecteer alles
Queue.AddList('F:\Uurjingles\'+filename, ipBottom);Code: Selecteer alles
PAL.LockExecution;
PAL.loop := true;
const LOCATION = 'c:\Radio\Jingles\tijd\';
var uur, oldpath : String ;
uur := FormatDateTime('hh', Now) ;
var path : String = '';
var time,hour,minute,second,millisecond : Integer;
PAL.UnLockExecution;
WriteLn('Komend uur: '+ IntToStr(uur+1));
While (Now >= T[uur+':59:48']) and (Now <= T[uur+':59:55']) do
BEGIN
PAL.LockExecution;
path := LOCATION + IntToStr(uur+1) + '.mp3';
Queue.AddFile(path, ipTop);
PAL.UnLockExecution;
PAL.WaitForTime(T['xx:59:56']);
ActivePlayer.FadeTonext ;
END;
Code: Selecteer alles
// http://www.broadcasterforum.nl/viewtopic.php?f=81&t=4424&p=28065#p28062
// laden van reklame/nieuws/reklame SANDELAND FM om xx:59:55
// laatste nummer van het uur passend maken
// + uurjingle
// Wat variabele instellen
var RestTijd : Integer ;
var Now_minutes, tijd, uur : String ;
var D : TDataSet ;
var plus_uur : DateTime ;
var filename : String;
const LOCATION = 'F:\Uurjingles\';
uur := FormatDateTime('hh', Now) ;
var path : String = '';
var time,hour,minute,second,millisecond : Integer;
PAL.Loop := True ;
WriteLn('Komend uur: '+ IntToStr(uur+1));
While (Now >= T[uur+':59:48']) and (Now <= T[uur+':59:55']) do
// Begin dit script 5 a 10 seconden voor het HELE uur
BEGIN
//PAL.LockExecution;
Queue.Clear;
Queue.AddFile('F:\\Reclame\Sandeland FM jingle - Reclame aanduiding.mp3',ipBottom);
Cat['Advertisements (All)'].QueueBottom(smRandom, NoRules);
path := LOCATION + IntToStr(uur+1) + '.mp3';
Queue.AddFile(path, ipBottom);
Queue.AddFile('F:\Novum nieuws\nieuws.mp3',ipBottom);
filename := FormatDateTime('dd-mm-hh',Now)+'.m3u';
Writeln(filename);
Queue.AddList('C:\Program Files\StationPlaylist\Playlist\'+filename, ipBottom);
//PAL.UnLockExecution;
PAL.WaitForTime(T['xx:59:59']);
ActivePlayer.FadeTonext ;
END;
While (Now >= T[uur+':55:00']) and (Now <= T[uur+':55:05']) do
// Begin dit script 5 minuten voor het HELE uur
BEGIN
//PAL.LockExecution;
plus_uur := T['+01:00:00'] ;
tijd := FormatDateTime('hh', plus_uur) ;
uur := 'c:\tijd\' + tijd + '.mp3' ;
// Alleen de minuten van het uur
Now_minutes := FormatDateTime('n', Now) ;
// De aantal minuten afhalen van 1 uur en waar rekening is gehouden met de spelende nummer in miliseconden
RestTijd := ( ( (60 - Now_minutes ) * 60000) ) - ( Activeplayer.Duration - ActivePlayer.CurTime ) ;
// Hier zoek ie de nummer met de juiste lengte + een beetje meer
D := QUERY('SELECT ' +
'songlist.artist, songlist.filename, songlist.duration ' +
'FROM ' +
'songlist ' +
'WHERE ' +
'date_played <= DATE_SUB( NOW( ), INTERVAL 1 HOUR )' + // Alleen nummers die al 1 uur niet zijn gespeeld
'AND '+
'duration '+
'BETWEEN '+
':RestTijd '+
'AND '+
':RestTijd + 9000 ' + // Hier wat speling op de lengte van het gezochte nummer met 9 seconden
'ORDER BY RAND() ' + // Hij pakt een willekeurige nummer die voldoet aan de eisen
'LIMIT 1', [RestTijd], True ) ;
D.First ;
while not D.EOF do
begin
Queue.Addfile(+D['filename'], IpTop) ;
D.next ;
end ;
D.free ;
// Slow some things down
//PAL.UnLockExecution ;
END;
// Broadcasterforum 2012-04-03 / drOhimself / Wout / SandelandFMDat zou e.e.a. versnellen, nu doet SAM 1 seconde over iedere regel in het script.sandeland schreef:aan de instelling Lock / Unlock heb ik niks gewijzigd,
wat zou ik hieraan moeten veranderen? mvg
Code: Selecteer alles
// http://www.broadcasterforum.nl/viewtopic.php?f=81&t=4424&p=28065#p28062
// laden van reklame/nieuws/reklame SANDELAND FM om xx:59:55
// laatste nummer van het uur passend maken + uurjingle
// Wat variabele instellen
var RestTijd : Integer ;
var Now_minutes, tijd, uur : String ;
var D : TDataSet ;
var plus_uur : DateTime ;
var filename : String;
const LOCATION = 'F:\Uurjingles\';
uur := FormatDateTime('hh', Now) ;
var path : String = '';
var time,hour,minute,second,millisecond : Integer;
PAL.Loop := True ;
WriteLn('Komend uur: '+ IntToStr(uur+1));
While (Now >= T[uur+':59:48']) and (Now <= T[uur+':59:55']) do
// Begin dit script 5 a 10 seconden voor het HELE uur
BEGIN
PAL.LockExecution;
Queue.Clear;
Queue.AddFile('F:\\Reclame\Sandeland FM jingle - Reclame aanduiding.mp3',ipBottom);
Cat['Advertisements (All)'].QueueBottom(smRandom, NoRules);
path := LOCATION + IntToStr(uur+1) + '.mp3';
Queue.AddFile(path, ipBottom);
Queue.AddFile('F:\Novum nieuws\nieuws.mp3',ipBottom);
filename := FormatDateTime('dd-mm-hh',Now)+'.m3u';
Writeln(filename);
Queue.AddList('C:\Program Files\StationPlaylist\Playlist\'+filename, ipBottom);
PAL.UnLockExecution;
PAL.WaitForTime(T['xx:59:59']);
ActivePlayer.FadeTonext ;
END;
While (Now >= T[uur+':55:00']) and (Now <= T[uur+':55:05']) do
// Begin dit script 5 minuten voor het HELE uur
BEGIN
PAL.LockExecution;
plus_uur := T['+01:00:00'] ;
tijd := FormatDateTime('hh', plus_uur) ;
uur := 'c:\tijd\' + tijd + '.mp3' ;
// Alleen de minuten van het uur
Now_minutes := FormatDateTime('n', Now) ;
// De aantal minuten afhalen van 1 uur en waar rekening is gehouden met de spelende nummer in miliseconden
RestTijd := ( ( (60 - Now_minutes ) * 60000) ) - ( Activeplayer.Duration - ActivePlayer.CurTime ) ;
// Hier zoek ie de nummer met de juiste lengte + een beetje meer
D := QUERY('SELECT ' +
'songlist.artist, songlist.filename, songlist.duration ' +
'FROM ' +
'songlist ' +
'WHERE ' +
'date_played <= DATE_SUB( NOW( ), INTERVAL 1 HOUR )' + // Alleen nummers die al 1 uur niet zijn gespeeld
'AND '+
'duration '+
'BETWEEN '+
':RestTijd '+
'AND '+
':RestTijd + 9000 ' + // Hier wat speling op de lengte van het gezochte nummer met 9 seconden
'ORDER BY RAND() ' + // Hij pakt een willekeurige nummer die voldoet aan de eisen
'LIMIT 1', [RestTijd], True ) ;
D.First ;
while not D.EOF do
begin
Queue.Addfile(+D['filename'], IpTop) ;
D.next ;
end ;
D.free ;
// Slow some things down
PAL.UnLockExecution ;
END;
// Broadcasterforum 2012-04-03 / drOhimself / Wout / SandelandFMCode: Selecteer alles
// http://www.broadcasterforum.nl/viewtopic.php?f=81&t=4424&p=28065#p28062
// laden van reklame/nieuws/reklame SANDELAND FM om xx:59:55
// laatste nummer van het uur passend maken + uurjingle
// Wat variabele instellen
var RestTijd : Integer ;
var Now_minutes, tijd, uur : String ;
var D : TDataSet ;
var plus_uur : DateTime ;
var filename : String;
const LOCATION = 'F:\Uurjingles\';
uur := FormatDateTime('hh', Now) ;
var path : String = '';
var time,hour,minute,second,millisecond : Integer;
PAL.Loop := True ;
WriteLn('Komend uur: '+ IntToStr(uur+1));
While (Now >= T[uur+':59:48']) and (Now <= T[uur+':59:55']) do
// Begin dit script 5 a 10 seconden voor het HELE uur
BEGIN
PAL.LockExecution;
Queue.Clear;
Queue.AddFile('F:\\Reclame\Sandeland FM jingle - Reclame aanduiding.mp3',ipBottom);
Cat['Advertisements (All)'].QueueBottom(smRandom, NoRules);
path := LOCATION + IntToStr(uur+1) + '.mp3';
Queue.AddFile(path, ipBottom);
Queue.AddFile('F:\Novum nieuws\nieuws.mp3',ipBottom);
PAL.UnLockExecution;
PAL.WaitForTime(T['xx:59:59']);
ActivePlayer.FadeTonext ;
filename := FormatDateTime('dd-mm-hh',Now)+'.m3u';
Writeln(filename);
Queue.AddList('C:\Program Files\StationPlaylist\Playlist\'+filename, ipBottom);
END;
While (Now >= T[uur+':55:00']) and (Now <= T[uur+':55:05']) do
// Begin dit script 5 minuten voor het HELE uur
BEGIN
PAL.LockExecution;
plus_uur := T['+01:00:00'] ;
tijd := FormatDateTime('hh', plus_uur) ;
uur := 'c:\tijd\' + tijd + '.mp3' ;
// Alleen de minuten van het uur
Now_minutes := FormatDateTime('n', Now) ;
// De aantal minuten afhalen van 1 uur en waar rekening is gehouden met de spelende nummer in miliseconden
RestTijd := ( ( (60 - Now_minutes ) * 60000) ) - ( Activeplayer.Duration - ActivePlayer.CurTime ) ;
// Hier zoek ie de nummer met de juiste lengte + een beetje meer
D := QUERY('SELECT ' +
'songlist.artist, songlist.filename, songlist.duration ' +
'FROM ' +
'songlist ' +
'WHERE ' +
'date_played <= DATE_SUB( NOW( ), INTERVAL 1 HOUR )' + // Alleen nummers die al 1 uur niet zijn gespeeld
'AND '+
'duration '+
'BETWEEN '+
':RestTijd '+
'AND '+
':RestTijd + 9000 ' + // Hier wat speling op de lengte van het gezochte nummer met 9 seconden
'ORDER BY RAND() ' + // Hij pakt een willekeurige nummer die voldoet aan de eisen
'LIMIT 1', [RestTijd], True ) ;
D.First ;
while not D.EOF do
begin
Queue.Addfile(+D['filename'], IpTop) ;
D.next ;
end ;
D.free ;
// Slow some things down
PAL.UnLockExecution ;
END;
// Broadcasterforum 2012-04-03 / drOhimself / Wout / SandelandFM