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:11] – [Actions] 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 103: Line 104:
 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. 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.1472634695.txt.gz · Last modified: 2019/07/09 16:18 (external edit)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki