\r
Syntax:: \r
\r
- LOADBG \r
- (?<video-channel>[1-9]+)(-(?<layer>\d+))?\r
- (?<producer>[\d\w]+) \r
- (\r
- (?<transitions>CUT|MIX|PUSH|WIPE|SLIDE) \r
- (?<duration>\d+)\r
- (?<tween>(linear|easein|and-more))?{LINEAR}\r
- (?<direction>LEFT|RIGHT)?{RIGHT}\r
- )?\r
- (?<auto>AUTO)?\r
- (?<parameters>.*)?\r
+ LOADBG [channel:int]-[layer:int] [clip:string] {[transition:CUT|MIX|PUSH|WIPE|SLIDE] [duration:int] {tween:string} {direction:LEFT|RIGHT} {auto:AUTO} {parameters:string}}\r
\r
Example::\r
\r
\r
Syntax:: \r
\r
- LOAD\r
- (?<video-channel>[1-9]+)(-(?<layer>\d+))?\r
- (?<producer>[\d\w]+) \r
- (\r
- (?<transitions>CUT|MIX|PUSH|WIPE|SLIDE) \r
- (?<duration>\d+)\r
- (?<tween>(linear|easein|and-more))?{LINEAR}\r
- (?<direction>LEFT|RIGHT)?{RIGHT}\r
- )?\r
- (?<auto>AUTO)?\r
- (?<parameters>.*)?\r
+ LOAD [channel:int]-[layer:int] [clip:string] {[transition:CUT|MIX|PUSH|WIPE|SLIDE] [duration:int] {tween:string} {direction:LEFT|RIGHT} {auto:AUTO} {parameters:string}}\r
\r
Example:: \r
\r
If no layer is specified the default layer index will be used.\r
\r
Syntax::\r
-\r
- PLAY\r
- (?<video-channel>[1-9]+)(-(?<layer>\d+))?\r
- (?<producer>[\d\w]+) \r
- (\r
- (?<transitions>CUT|MIX|PUSH|WIPE|SLIDE) \r
- (?<duration>\d+)\r
- (?<tween>(linear|easein|and-more))?{LINEAR}\r
- (?<direction>LEFT|RIGHT)?{RIGHT}\r
- )?\r
- (?<auto>AUTO)?\r
- (?<parameters>.*)?\r
+ \r
+ PLAY [channel:int]-[layer:int] [clip:string] {[transition:CUT|MIX|PUSH|WIPE|SLIDE] [duration:int] {tween:string} {direction:LEFT|RIGHT} {auto:AUTO} {parameters:string}}\r
\r
Example::\r
\r
\r
Syntax:: \r
\r
- PAUSE \r
- (?<video-channel>\d+)(-(?<layer>\d+))? \r
+ PAUSE [channel:int]-[layer:int]\r
\r
Example::\r
\r
\r
Syntax:: \r
\r
- STOP \r
- (?<video-channel>\d+)(-(?<layer>\d+))? \r
+ STOP [channel:int]-[layer:int]\r
\r
Example::\r
\r
\r
Syntax:: \r
\r
- CLEAR \r
- (?<video-channel>\d+)(-(?<layer>\d+))? \r
+ CLEAR [channel:int]{-[layer:int]}\r
\r
Example::\r
\r
<<< CLEAR 1-1\r
+ <<< CLEAR 1\r
\r
======\r
CALL\r
\r
Syntax::\r
\r
- CALL \r
- (?<video-channel>\d+(-(?<layer>\d+))?\r
- (?<function>[\d\w]+)\r
- (?<parameters>.*)?\r
+ CALL [channel:int]-[layer:int] [function:string] {parameters:string}\r
\r
Example::\r
\r
\r
Syntax::\r
\r
- SWAP \r
- (?<video-channel1>\d+)(-(?<layer1>\d+))? \r
- (?<video-channel2>\d+)(-(?<layer2>\d+))? \r
+ SWAP [channel:int]{-[layer:int]} [channel:int]{-[layer:int]}\r
\r
Example::\r
\r
\r
Syntax::\r
\r
- ADD \r
- (?<video-channel1>\d+) \r
- (?<consumer>[\d\w]+) \r
- (?<parameters>.*)\r
+ ADD [channel:int] [consumer:string] {parameters:string}\r
\r
Example::\r
\r
\r
Syntax::\r
\r
- REMOVE \r
- (?<video-channel1>\d+) \r
- (?<consumer>[\d\w]+) \r
- (?<parameters>.*)\r
+ REMOVE [channel:int] [consumer:string] {parameters:string}\r
\r
Example::\r
\r
\r
These sequences apply to all parameters, it doesn\'t matter if it\'s a file name or a long string of xml-data.\r
\r
-*********************\r
-Command Specification\r
-*********************\r
-\r
-Commands are documented as regular expressions. Line-breaks represent whitespace (\s).\r
-\r
************\r
Return codes\r
************\r
\r
Syntax::\r
\r
- DATA STORE\r
- (?<name>[\d\w]+)\r
- (?<data>.+)\r
+ DATA STORE [name:string] [data:string]\r
\r
Example::\r
\r
\r
Syntax::\r
\r
- DATA STORE\r
- (?<name>[\d\w]+)\r
- (?<data>".*")\r
+ DATA RETRIEVE [name:string]\r
\r
Example::\r
\r
*************\r
Misc Commands\r
*************\r
-Opens the diagnostics window.\r
-\r
====\r
DIAG\r
====\r
+Opens the diagnostics window.\r
\r
Syntax::\r
\r
\r
Example::\r
\r
- DIAG\r
+ <<< DIAG\r
\r
===\r
BYE\r
\r
Example\r
\r
- BYE
\ No newline at end of file
+ <<< BYE\r
+ \r
+====\r
+CHANNEL_GRID\r
+====\r
+Opens a window displaying all the channels currently running on the server.\r
+\r
+Syntax::\r
+\r
+ <<< CHANNEL_GRID\r
+ \r
+Example::\r
+\r
+ <<< CHANNEL_GRID
\ No newline at end of file
\r
Syntax::\r
\r
- MIXER\r
- (?<video-channel>[1-9]+)(-(?<layer>\d+))? \r
- KEYER\r
- (?<keyer>(0|1))\r
+ MIXER [channel:int]-[layer:int] KEYER [keyer:0|1]\r
\r
Example::\r
\r
Syntax::\r
\r
MIXER\r
- (?<video-channel>[1-9]+)(-(?<layer>\d+))? \r
- BLEND\r
- (?<blend-mode>(0|1))\r
+ [channel:int]-[layer:int] BLEND [blend-mode:string]\r
\r
Example::\r
\r
<<< MIXER 1-1 BLEND overlay\r
\r
+See:: \r
+\r
+Blend-modes.\r
+ \r
=============\r
MIXER OPACITY\r
=============\r
Syntax::\r
\r
MIXER\r
- (?<video-channel>[1-9]+)(-(?<layer>\d+))? \r
- OPACITY\r
- (?<opacity>(\d*\.?\d+))\r
- (\r
- (?<tween>\w+)\r
- (?<duration>\d+)\r
- )?\r
+ [channel:int]-[layer:int] OPACITY [opacity:double] {[tween:string] [duration:int]}\r
\r
Example::\r
\r
\r
Syntax::\r
\r
- MIXER\r
- (?<video-channel>[1-9]+)(-(?<layer>\d+))? \r
- BRIGTHNESS\r
- (?<brightness>(\d*\.?\d+))\r
- (\r
- (?<tween>\w+)\r
- (?<duration>\d+)\r
- )?\r
+ MIXER [channel:int]-[layer:int] BRIGTHNESS [brightness:double] {[tween:string] [duration:int]}\r
\r
Example::\r
\r
Syntax::\r
\r
MIXER\r
- (?<video-channel>[1-9]+)(-(?<layer>\d+))? \r
- SATURATION\r
- (?<saturation>(\d*\.?\d+))\r
- (\r
- (?<tween>\w+)\r
- (?<duration>\d+)\r
- )?\r
+ [channel:int]-[layer:int] SATURATION [saturation:double] {[tween:string] [duration:int]}\r
\r
Example::\r
\r
Syntax::\r
\r
MIXER\r
- (?<video-channel>[1-9]+)(-(?<layer>\d+))? \r
- SATURATION\r
- (?<contrast>(\d*\.?\d+))\r
- (\r
- (?<tween>\w+)\r
- (?<duration>\d+)\r
- )?\r
+ [channel:int]-[layer:int] CONTRAST [contrast:double] {[tween:string] [duration:int]}\r
\r
Example::\r
\r
\r
Syntax::\r
\r
- MIXER\r
- (?<video-channel>[1-9]+)(-(?<layer>\d+))? \r
- SATURATION\r
- (?<min-input>(\d*\.?\d+))\r
- (?<max-input>(\d*\.?\d+))\r
- (?<gamma>(\d*\.?\d+))\r
- (?<min-output>(\d*\.?\d+))\r
- (?<max-output>(\d*\.?\d+))\r
- (\r
- (?<tween>\w+)\r
- (?<duration>\d+)\r
- )?\r
+ MIXER [channel:int]-[layer:int] SATURATION [min-input:double] [max-input:double] [gamma:double] [min-output:double] [max-output:double] {[tween:string] [duration:int]}\r
\r
Example::\r
\r
\r
Syntax::\r
\r
- MIXER\r
- (?<video-channel>[1-9]+)(-(?<layer>\d+))? \r
- FILL\r
- (?<x>(\d*\.?\d+))\r
- (?<y>(\d*\.?\d+))\r
- (?<x-scale>(\d*\.?\d+))\r
- (?<y-scale>(\d*\.?\d+))\r
- (\r
- (?<tween>\w+)\r
- (?<duration>\d+)\r
- )?\r
+ MIXER [channel:int]-[layer:int] FILL [x:double] [y:double] [x-scale:double] [y-scale:double] {[tween:string] [duration:int]}\r
\r
Example::\r
\r
\r
Syntax::\r
\r
- MIXER\r
- (?<video-channel>[1-9]+)(-(?<layer>\d+))? \r
- CLIP\r
- (?<x>(\d*\.?\d+))\r
- (?<y>(\d*\.?\d+))\r
- (?<x-scale>(\d*\.?\d+))\r
- (?<y-scale>(\d*\.?\d+))\r
- (\r
- (?<tween>\w+)\r
- (?<duration>\d+)\r
- )?\r
+ MIXER [channel:int]-[layer:int] [x:double] [y:double] [x-scale:double] [y-scale:double] {[tween:string] [duration:int]}\r
\r
Example::\r
\r
==========\r
Creates a grid of video streams in ascending order of the layer index, i.e. if resolution equals 2 then a 2x2 grid of layers will be created.\r
\r
- MIXER\r
- (?<video-channel>[1-9]+)\r
- GRID\r
- (?<resolution>(\d+))\r
+ MIXER [channel:int] RID [resolution:int]\r
\r
Example::\r
\r
\r
Syntax::\r
\r
- MIXER\r
- (?<video-channel>[1-9]+)(-(?<layer>\d+))? \r
- VOLUME\r
- (?<volume>(\d+))\r
- (\r
- (?<tween>\w+)\r
- (?<duration>\d+)\r
- )?\r
+ MIXER [channel:int]-[layer:int] VOLUME [volume:double] {[tween:string] [duration:int]}\r
\r
Example::\r
\r
\r
Syntax::\r
\r
- MIXER\r
- (?<video-channel>[1-9]+)(-(?<layer>\d+))? \r
- CLEAR\r
+ MIXER [channel:int]-[layer:int] CLEAR\r
\r
Example::\r
\r
\r
Syntax::\r
\r
- LOOP (?<frame>0|1)\r
+ LOOP [loop:0|1]\r
\r
^^^^\r
SEEK\r
\r
Syntax::\r
\r
- SEEK (?<frames>\d+)\r
+ SEEK [frames:int]\r
\r
Example::\r
\r
\r
Syntax::\r
\r
- LENGTH (?<frames>\d+)\r
+ LENGTH [frames:int]\r
\r
Example::\r
\r
\r
Syntax::\r
\r
- FILTER (?<libavfilter-parameters>[\d\w]+)\r
+ FILTER [libavfilter-parameters:string]\r
\r
Example::\r
\r
\r
Syntax::\r
\r
- LOOP (?<frame>0|1)?\r
+ LOOP [loop:0|1]\r
\r
Returns\r
\r
\r
Syntax::\r
\r
- SEEK (?<frames>\d+)\r
+ SEEK [frames:int]\r
\r
Returns\r
\r
\r
Syntax::\r
\r
- CINF\r
- (?<filename>[\d\w]+)\r
+ CINF [filename:string]\r
\r
Example::\r
\r
\r
Syntax::\r
\r
- VERSION\r
- (FLASH)?\r
+ VERSION {SERVER|FLASH}\r
\r
Example::\r
\r
\r
Syntax::\r
\r
- VERSION\r
- ((?<video-channel>\d+)(-(?<layer>\d+)))|(TEMPLATE (?<template>[\d\w]+)))?\r
+ INFO ([channel:int]{-[layer:int]}|TEMPLATE [filename:string])\r
\r
Example::\r
\r
\r
Syntax::\r
\r
- CG\r
- (?<video-channel>[1-9]+)(-(?<layer>\d+))?\r
- ADD\r
- (?<template-layer>\d+)\r
- (?<template>[\d\w]+)\r
- (?<play-on-load>(0|1))?\r
- (?<data>".*")\r
+ CG [channel:int]-[layer:int] ADD [template-host-layer:int] [template:string] {[play-on-load:0|1]} {[data:string]}\r
\r
Example::\r
\r
\r
Syntax::\r
\r
- CG\r
- (?<video-channel>[1-9]+)(-(?<layer>\d+))?\r
- REMOVE\r
- (?<template-layer>\d+)\r
+ CG [channel:int]-[layer:int] REMOVE [template-host-layer:int] \r
\r
Example::\r
\r
\r
Syntax::\r
\r
- CG\r
- (?<video-channel>[1-9]+)(-(?<layer>\d+))?\r
- CLEAR\r
+ CG channel:int]-[layer:int] CLEAR\r
\r
Example::\r
\r
\r
Syntax::\r
\r
- CG\r
- (?<video-channel>[1-9]+)(-(?<layer>\d+))?\r
- PLAY\r
- (?<template-layer>\d+)\r
+ CG [channel:int]-[layer:int] PLAY [template-host-layer:int] \r
\r
Example::\r
\r
\r
Syntax::\r
\r
- CG\r
- (?<video-channel>[1-9]+)(-(?<layer>\d+))?\r
- STOP\r
- (?<template-layer>\d+)\r
+ CG [channel:int]-[layer:int] STOP [template-host-layer:int] \r
\r
Example::\r
\r
\r
Syntax::\r
\r
- CG\r
- (?<video-channel>[1-9]+)(-(?<layer>\d+))?\r
- NEXT\r
- (?<template-layer>\d+)\r
+ CG [channel:int]-[layer:int] NEXT [template-host-layer:int] \r
\r
Example::\r
\r
\r
Syntax::\r
\r
- CG\r
- (?<video-channel>[1-9]+)(-(?<layer>\d+))?\r
- GOTO\r
- (?<template-layer>\d+)\r
- (?<label>[\d\w]+)\r
+ CG [channel:int]-[layer:int] GOTO [template-host-layer:int] {[label:string]}\r
\r
Example::\r
\r
\r
Syntax::\r
\r
- CG\r
- (?<video-channel>[1-9]+)(-(?<layer>\d+))?\r
- UPDATE\r
- (?<template-layer>\d+)\r
- (?<data>".*")\r
+ CG [channel:int]-[layer:int] UPDATE [template-host-layer:int] [data:string]\r
\r
Example::\r
\r
\r
Syntax::\r
\r
- CG\r
- (?<video-channel>[1-9]+)(-(?<layer>\d+))?\r
- PLAY\r
- (?<template-layer>\d+)\r
- (?<method>[\d\w]+)\r
+ CG [channel:int]-[layer:int] INVOKE [template-host-layer:int] [method:string]\r
\r
Example::\r
\r
- <<< CG 1-1 GOTO 1 start_intro
\ No newline at end of file
+ <<< CG 1-1 INVOKE 1 start_intro
\ No newline at end of file