User Tools

Site Tools


config:remotecontrol:sas

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
config:remotecontrol:sas [2016/08/31 09:05] – [GPI] twconfig:remotecontrol:sas [2019/07/09 16:18] (current) – external edit 127.0.0.1
Line 10: Line 10:
  
   * Lawo sapphire   * Lawo sapphire
 +  * Lawo ruby
   * Lawo crystal (all versions including crystal clear)   * Lawo crystal (all versions including crystal clear)
   * Lawo zirkon   * Lawo zirkon
Line 85: Line 86:
 ==== Monitor ==== ==== Monitor ====
  
 +On the //Monitor// tab you can see all SAS messages received by and sent to the console.
 +
 +The Monitor is only available when you configure the remote control through the Control Panel (from within a running mAirList instance).
 ===== Actions ===== ===== Actions =====
  
 +The SAS remote control offers a couple of actions that can e.g. be used from events, or as "Actions on start" or "Actions on stop" in the properties of any playlist item. You will find them in the //SAS// section of the //Add// menu in the action list editor.
 +
 +  * Set fader level
 +  * Set fader input gain
 +  * Turn on PFL for a channel
 +  * Turn off PFL for a channel
 +  * Turn on fader start button light
 +  * Turn off fader start button light
 +  * Turn on GPI
 +  * Turn off GPI
 +
 +Most of the actions are self-explaining. For those affecting a channel/source, you must enter the source name. If that channel/source is not assigned to any player or the cartwall, don't forget to register it on the //Other Sources// tab in the SAS configuration before using it in an action.
 ===== Scripting ===== ===== Scripting =====
 +
 +The SAS module provides a number of callback functions to be used in background scripts. The first one is a generic one that is called for any SAS packet received:
 +
 +  // Called when a command is received from an SAS remote
 +  procedure OnSASCommand(Remote: ISASRemote; Command: byte; Data: string);
 +  begin
 +  end;
 +  
 +The other functions are "high-level" functions that are called after decoding the particular packet:
 +
 +  // Called when an SAS GPI goes ON
 +  procedure OnSASGPIOn(Remote: ISASRemote; GPI: byte);
 +  begin
 +  end;
 +
 +  // Called when an SAS GPI goes OFF
 +  procedure OnSASGPIOff(Remote: ISASRemote; GPI: byte);
 +  begin
 +  end;
 +
 +  // Called when an SAS sources goes PFL ON
 +  procedure OnSASPFLOn(Remote: ISASRemote; SourceName: string);
 +  begin
 +  end;
 +
 +  // Called when an SAS sources goes PFL OFF
 +  procedure OnSASPFLOff(Remote: ISASRemote; SourceName: string);
 +  begin
 +  end;
 +  
 +To interact with the console over the SAS protocol, you must first get a reference to an ''ISASRemote'' interface using the following function:
 +
 +  function SASRemote(iIndex: integer): ISASRemote;
 +  
 +Remotes are 0-based, so ''SASRemote(0)'' will access the first SAS remote registered in the system.
 +
 +The ''ISASRemote'' interface provides a couple of methods used to send SAS packets to the console. The first method is used to send a raw command:
 +
 +  procedure SendCommand(iCommand: byte; iData: RawByteString);
 +  
 +Then there are a couple of high-level functions (they will use ''SendCommand'' internally):
 +
 +  procedure SetFaderInputGain(iSourceName: string; iLevel: ShortInt);
 +  procedure SetFaderLevel(iSourceName: string; iLevel: ShortInt; iFadeTime: word);
 +  procedure SetPrelisten1On(iSourceName: string);
 +  procedure SetPrelisten1Off(iSourceName: string);
 +  procedure SetGPI(iNumber, iValue: byte);
 +  procedure SetFaderStart(iSourceName: string; iStatus: byte);
 +
 +It is also possible to retrieve the fader status and fader level for a particular source. As this is an asynchronous operation, you must first use a "fetch" function, then wait for a bit (e.g. 100 milliseconds using ''sleep(100)''), and then retrieve the result via the "get" function:
 +
 +  procedure FetchFaderStatus(iSourceName: string);
 +  function GetFaderStatus(iSourceName: string): byte;
 +  procedure FetchFaderLevel(iSourceName: string);
 +  function GetFaderLevel(iSourceName: string): ShortInt;
  
config/remotecontrol/sas.1472634323.txt.gz · Last modified: 2019/07/09 16:18 (external edit)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki