Event Service

Event-Service-menu

The context menu of the secondary events panel provides the "Event Service" submenu with access to the following supported external devices and Cinegy Stream Switcher:

Important
The Open API is available for the customers to implement the support for any other devices. The controlling commands syntax is described in the Cinegy Air Event Service API Manual.

Controlling the Nevion VikinX Router

Event Commands Format

Having installed the external event service as described in the Remote Cinegy Event Manager article, you can use this service to control the VikinX VD0808 router or any other device from Nevion (formerly Network Electronics) using the same protocol.

The table below shows the events format used to control this device.

DeviceCommandOp1Op2Op3Description

VIKINX

crosspoint

<Level>

<In>

<Out>

Set the crosspoint at level <Level> from input <In> to output <Out>.

For example, this event will connect input 1 to output 2 at level 4:

Device: VIKINX

Command: crosspoint

Op1: 4

Op2: 1

Op3: 2

If this event is sent to the VikinX event service, the following message appears in the service console window:

25.08.2016 12:00:32.107 EVENT: VIKINX crosspoint 4 1 2 : succeeded.

It means that the service has received the event successfully.

Device Configuration

You can use the configuration utility to define the device settings (e.g. the COM port number used to connect the "VikinX VD0808" device). This utility is automatically started by running the InsatallLocalService.bat and InsatallRemoteService.bat files.

Controlling the Kramer Electronics Router

Event Commands Format

The table below shows the events format used to control any Kramer Electronics device compatible with its "Protocol 2000".

DeviceCommandOp1Op2Op3Description

KRAMER

crosspoint_video

<Machine number>

<In>

<Out>

Set the video crosspoint only on the device defined by <Machine number> from video input <In> to video output <Out>.

KRAMER

crosspoint_audio

<Machine number>

<In>

<Out>

Set the audio crosspoint only on the device defined by <Machine number> from audio input <In> to audio output <Out>.

KRAMER

crosspoint_all

<Machine number>

<In>

<Out>

Set both the video and audio crosspoints on the device defined by <Machine number> from input <In> to output <Out>.

Controlling the Grass Valley NVision Router

The table below shows the events format used to control the Grass Valley NVision router using the NV 9000 protocol:

DeviceCommandOp1Op2Op3Description

NVISION

crosspoint

<In>

<Out>

<Level>

Set both the video and audio crosspoints from input <In> to output <Out>. The current use of video/audio crosspoint is defined by the <Level> parameter.

NVISION

crosspoint_all

<In>

<Out> or empty

Set both the video and audio crosspoints from input <In> to output <Out>. The level <Level> for both video and audio crosspoints and output <Out> (if empty) are defined in the device configuration.

NVISION

crosspoint_video

<In>

<Out>

Set the video crosspoint only from video input <In> to video output <Out>. The level <Level> is defined in the device configuration.

NVISION

crosspoint_audio

<In>

<Out>

Set the audio crosspoint only from audio input <In> to audio output <Out>. The level <Level> is defined in the device configuration.

Use the configuration utility to define the device settings. This utility is automatically started by running the InsatallLocalService.bat and InsatallRemoteService.bat files.

Controlling the Imagine Communications Router

The table below shows the events format used to control the router from Imagine Communications (formerly Harris Broadcast) using the Leitch protocol. Two types of this protocol are supported: terminal and pass-through.

DeviceProtocol TypeCommandOp1Op2Op3Description

HARRIS

terminal

crosspoint

<Level>:<In>,<Out>

Set the crosspoint at level <Level> from input <In> to output <Out>. To use multiple outputs, list them separated by commas. Additional crosspoint requests can be included in the <Op1> line by separating each set with a "/" separator.

HARRIS

pass-through

crosspoint

<Level>/<Out>,<In>

Set the crosspoint at level <Level> and define for output <Out> and input <In> values in Hexadecimal number from 0 to FFF0.

Each crosspoint field is treated as a completely separate command.

For example, with terminal protocol type, the event with the following configuration will connect input 2 to output 3 at level 1 and input 4 to outputs 5 and 6 at level 2:

Device: HARRIS

Command: crosspoint

Op1: 1:2,3 / 2:4,5,6

Op2:

Op3:

For example, with pass-through protocol type, the event with the following configuration will take input 31 (hex. 1F) on levels 0, 1, and 4 to output 4:

Device: HARRIS

Command: crosspoint

Op1: 014/4,1F

Op2:

Op3:

Controlling the UTAH Scientific Router

The table below shows the events format used to control the UTAH Scientific router.

DeviceCommandOp1Op2Op3Description

UTAH

crosspoint

<In>

<Out>

<Level>

If the level is not defined, this data is taken from the settings.

UTAH

disconnect

<In>

<Out>

<Level>

If the level is not defined, this data is taken from the settings.

Controlling the Blackmagic Videohub Router

The table below shows the events format used to control the Blackmagic Videohub router.

DeviceCommandOp1Op2Op3Description

