[GELÖST]Vorhören Ramp und Fade-Out via Fernsteuerung

Hi zusammen,

ich suche vergebens nach einer Möglichkeit über eine Taste der Fernsteuerung das Vorhören von bestimmten Punkten zu ermöglichen.
Mein Ziel:

Jeder Player hat 2 Tasten für diesen Zweck, ich drücke Taste 1, und im PFL höre ich die Ramp des jeweilig geladenem Musikstückes.
Wenn ich aber Taste 2 drücke würde ich gerne Fade-Out ergo. das Ende des Songs vorhören (um zu wissen ob und wie lange man eben drüber reden kann)

Ich hoffe das ist irgendwie machbar, bei einer anderen Radiosoftware die ich bei einem Sender mal genutzt habe hat das mittels der Taster im Bedienfeld geklappt.

Danke schonmal für die Hilfe.

Lieben Gruß
Chris

Mit dem Befehl “PFL END MON” kannst du an das Ende des Titels springen (x Sekunden vor “effektivem” Ende des Titels, also Fade Out bzw. StartNext; Anzahl der Sekunden ist im Konfigurationsprogramm unter Verschiedenes -> Einstellungen konfigurierbar).

Super, an sich genau was ich suche, ist es möglich die Befehle Playlist Player 1-1 (etc.) PFL ON/OFF und PFL END MON “gleichzeitig” auszuführen ?
So dass ich auf einer Taste wirklich direkt das Ende des speziellen Players hören kann und nicht vorher anderweitig PFL einschalten muss ?

Wenn du einen eigenen Soundkartenausgang für PFL hasrt, ist das kein Problem

Natürlich :slight_smile:
Extern sogar ne Schaltung gebastelt die sobald am PFL Signal ankommt auf den Monitoren alles andere abschaltet :wink:

Wie würde ich das denn anstellen ?

Man kann Befehle grundsätzlich mit Semikolon verknüpfen:

PLAYER 1-1 PFL ON;PFL END MON

Allerdings braucht das PFL-Fenster ja einen kurzen Augenblick, bis es sich geöffnet hat. Und dann wird der END-MON-Befehl möglicherweise verschluckt. Das ließe sich nur durch ein Script mit sleep-Befehl lösen. Hier in der Variante als Hintergrund-Script, das direkt einen Befehl “PLAYER 1-1 END MON” definiert:

procedure OnExecuteCommand(Command: string);
begin
  if Command = 'PLAYER 1-1 END MON' then begin
    ExecuteCommand('PLAYER 1-1 PFL ON');
    sleep(100);
    ExecuteCommand('PFL END MON');
  end
  else if Command = 'PLAYER 1-2 END MON' then begin
    ExecuteCommand('PLAYER 1-2 PFL ON');
    sleep(100);
    ExecuteCommand('PFL END MON');
  end
end;

Wobei, dann kann man es auch direkt scripten:

procedure OnExecuteCommand(Command: string);
begin
  if Command = 'PLAYER 1-1 END MON' then begin
    Playlist(0).GetPlayer(0).SetPFL(true);
    if Playlist(0).GetPlayer(0).GetPFL = true then
     Playlist(0).GetPlayer(0).GetPFLSourceControl.EndMon;
  end
  else if Command = 'PLAYER 1-2 END MON' then begin
    Playlist(0).GetPlayer(1).SetPFL(true);
    if Playlist(0).GetPlayer(1).GetPFL = true then
     Playlist(0).GetPlayer(1).GetPFLSourceControl.EndMon;
  end;
end;

Die zusätzliche Abfrage “GetPFL = true” überprüft, ob der Player nun tatsächlich im PFL-Modus ist - und nicht etwa leer, mit fehlerhaftem Element geladen, …

Ach, und wenn es um das Ende-Vorhören des gerade laufenden Players geht: Da wird automatisch End Mon aktiviert wenn du PFL einschaltest. (Voraussetzung: die entsprechende Player-Option sowie gleichzeitige Wiedergabe und PFL ist aktiviert.)

Sorry dass ich mich nichtmehr gemeldet habe, war doch recht vie Arbeit plötzlich hier daheim.

Danke für die Scriptvorlage, bin sehr zufrieden, läuft wie gewünscht !