Bestand afspelen met AUX1

Voor vragen over Playlist Automation Language.
Plaats reactie
rodie

Bestand afspelen met AUX1

Ongelezen bericht door rodie »

Hoi!
ik zocht een scriptje waarmee ik 1 klein bestand kan afspelen om het uur om een bepaald tijdstip.
En deze OVER DE MUZIEK HEEN afspeelt. maar dan wel in de AUX

Ik hoop dat iemand mij hiermee kan helpen! :ANAL:
Gebruikersavatar
Borg
Beheerder
Berichten: 488
Lid geworden op: 25 jun 2006, 16:54
SAM-versie: 2.8.0.
Database: MySQL
Windows: 10
Locatie: Het Westland
Contacteer:

Re: Bestand afspelen met AUX1

Ongelezen bericht door Borg »

Deze vraag inmiddels meerdere keren gezien op het forum maar nog nooit de oplossing gezien, tevens wederom de opmerking of dat ook wel klinkt...over de muziek heen..


Jos
ʎɐqǝ uo pɹɐoqʎǝʞ ɐ ʎnq ı ǝɯıʇ ʇsɐן ǝɥʇ sı sıɥʇ
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: Bestand afspelen met AUX1

Ongelezen bericht door Wout »

Code: Selecteer alles

PAL.Loop := True;

var Song : TSongInfo;
Song := CAT['Station IDs (All)'].ChooseSong(smRandom,NoRules);

  PAL.WaitForTime('+00:15:00');  //elke kwartier je station-shout over je muziek heen
   Aux1.QueueSong(Song);
    Aux1.Play;

//5 September 2009 --BroadcasterForum.nl--      

Code: Selecteer alles

 PAL.WaitForTime('XX:15:00');  //elk uur om XX:15 je station-shout over je muziek heen  
Afbeelding
rodie

Re: Bestand afspelen met AUX1

Ongelezen bericht door rodie »

Bedankt!
Ik ga het even uitproberen.

en of het klinkt?
Het gaat mij om een tijdsein om xx:30 om het hele halfuur.
In het buitenland bijv. in Spanje is het vrij normaal.
rhradmin

Re: Bestand afspelen met AUX1

Ongelezen bericht door rhradmin »

kan er ook in worden gebouwd dat de normale volume lager gaat en het aux volume op normaal volume?
Gebruikersavatar
peellandfm
Moderator
Berichten: 1290
Lid geworden op: 27 feb 2006, 11:26
SAM-versie: 4.9.1.*
Database: MySQL
Windows: 10
Contacteer:

Re: Bestand afspelen met AUX1

Ongelezen bericht door peellandfm »

Je kan met de AGC van AUX1 wat doen of het volume van AUX1 wat harder zetten.

(Zeg maar zoals RTL en SBS het doen met reclameblokken)

Heeft bij mij altijd goed gewerkt in combinatie met onderstaand script. Hierin werd regelmatig een boodschap tijdens de intro van een plaat gespeeld. (zie het maar als een soort van voicetracking)

Code: Selecteer alles

{ About:
   This script will play a liner in Aux1 as soon as a new track starts
   The liner will only be played if
    a) The song has an intro of specified minimem duration
    b) The song is of type S, i.e. a normal song.

   Then the script will wait the specified amount of time before
   it tries to play another liner.

   This script can help brand your station and make it sound like a true
   commercial terrestrial station.
    any source connected

   Usage:
    a) Make sure you use the song information editor to specify intro times for your tracks!
    b) Make sure the AGC settings on Aux1 is to your liking. Also set the volume a bit louder
       on Aux1 so you cna clearly hear the liner above the active Deck audio.
    c) Edit the configuration details below.
       Make sure to change the category to the one you use to store your liners.
}
{ CONFIGURATION }
{==================================================}
const MIN_INTRO = 5*1000; //5 seconds
const MIN_WAIT  = '+00:15:00'; //Wait 15 minutes between liners
const LINERS_CATEGORY = 'Liners';


{ IMPLEMENTATION }
{--------------------------------------------------}
function ExtractIntro(Song : TSongInfo):Integer; forward;

var Song, Liner : TSongInfo;
var Waiting : Boolean = True;
var Intro : Integer = 0;
Aux1.Eject;

{Step1: Queue up the deck, ready for play}
Liner := CAT[LINERS_CATEGORY].ChooseSong(smLRP,NoRules);
if (Liner=nil) then
 WriteLn('No valid liner found')
else if (not Aux1.QueueSong(Liner)) then
 WriteLn('Failed to queue song: '+Liner['filename']);

{Wait for a valid song with intro}
while Waiting do
 begin
  {Step2: Wait for the song to change}
  PAL.WaitForPlayCount(1);

  {Step3: Grab current song information}
  Song := ActivePlayer.GetSongInfo;

  if (Song=nil) then
   WriteLn('The active player contained no song info??')
  else
   begin
    {Extract the intro time - this is a bit tricky}
    Intro := ExtractIntro(Song);

    {Start playing the liner if the current song matches our rules}
    if(Song['songtype']='S') and (Intro>=MIN_INTRO) then
     begin
      Aux1.Play;
      Waiting := False;
     end;
    Song.Free; Song := nil;
   end;
end;

{Wait 5 minutes before we do this all again}
PAL.WaitForTime(MIN_WAIT);
PAL.Loop := True;

{................................................}
function ExtractIntro(Song : TSongInfo):Integer;
var
 P : Integer;
 XFade : String;
begin
 Result := -1;
 XFade := Trim(Song['xfade']);

 WriteLn('Decoding XFade string');
 WriteLn('XFade: '+XFade);

 if XFade = '' then
  Result := -1
 else
  begin
   P := Pos('&i=',XFade);
   if (P > 0) then
    begin
     Delete(XFade,1,P+2);
     P := Pos('&',XFade);
     if (P>0) then
      Delete(XFade,P,Length(XFade));

     Result := StrToIntDef(XFade,-1);
     WriteLn('Intro time detected: '+XFade);
    end;
  end;
end;

{--------------------------------------------------}
Plaats reactie
  • Vergelijkbare Onderwerpen
    Reacties
    Weergaves
    Laatste bericht