BMDVIDEOHUB

crosspoint

main crosspoint

reserve crosspoint (optional)

The "crosspoint" definition has the following format: <[O|M]out>,<[I]in> [<[O|M]out>,<[I]in>…]
Ports can have the following prefixes:
I(i) – input port, no need to use at all;
O(o) – output port (default);
M(m) – monitoring output port (should always be set explicitly).

Delimiters between the output/input pair are , or :, no white space is allowed.

Delimiters between the route commands are: space, ;, \t (tab).

For example:

2,1 – route output port 2 to input port 1;

o2,i1 (or O1,I1 etc.) – route output port 2 to input port 1;

2:1 – route output port 2 to input port 1;

M2,1 – route monitoring output port 2 to input port 1;

3,2 4,2 o5,2 – three route commands in one sequence (output port 3 to input port 2, output port 4 to input port 2, output port 5 to input port 2).

GPI Driven Devices

GPI (General Purpose Interface) is the universal interface that can be used to control any external devices that support the GPI protocol. Cinegy supports the SeaLevel GPI board, which should be installed in order to use the GPI signaling.

Note
The GPI Seal/O-530E board support is currently in beta stage.

Event Commands Format

The table below shows the events format used to control the GPI driven devices.

DeviceCommandOp1Op2Op3Description

GPI

setpin

<pin number> [0..7]

value
(0 or 1)

"Slave ID" of device to execute command

Set the value (0 or 1) on the specified GPI pin.

GPI

setbyte

<byte mask> [0..255]

-

"Slave ID" of device to execute command.

Note
If Op2 is empty, default Slave ID from settings is used.

Set all the pins by mask.

Controlling Cinegy Stream Switcher

Cinegy Stream Switcher is a tool for automatic switching of RTP stream sources in redundant configurations. For example, Cinegy Stream Switcher can be used to monitor RTP output from master and slave Cinegy Playout instances. When one of streams is lost, Cinegy Stream Switcher will automatically switch to another one, so the output is not interrupted.

The setup procedure consists of three stages requiring specific application configurations. Each stage is described further in this article in detail.

1. Cinegy Stream Switcher Configuration

Install and configure Cinegy Stream Switcher tool for automatic switching of RTP stream sources in redundant configuration as described in the Cinegy Stream Switcher manual.

2. Local Cinegy Event Manager Configuration

Install the Cinegy Event Manager. After the installation is completed, configure the Cinegy Route plug-in.

3. Cinegy Air Configuration

The final setup stage contains the description of the Cinegy Air control application configuration.

To implement Cinegy Stream Switcher control, add the event manually on the secondary events panel; alternatively use the "Edit Favorites…​" context menu command from the secondary events panel to preconfigure the event and apply it to the needed playlist item. In the configuration window that appears, press the "New Item…​" button. In the "Event properties" window specify the corresponding event parameters:

  • Name – specify the name for the event;

  • Offset – define the time offset from the item start/end (depending on the value defined in the "From" field);

  • Device – specify the STREAM_SWITCHER as the device that will receive the event;

  • Command – enter a command name via the keyboard. The supported device commands description is given in the table below.

Command NameAction Taken

START

Causes a stopped channel to start. If already started, no action.

STOP

Causes a started channel to stop. If already stopped, no action.

MAIN

Triggers a change to the MAIN IP source. If already MAIN, no action.

BACKUP

Triggers a change to the BACKUP IP source. If already BACKUP, no action.

CONFIG

Loads the settings as contained in the OP3 parameter passed in.

  • Option1…3 – define the command options. An overview of the command options is represented in the table below.

Command OptionsAction Taken

OP1

The name or IP address of the Stream Switcher Server to address. If empty, the plug-in default parameter is used.

OP2

The channel name or channel zero-based numerical index to address. If empty, the plug-in default parameter is used.

OP3

Contains XML profile data to apply to the channel as replacement settings.

Note
This option is used by CONFIG command only.
  • Description – provide the event description;

  • ID – define the secondary event ID which is logged into the as-run log for every event raised.

The sample XML profile file is provided below:

<Stream UniqID="StrSwCfg" MainUrl="rtp://239.1.1.2:1235" BackupUrl="rtp://239.1.1.3:1236" OutputUrl="rtp://239.1.1.4:1237"
StreamName="Stream_02" MaxDelay="5000" MaxRtpLoss="5"><ErrorLevel Key="0" Value="3" /><ErrorLevel Key="1" Value="0" /><ErrorLevel Key="2" Value="0"
/><ErrorLevel Key="3" Value="0" /><ErrorLevel Key="4" Value="0" /><ErrorLevel Key="5" Value="0" /><ErrorLevel Key="6" Value="0" /><ErrorLevel
Key="7" Value="0" /><ErrorLevel Key="8" Value="0" /><ErrorLevel Key="9" Value="0" /><ErrorLevel Key="10" Value="0" /><ErrorLevel Key="11" Value="0" /></Stream>