Live DJ in Sam

Voor vragen over Playlist Automation Language.
Gesloten
Gebruikersavatar
BvSradio
Beginnende SAM-gebruiker
Berichten: 3
Lid geworden op: 17 apr 2020, 11:07
SAM-versie: Geen.
Database: Geen Database

Live DJ in Sam

Ongelezen bericht door BvSradio »

Hallo,
Ik ben aan een poosje aan het stoeien met een pal script wat ik hier gevonden heb.
Wij gebruiken Sam als Autodj nu willen we het zo hebben dat een Live dj via een mountpoint (/Live) in deck a/b komt
-- Op willekeurige tijden--


nu vond ik een script wat al een aantal jaren oud is maar krijg het niet werkend...
er staat dus doet check op shoutcast server, is dit een probleem als het een icecast server is ?

te doen vooraf..
"Geef de stream bij 'song info' als type : 'C' ( = Unknown Content)"
type C maar dan moet ik dus de url ook invoegen als track ?

Heb bij static relays ook ingevuld en die staat ook als "status active"

Code: Selecteer alles

// *******************************************
// *** Doet een check op shoutcast server  ***
// *** en indien actief plaatst hij de url ***
// ***      bovenaan in de queue lijst     ***
// *******************************************

// te doen vooraf :
// ================
// - Geef de stream bij 'song info' als type : 'C'  ( = Unknown Content)
// - Zorg dat de stream die gecheckt moet worden bij "statistic relay" ingevuld staat !

pal.Loop:=True;
var I : Integer;
var SongA : TsongInfo;
SongA := Activeplayer.GetSonginfo();
PAL.LockExecution;
I := 1 ; //  Statistics Relay nummer (#) -1 (min één) !!!!
begin;
    WriteStr('Relay number '); WriteLn(I);
    WriteStr('--Active: '); WriteLn(Relays[I].Active);
//    WriteStr('--Status: '); WriteLn(Relays[I].Status);
  end;
PAL.UnlockExecution;
If Relays[I].Active = False or (SongA['songtype'] = 'C') then
//do nothing
Else
Queue.AddUrl('http://localhost:8000/',ipTop); // IP + poort van stream die gestart moet worden.
PAL.WaitForTime(T['+00:00:05']);  // PAL script was soms te snel waardoor stream soms 2x in queue stond. 5 sec pauze dus.
If Relays[I].Active = False or (SongA['songtype'] = 'C') then
//do nothing
Else
PAL.WaitForPlayCount(1);  // Stream is in de queue !!! Wacht 1 plaat
If Relays[I].Active = False or (SongA['songtype'] = 'C') then
//do nothing
Else
PAL.WaitForPlayCount(1);  // Stream is aan het spelen !!! Wacht tot stream stopt ...
SongA.Free;
PAL.WaitForTime(T['+00:00:25']); // 25 seconden pauze voor volgende stream check
Pal.LockExecution;
Zou iemand mij toch een duwtje in de goeie richting willen geven? Want ik ben het even helemaal kwijt. :?

Gesloten
  • Vergelijkbare Onderwerpen
    Reacties
    Weergaves
    Laatste bericht