Service Host Administrator Guide

Version 2.2 | Published May 02, 2024 ©

Integration with Other Services

Channel Recorder can be integrated with other services.

Ingest

Ingest is a tool for scheduling media recordings and can utilize Channel Recorder as a target server. In the timeline part of Ingest it's possible to do both scheduled recordings to be started in the future and to start immediate crash recordings. It utilizes the Channel Recorder Control Commands to control the Channel Recorder. In the Ingest Configuration, admins can easily setup new channel recorders to be controlled by Ingest. It expects exclusivity use so no other integration may be used in conjunction with Ingest. In the configuration it's also possible to configure routers and sources and connect these to the channel recorders to reflect the physical connections.

Viz Libero

Channel Recorder is being used by Viz Libero as a real-time recording unit for sport analysis. It is supported in both the SDI and the IP workflow.

Viz Dart

The Viz Dart video acquisition tool can be configured to acquire assets using Channel Recorder. Integration of Channel Recorder with Viz Dart is based on the MLT Video Control Protocol, or MVCP. MVCP is by default activated on port 10000. To change the port, refer to Channel Recorder Configuration.

When operating Viz Dart with Channel Recorder, the timing between the different components is important. Take the following example:

images/download/attachments/149920366/dart_components.jpg

The typical operation when using Viz Dart is as follows:

  1. Dart sends a command to the router to route an NTSC signal to Channel Recorder.

  2. The router sends the NTSC signal to Channel Recorder.

  3. Channel Recorder was configured as 1080i30M, so it triggers a configurable timeout (dotted red line).

    1. By default, this timeout is three seconds duration and can be configured (restarting_delay).

    2. After the timeout, Channel Recorder restarts with NTSC signal resolution.

    3. If the same signal as configured (.i.e 1080i30M) is received again within those three seconds, the restart is cancelled.

  4. During the restart (dotted blue line) it is possible that Dart sends the MVCP commands to schedule a recording. If this happens, Channel Recorder queues the commands until it is ready with the new resolution.

There are other several situations (this is not meant to be an exhaustive list, but rather some examples):

images/download/attachments/149920366/dart_components_2.jpg

In this case, the MVCP commands are sent after the restart has already finished.

images/download/attachments/149920366/dart_components_3.jpg

In this case, the MVCP commands are sent before the restart occurred. When the restart finishes Channel Recorder recovers the timeline created before the restart.

Another important thing to consider is when Dart is configured with trigger_duration_out: 0. This configuration means that Dart does not send /SEQA SET UX MED vtr.media.input.trigger.duration.out to Channel Recorder and instead manually stops the recording by sending STOP UX.

One of the common issue with this configuration is that Channel Recorder is stopped unexpectedly (Dart reports this as "REC Unexpected DONE or BUSY state"). This is because Channel Recorder has received /SEQA SET UX MED vtr.media.input.trigger.duration.out before and is using the duration for all other recordings. So recordings that are longer than the specified duration are now going to be failing because Channel Recorder stop them at the configured duration instead of when Dart send the STOP UX command. One thing to note is that this duration is persistent among recordings.

Viz Dart also offers some configuration options, such as when the MVCP commands should be sent (prestarttime). To see the other options, use the following command on the Viz Dart machine: /opt/dart/bin/editconf -ey dartsettings.

For further information on how to configure Viz Dart, or how to operate it on a Video Disk Recorder, refer to the Viz Dart Documentation.