SimplyLive

SimplyLive Advanced Media Protocol (AMP) Support

Introduction

SimplyLive servers support integrations over the Advanced Media Protocol, or AMP. The AMP protocol was developed by Thompson Grass Valley in 2004, as an enhancement to a command list originally specified in the Video Disk Recorder – Command and Control Specification document of the Odetics Broadcast Corporation.

This protocol is intended to be used by any external system focusing on control over the SimplyLive server, using simple transport and media management functions. The protocol is ideally suited to workflows where integrations with SimplyLive are focused on VTR transport controls over replay channels, clips and playlists.

More advanced integrations might require the use of the Rest API SimplyLive Connect in place of, or in Conjunction with the SimplyLive AMP Server. For third parties seeking to build a more complex control surface in software or hardware for switching or reply, we recommend using the SimplyLive Device Plugins gRPC API.   

Important Information

Truncated Command List

⚠️       It should be noted that not all commands in the AMP protocol have been implemented by SimplyLive: only the truncated set of commands listed in this documented are supported.

Maximum Channel Support

⚠️       It should be noted that the AMP Protocol was designed for a maximum of 4 channels, currently SimplyLive AMP Server supports a maximum of 8 channels, specifically channels numbered 1 – 8.

Getting Started

SimplyLive AMP Server

Any SimplyLive server can communicate with external systems using AMP, providing that the SimplyLive authored AMP Server application is running. For more information on how to enable this please contact Riedel Customer Support[1]

The SimplyLive AMP Server will have an icon on the Desktop of the host server, this application can be launched to select which application (or mode) the SimplyLive AMP Server should run in.

The AMP Server works with either SimplyLive BMR (the recording mode) or SimplyLive ViBox (the production mode). We can change the mode on the AMP Server UI. It’s impossible to work with both at the same time.

Once running, the application will also display a log of commands received by any external applications.

Message Format

In TCP mode, all AMP commands are textual.

Creating a connection

The most AMP commands require a channel connection to the AMP Server, these commands will work on a PGM or a camera which is specified when creating the channel connection.

Some AMP commands don’t need to specify a PGM or a camera, we can create a channel-less connection for these commands. The AMP specification lists all these commands, please refer to it if needed.

Channel connection

The Structure is:

CRAT0007204Vtr4\n

Where:

·           “CRAT” tells the AMP server that a connection is coming.

·           “0007” is the total number of characters to follow.

·           “2” is the connection mode: “channel”

·           “04” is the channel length

·            “VtrX” is the channel where X is a value from 1 to 8, Here it is 4. We support up to 8 in Simplylive AMP Server. With BMR, Vtr1 means camera 1, Vtr2 means camera 2, and so on. With ViBox, Vtr1 means PGM 1, Vtr2 means PGM 2, and so on.

·           \n is the terminator of a command.

Channel-less connection

The Structure is:

CRAT00014\n

Where:

·           “CRAT” tells the AMP Server that a connection is coming.

·           “0001” is the number of characters to follow.

·           “4” is the connection mode: “channel-less”

·           \n is the terminator of a command.

Closing a connection

The Structure is:

STOP0000\n

This command tells the AMP server to close the connection, whether it’s a channel connection or a channel-less connection.

Sending a command:

CMDS<decimal length of message><message><terminator>

For example, to play a clip on PGM1, we send:
CMDS00042001\n

·         CMDS is the prefix of AMP commands for the SimplyLive AMP Server,

·         0004 is the length of the command expressed as a decimal number; in this example it is four because the command is “2001” (which is only four numeric characters).

·         2001 is the command; in this example it is to play a clip on PGM1.

·         \n is the terminator of a command.

If you are referencing commands using the AMP specification document, be aware that there is no CMDS and message length presented in the documentation.

Important: In the AMP specification, when it says Byte count, we need to double the count since the bytes will be presented by hexadecimal number, so 1 byte = 2 hexadecimal number.

Standard Message Format

Command Type

Byte Count

Command Code

Payload Length

Payload

Checksum

1 byte

(1 char)

1 byte

(1 hex char)

2 bytes

(2 char)

2 bytes

(4 hex chars)

n bytes

(n * 2 hex chars)

1 byte

(2 hex char)

Example Command

For example, we send an ID Status command with the ID name "clip01" as payload:

CMDS0020aa180006636c69703031\n

  • CMDS: AMP command prefix; this should be in upper case. Please note other hexadecimal number should be in lower case.

  • 0020: a decimal number, the number of the following characters

  • aa18: the first a is the command type, the second a is a hexadecimal number 0xa presented payload length, but in this command as an exception it doesn't present the payload length but means in payload the clip name is in Extended Format (see Command Definitions). 18 is the command code.

  • 0006: a hexadecimal number presented payload length in byte count.

  • 636c69703031: the encoded string "clip01", to encode a string, first step, we get the UTF8 byte array of the string and then convert each byte to the ASCII character value presented by 2 hexadecimal number.

  • In TCP mode, checksum is not used.

Command Definitions

Name Format

An 8-byte ASCII name representing the file name of the clip. If timecode and name are together, the timecode precedes the name in the data stream.

If the name length is less than 8 bytes, then the extra bytes following the name are padded with blanks (0x20).

Extended Name Format

A variable length ASCII name preceded by a two-byte value containing the name length. If timecode and name are together, the timecode precedes the name in the data stream.

Timecode Format

Timecode is represented in four BCD bits representing the hours (hh), minutes (mm), seconds (ss), and frames (ff) of a clip. The ordering of the bytes is: ff ss mm hh with frames sent first in the byte stream.

Format for Multi-Byte Numbers Sent

MSB is sent first in the stream.

Command List

The list of supported AMP protocol commands is documented in this section. The structure is to state the category of the commands, followed by the heading listing the command and command name as follows:

<Command><Command Name>

Under the heading and additionally Riedel specific notes will be added in Light Grey Italics, followed by information about the command as stated in the AMP Specification guide, along with the AMP document reference number.

Device Management

(01.06) Set Drop Frame Mode

Command Sent

01.06 Set Drop Frame Mode

Command Type            0
Byte count                       1
Command Code          06

Send Data 1                    1 byte data to set Drop Frame on/off

CMD Type

Byte Count

CMD Code

Send Data

CS

0

1

0

6

 

 

1 byte

1 byte

1 byte

1 byte

Returns

ACK

(20.04) Standby Off

Command Sent

20.04 Standby Off

Command Type            2
Byte count                       0
Command Code          04

Returns

ACK

(20.05) Standby On

Command Sent

20.05 Standby On

Command Type            2
Byte count                       0
Command Code          05

Returns

ACK

(20.60) EE Off

Command Sent

20.60 EE Off

Command Type            2
Byte count                       0
Command Code          60

Returns

ACK

(20.61) EE On

Command Sent

20.61 EE On

Command Type            2
Byte count                       0
Command Code          61

Returns

ACK

(A0.21) Device ID Request

Command Sent

A0.21 Device ID Request

Command Type            A
Byte count                       0
Command Code          21

Returns

88.21 Device ID

Command Type            8
Byte count                       8
Command Code          21
Return Data                    8 byte device ID

Transport Controls

(2X.00) Stop

Only 20.00 is supported.

The SimplyLive AMP Server can work with the BMR application (in recording mode) or ViBox (not in recording mode),

BMR: AMP controls channels that are mapped to camera 1-8 using the channel name VTR1- 8, the Stop command will switch the channel to a live camera, VTR1 to camera 1, VTR2 to camera2, and so on.

ViBox: AMP controls channels that are mapped to PGM1-8 using the channel name VTR1-8 or PGM1-8, the Stop command will change the speed of the PGM to 0%

Command Sent

2X.00 Stop

Command Type            2
Byte count                       0 or 4
Command Code          00
Send Data 1                    4 byte time data (timecode (see Command Definitions)
                                                (ffssmmhh)) (Optional)

Returns

ACK

(2X.01) Play

Only 20.01 is supported, setting playback speed to 100%

This control only works when the SimplyLive AMP Server is connected to the ViBox application.

ViBox: AMP controls channels that are mapped to PGM1-8 using the channel name VTR1-8 or PGM1-8, the Stop command will change the speed of the PGM to 0%

Command Sent

2X.01 Play

Command Type            2
Byte count                       0 or 4
Command Code          01
Send Data 1                    4 byte time (Timecode (see Command Definitions) (ffssmmhh))
                                                (Optional)

Returns

ACK

(2X.02) Record

If specifying a time code, the recording will be scheduled at that time, otherwise the recording will start immediately.

Command Sent

2X.02 Record

Command Type            2
Byte count                       0 or 4
Command Code          02
Send Data 1                    4 byte time (Timecode (see Command Definitions) (ffssmmhh))  
                                                (Optional)

Returns

ACK

(20.0F) Eject

The Eject command works with the BMR application only, it will switch the channel to a live camera. VTR1 to camera 1, VTR2 to camera 2, and so on

Command Sent

20.0F Eject

Command Type            2
Byte count                       0
Command Code          0F

Returns

ACK

(2X.11) Jog Forwards

If specified a frame number, will jump to the position.

If specified one or two parameters of speed rates, will change the speed according to the parameters, the calculation formulas are as follows:

1 rate parameter:

2 rate parameters:

Command Sent

2X.11 Jog Forward

Command Type            2
Byte count                       1 – One rate parameter sent
                                                2 – Two rate parameters sent
                                                4 – Number of fields sent
Command Code          11
Send Data                        1-byte rate parameter 1
Send Data                        1-byte rate parameter 2 (Optional)
Send Data                        4-byte field count sent

Returns

ACK

(2X.12) Variable Forward

Same formula as Jog Forward

Command Sent

2X.12 Variable Forward

Command Type            2
Byte count                       1 or 2
Command Code          12
Send Data 1                    1-byte rate parameter 1
Send Data 2                    1-byte rate parameter 2 (Optional)

Returns

ACK

(2X.21) Jog Reverse

Same formula as Jog Forward

Command Sent

2X.21 Jog Reverse

Command Type            2
Byte count                       1 – One rate parameter sent
                                                2 – Two rate parameters sent
                                                4 – Number of fields sent
Command Code          21
Send Data                        1-byte rate parameter 1
Send Data                        1-byte rate parameter 2 (Optional)
Send Data                        4-byte field count sent

Returns

ACK

(2X.22) Variable Reverse

Same formula as Jog Forward

Command Sent

2X.22 Variable Reverse

Command Type            2
Byte count                       1 or 2
Command Code          22
Send Data 1                    1-byte rate parameter 1
Send Data 2                    1-byte rate parameter 2 (Optional)

Returns

ACK

(40.40) Auto Mode Off

Command Sent

40.40 Auto Mode Off

Command Type            4
Byte count                       0
Command Code          40

Returns

ACK

(40.40) Auto Mode On

Enable Auto Mode. In Auto Mode, AMP Server will play the clips specified by In Preset/Preview In Preset one by one.

Command Sent

40.41 Auto Mode On

Command Type            4
Byte count                       0
Command Code          41

Returns

ACK

(41.36) Timecode Mode Preset

We don't support changing timecode mode, for now only LTC is supported.

Command Sent

41.36 Timecode Mode Preset

Command Type            4
Byte count                       1
Command Code          36
Send Data                        0 – Select LTC mode
                                                1 – Select Timer mode
                                                2 – Select VITC mode
                                                3 – Select Time Of Day mode

Returns

ACK

(41.42) Set Loop Playback Mode

Enable or disable Loop Playback Mode.

Command Sent

41.42 Set Loop Playback Mode

Command Type            4
Byte count                       1
Command Code          42

Send Data 1                    1 byte data to set Loop Mode On/Off

CMD Type

Byte Count

CMD Code

Send Data

CS

4

1

4

2

 

 

1 byte

1 byte

1 byte

1 byte







Returns

ACK

(61.0C) Current Time Sense

Return the time code of the camera.

Command Sent

47 61.0C Current Time Sense

Command Type            6
Byte count                       1
Command Code          0C
Send Data 1                    1-byte data with format as shown in table below

VITC time from source

LTC Time From Source

VITC User Bits

LTC User Bits

Windows Time

Timer1

VITC Time from timecode track

LTC Time from timecode track

Returns

7X.0Y Time and/or User Bits Data
Command Type            7
Byte count                       4 or 8
Command Code          04 or 05
Return Data                    As specified in following table. The values listed in the following
                                                table are the only data byte values supported.

 

Supported Data Byte Values and Responses

Data byte Value

Expected Response

01

74.04 LTC Time Data with the LTC timecode.

02

If VITC is implemented, 74.06 VITC Time Data with the VITC timecode. If VITC is not implemented, 70.0D Request Time Data Missing.

03

74.04 LTC Time Data with the LTC timecode.

04

74.04 Time Data with the Timer1 timecode.

10

74.05 LTC User Bits Data with the LTC user bits.

20

If VITC is implemented, 74.07 VITC User Bits Data with the VITC user bits. If VITC is not implemented, 70.0D Request Time Data Missing.

30

74.05 LTC User Bits Data with the LTC user bits.

11

78.04 LTC Time and User Bits Data with the LTC timecode and user bits, respectively.

22

If VITC is implemented, 78.06 VITC Time and User Bits Data with the VITC timecode and user bits, respectively. If VITC is not implemented, 70.0D Request Time Data Missing.

33

78.04 LTC Time and User Bits Data with the LTC timecode and user bits, respectively.

 

08

74.0A Windows time with 4 byte timecode

40

74.0B LTC time from source with 4 byte timecode

80

74.0C VITC time from source with 4 byte timecode

(61.20) Status Sense

If the data byte is 0F, return all status bytes, otherwise return the specified status bytes.

Command Sent

61.20 Status Sense

Command Type            6
Byte count                       1
Command Code          20
Send Data                        1 byte value

Returns

7X.20 Status Sense

Command Type            7
Byte count                       1 to F
Command Code          20
Return Data                    status bytes

(AX.02) Record Cue Up With Data

Although we support all forms of this command, but only AA.02 is applicable. In AA.02 we can specify a clip name for recording which will be the file name on the disk.

Command Sent

AX.02 Record Cue Up With Data

Command Type            A
Command Code          02
Byte count                       0 – Current clip is positioned to start of material (SOM) for record
                                                4 – Current clip is positioned to specified timecode for record
                                                8 – Clip (Name (see Command Definitions) ) specified by data is
                                                loaded to SOM for record
                                                C – Clip (Name (see Command Definitions) ) specified by data is
                                                loaded to specified timecode for record
                                                A – Clip (Extended Format (see Command Definitions) ) specified
                                                by data is loaded to SOM for record
                                                E - Clip (Extended Format (see Command Definitions) ) specified
                                                by data is loaded to specified timecode for record
Send Data 1                    4-byte timecode (Timecode (see Command Definitions)
                                                (ffssmmhh) (Optional)
Send Data 2                    2-byte clip name length (Present only if Extended Format (see
                                                Command Definitions)
                                                is used for clip name)
Send Data 3                    clip name

In the case of extended commands, the command format is as depicted below, where X can take values A or E.

CMD Type

Byte Count

CMD Code

Actual Byte Count

Timecode

Clipname length

Clipname

CS

A

X

0

2

 

 

 

 

 

1 byte

1 byte

2 bytes

4 bytes

2 bytes

 

1 byte










Returns

ACK

Managing clips on the timeline

(4X.14) In Preset

Support 40.14, 44.14, 42.14, 4A.14, 4E.14

Command Sent

4X.14 In Preset

Command Type            4
Command Code          14
Byte count                       0 – Current clip is positioned to start of material (SOM)
                                                4 – Current clip is positioned to specified timecode
                                                2 – Return all clips loaded in the preset position with their      
                                                respective In points
                                                A – Clips (Extended Format (see Command Definitions) ) specified
                                                by data is loaded to SOM
                                                E - Clips (Extended Format (see Command Definitions) ) specified
                                                by data is loaded to specified timecode

With byte count equal to 'A’

Send Data 1                    2-byte clip name length (present only if Extended Format (see
                                                Command Definitions) is used for the clip name sent)
Send Data 2                    clip name

Command Structure

CMD Type

Byte Count

CMD Code

Actual Byte Count

Length

Clipname

Length

Clipname

CS

4

A

1

4

 

 

 

 

 

 

1 byte

1 byte

2 bytes

2 bytes

 

2 bytes

 

1 byte











The least significant nibble of the first byte ‘A’ indicates that the clip name specified is in Extended Format (see Command Definitions). The listener gets the 2 byte actual byte count, then reads the 2 byte clip name length and then reads that number of bytes to obtain the 7 clip name. It keeps reading the length and clip name until the actual byte count is reached. This way multiple clips can be cued to the timeline.

With byte count equal to ‘E’

Send Data 1                    1 byte
                                                A – Clip (Extended Format (see Command Definitions) ) specified
                                                by data is loaded to SOM
                                                E - Clip (Extended Format (see Command Definitions) ) specified
                                                by data is loaded to specified timecode
Send Data 2                    2-byte clip name length (present only if Extended Format (see
                                                Command Definitions) is used for clip name sent)
Send Data 3                    4-byte timecode (Timecode (see Command Definitions)
                                                (ffssmmhh)) (optional)
Send Data 4                    clip name

Note: In order to load a series of clips byte count (BC) can be ‘A’ or ‘E’ only. If BC is equal to ‘8’ or ‘C,’ only a single clip will be loaded. This has been done to maintain the original functionality of the commands. The In Preset command looks in the working directory for clips that have been cued.

Command Structure

CMD Type

Byte Count

CMD Code

Actual Byte Count

Type

Clipname Length

Clipname

Type

Clipname Length

Timecode

Clipname

CS

4

E

1

4

 

A

 

 

E

 

 

 

 

1 byte

1 byte

2 bytes

1 byte

2 bytes

 

1 byte

2 bytes

4 bytes

 

1 byte














The least significant nibble of the first byte ‘E’ indicates that the clip name specified is in Extended Format (see Command Definitions). The server gets the 2 byte actual byte count, then reads the next 1 byte which indicates whether the timecode is specified with the clip. If this byte is ‘A,’ it cues up the specified clip to SOM; if it is ‘E’ it cues up the clip to the specified timecode. The server keeps reading the bytes until the actual byte count is reached.

Status byte 0, bit 7, busy bit is set high to indicate the system is busy when a sequence of clips is being cued onto the timeline. This is cleared once the cueing process is complete.

Returns

ACK

With byte count equal to ‘2’

CMD Type

Byte Count

CMD Code

Actual Byte Count

Clipname Length

Timecode

Clipname

Clipname Length

Timecode

Clipname

CS

8

2

1

4

 

 

 

 

 

 

 

 

1 byte

1 byte

2 bytes

2 bytes

4 bytes

 

2 bytes

4 bytes

 

1 byte













(4X.15) Out Preset

Support all forms

Command Sent

(4X.15) Out Preset

Command Type            4
Byte count                       0 or 4 or E
                                                2 – Return all clips loaded in the preset position with their
                                                respective Out points
Command Code          15

With byte count equal to ‘4’

Send Data 1                    4-byte timecode (Timecode (see Command Definitions)
                                                (ffssmmhh)) to which the out point is set

With byte count equal to ‘E’

CMD Type

Byte Count

CMD Code

Actual Byte Count

Type

Clip name Lenth

Clip name

Type

Clip name Length

Timecode

Clip name

CS

4

E

1

5

 

A

 

 

E

 

 

 

 

1 byte

1 byte

2 bytes

1 byte

2 bytes

 

1 byte

2 bytes

4 bytes

 

1 byte














Send Data 1                    1 byte Type
                                                A – The Out point of the clip specified in Extended Format (see
                                                Command Definitions) is set
                                                to EOM
                                                E – The Out Point of the clip specified in Extended Format (see
                                                Command Definitions) is set
                                                to the specified timecode
Send Data 2                    2-byte clip name length (present only if Extended Format (see
                                                Command Definitions) is
                                                used for clip name sent)
Send Data 3                    4-byte timecode (Timecode (see Command Definitions)
                                                (ffssmmhh)) (optional) to
                                                which the Out point is set.
Send Data 4                    Clip name

Returns

ACK

With byte count equal to ‘2’

CMD Type

Byte Count

CMD Code

Actual Byte Count

Clip name Length

Timecode

Clip name

Clip name Length

Timecode

Clip name

CS

8

2

1

5

 

 

 

 

 

 

 

 

1 byte

1 byte

2 bytes

2 bytes

4 bytes

 

2 bytes

4 bytes

 

1 byte













Status byte 9, bit 6 will be set high to indicate ‘Out Preset Failed’ for certain clips if such clips have not been cued onto the timeline by a Preview In Preset / In Preset previously.

(40.20) In Reset

Clear the ID and the time code position of In Preset.

Command Sent

40.20 In Reset

Command Type            4
Byte count                       0
Command Code          20

Returns

ACK

(4X.21) Out Reset

Support all forms

Command Sent

4X.21 Out Reset

Command Type            4
Byte count                       0 or 2
Command Code          21

With byte count equal to ‘2’

CMD Type

Byte Count

CMD Code

Actual Byte Count

Clip name Length

Clip name

Clip name Length

Clip name

CS

4

2

2

1

 

 

 

 

 

 

1 byte

1 byte

2 bytes

2 bytes

 

2 bytes

 

1 byte











(AX.04) Preview In Preset

Support A0.14, A4.14, A2.14, AA.14, AE.14

Command Sent

AX.04 Preview In Preset

Command Type            A
Command Code          04
Byte count                       0 – Current clip is positioned to start of material (SOM)
                                                2 – Return all clips loaded in the preview position with their
                                                respective In points
                                                4 – Current clip is positioned to specified timecode
                                                8 – Clip (Name (see Command Definitions) ) specified by data is loaded to SOM
                                                C – Clip (Name (see Command Definitions) ) specified by data is
                                                loaded to specified timecode
                                                A – Clips (Extended Format (see Command Definitions) ) specified
                                                by data is loaded to SOM
                                                E - Clips (Extended Format (see Command Definitions) ) specified
                                                by data is loaded to specified timecode

With byte count equal to ‘A’

Send Data 1                    2-byte clip name length (present only if Extended Format (see
                                                Command Definitions) is used for clip name sent)
Send Data 2                    clip name

Command Structure

CMD Type

Byte Count

CMD Code

Actual Byte Count

Clip name Length

Clip name

Clip name Length

Clip name

CS

A

A

0

4

 

 

 

 

 

 

1 byte

1 byte

2 bytes

2 bytes

 

2 bytes

 

1 byte











The least significant nibble of the first byte ‘A’ indicates that the clip name specified is in Extended Format (see Command Definitions). The listener gets the 2 byte actual byte count, then reads the 2 byte clip name length and then reads that number of bytes to obtain the clip name. It keeps reading the length and clip name until the actual byte count is reached. This way multiple clips can be cued to the timeline. If the clip itself is not found, ID Not Found status byte (Byte A Bit 0) will be set too high to indicate the failure.

With byte count equal to ‘E’

Send Data 1                    1 byte type
                                                A – Clip (Extended Format (see Command Definitions) ) specified
                                                by data is loaded to SOM
                                                E - Clip (Extended Format (see Command Definitions) ) specified
                                                by data is loaded to
                                                specified timecode
Send Data 2                    2-byte clip name length (present only if Extended Format (see
                                                Command Definitions) is
                                                used for clip name sent)
Send Data 3                    4-byte timecode (Timecode (see Command Definitions)
                                                (ffssmmhh)) (optional) to
                                                which the In Point is set
Send Data 4                    Clip name

Note: In order to load a series of clips, byte count (BC) can be ‘A’ or ‘E’ only. If BC is equal to ‘8’ or ‘C,’ only a single clip will be loaded. This has been done to maintain the original functionality of the commands. The Preview In Preset command looks in the working directory for clips that have been cued.

Command Structure

CMD Type

Byte Count

CMD Code

Actual Byte Count

Type

Clip name Lenth

Clip name

Type

Clip name Length

Timecode

Clip name

CS

A

E

0

1

 

A

 

 

E

 

 

 

 

1 byte

1 byte

2 bytes

1 byte

2 bytes

 

1 byte

2 bytes

4 bytes

 

1 byte














The least significant nibble of the first byte ‘E’ indicates that the clip name specified is in Extended Format. The listener gets the 2 byte actual byte count, then reads the next one byte which indicates whether the timecode is specified with the clip or not. If this byte is ‘A,’ it cues up the specified clip to SOM while if it is ‘E’ it cues up the clip to the specified timecode. The listener keeps reading the bytes until the actual byte count is reached.

Status byte 0, bit 7, busy bit is set high to indicate the system is busy when a sequence of clips is being cued onto the timeline. This will be cleared once the cueing process is complete. Status byte 9 bit 0 is set high if the auto mode Preview In Preset contains a valid timecode position. Otherwise, it is set low. The auto mode Preview Presets will become invalid, and this bit will be set low, when the auto mode Preview Presets are shifted to the auto mode presets as part of the auto play processing. During this transition, the preview preset status bit values are transferred to the respective preset status bits. This will be the means by which a controlling device can determine when it can set new values for the auto mode Preview Presets. If the clip itself is not found, ID Not Found status byte (Byte A Bit 0) will be set too high to indicate the failure.

Returns

ACK

With byte count equal to ‘2’

CMD Type

Byte Count

CMD Code

Actual Byte Count

Clip name Length

Timecode

Clip name

Clip name Length

Timecode

Clip name

CS

8

2

0

4

 

 

 

 

 

 

 

 

1 byte

1 byte

2 bytes

2 bytes

4 bytes

 

2 bytes

4 bytes

 

1 byte













(AX.05) Preview Out Preset

Support all forms

Command Sent

AX.05 Preview Out Preset

Command Type            A
Byte count                       0 or 4 or E
                                                2 – Return all clips loaded in the Preview position with their
                                                respective Out Points
Command Code          05

With byte count equal to ‘4’

Send Data 1                    4-byte timecode (Timecode (see Command Definitions)
                                                (ffssmmhh)) to which the
                                                Out Point is set.

With byte count equal to ‘E’

CMD Type

Byte Count

CMD Code

Actual Byte Count

Type

Clip name Lenth

Clip name

Type

Clip name Length

Timecode

Clip name

CS

A

E

0

5

 

A

 

 

E

 

 

 

 

1 byte

1 byte

2 bytes

1 byte

2 bytes

 

1 byte

2 bytes

4 bytes

 

1 byte














 

Send Data 1                    1 byte type
                                                A – The Out Point of the clip specified in Extended Format (see
                                                Command Definitions) is set
                                                to EOM
                                                E – The Out Point of the clip specified in Extended Format (see
                                                Command Definitions) is set
                                                to the specified timecode
Send Data 2                    2-byte clip name length (present only if Extended Format (see
                                                Command Definitions) is
                                                used for clip name sent)

Send Data 3                    4-byte timecode (Timecode (see Command Definitions)
                                                (ffssmmhh)) (optional)
Send Data 4                    clip name

Returns

ACK

Status byte 9, bit 6 will be set high to indicate ‘Preview Out Preset Failed’ for certain clips if such clips have not previously been cued onto the timeline by a Preview In Preset / In Preset command.

With byte count equal to ‘2’

CMD Type

Byte Count

CMD Code

Actual Byte Count

Clip name Length

Timecode

Clip name

Clip name Length

Timecode

Clip name

CS

8

2

0

5

 

 

 

 

 

 

 

 

1 byte

1 byte

2 bytes

2 bytes

4 bytes

 

2 bytes

4 bytes

 

1 byte













(A0.06) Preview In Reset

Clear the ID and the time code position of Preview In Preset.

Command Sent

A0.06 Preview In Reset

Command Type            A
Byte count                       0
Command Code          06

Returns

ACK

(AX.07) Preview Out Reset

Support all forms

Command Sent

A0.07 Preview Out Reset

Command Type            A
Byte count                       0 or 2
Command Code          07

With byte count equal to ‘2’

CMD Type

Byte Count

CMD Code

Actual Byte Count

Clip name Length

Clip name

Clip name Length

Clip name

CS

A

2

0

7

 

 

 

 

 

 

1 byte

1 byte

2 bytes

2 bytes

 

2 bytes

 

1 byte











Returns

ACK

(A0.16) ID Loaded Request

Return the name of the clip loaded on the camera even it is loaded by ViBox UI.

Command Sent

A0.16 ID Loaded Request

Command Type            A
Byte count                       0
Command Code          16

Returns

8X.16 ID Loaded

Command Type            8
Byte count                       0 – No Clip Loaded
                                                2 – Name (Extended Format (see Command Definitions)) of loaded
                                                clip returned
Command Code          16
Return Data 1                2-byte number of data bytes to follow
Return Data 2                Clip name in Extended Format (see Command Definitions) (if clip
                                                is loaded)

(A2.25) ID Start Time Request

Return the In point of the specified clip.

Command Sent

A2.25 ID Start Time Request

Command Type            A
Byte count                       2 – To indicate clip name in Extended Format (see Command
                                                Definitions) sent
Command Code          25
Send Data 1                    2-byte number of data bytes to follow
Send Data 2                    Clip name in Extended Format (see Command Definitions)

Returns

84.25 ID Start Time

Command Type            8
Byte count                       0 – If clip not found
                                                4 – If clip found

Command Code          25
Return Data 1                4-byte timecode in Timecode (see Command Definitions)
                                                (ffssmmhh) if clip is found

Managing Stored clips

(A0.0F) Get Working Folder Request

Command Sent

(A0.0F) Get Working Folder Request

Command Type            A
Byte count                       0
Command Code          0F

CMD Type

Byte Count

CMD Code

CS

A

0

0

F

 

1 byte

1 byte

1 byte






Returns

82.0F Working Folder

Command Type            8
Byte count                       2 – Indicates folder name in Extended Format (see Command
                                                Definitions)
Command Code          0F
Send Data 1                    2-byte folder name length
Send Data 2                    Absolute folder name path in Extended Format (see Command
                                                Definitions)

CMD Type

Byte Count

CMD Code

Actual Byte Count

Length

Folder Name

CS

8

2

0

F

 

 

 

 

1 byte

1 byte

2 bytes

2 bytes

 

1 byte









 

(A2.0E) Set Working Folder Request

Command Sent

(A2.0E) Set Working Folder Request

Command Type            A
Byte count                       2 – Indicates folder name in Extended Format (see Command
                                                Definitions)
Command Code          0E
Send Data 1                    2-byte folder name length
Send Data 2                    Absolute folder name in Extended Format (see Command
                                                Definitions)

 

Returns

ACK

On Success: ACK.       Also status byte 0, bit 7, busy bit is set high to indicate that the   videodisk recorder is busy. This bit will be cleared once the clip cache is reinitialized.

On Failure:                       Status byte 9, bit 2 is set high to indicate ‘Folder Not Found,’ in case the specified folder is not found on the disk.

Status byte 3, bit 3 is set high to indicate ‘Invalid folder name’ if the folder name has invalid characters.

(A0.2A) List First Folder

Command Sent

A0.2A List First Folder

Command Type            A
Byte count                       0
Command Code          2A

Returns

8X.2A Folder List

Command Type            8
Byte count                       2 – If at least one folder present
                                                0 – If no folders present
Command Type            2A
Return Data 1                2-byte number of data bytes to follow (if at least one folder is
                                                present)
Return Data 2                2 byte folder name length (if at least one folder is present)
Return Data 3                Folder name (if at least one folder is present)

(A0.2B) List Next Folder

Command Sent

A0.2B List Next Folder

Command Type            A
Byte count                       0
Command Code          2B

Returns

8X.2B Folder List

Command Type            8
Byte count                       0 – No more folders present
                                                2 – One or more folders in Extended Format (see Command
                                                Definitions) returned as data
Command Type            2B
Return Data 1                2-byte number of data bytes to follow (if at least one mor folder is
                                                present)
Return Data 2                2 byte folder name length (if at least one more folder is present)
Return Data 3                Folder name (if at least one more folder is present)

CMD Type

Byte Count

CMD Code

Actual Byte Count

Folder name Length

Folder name

Folder name Length

Folder name

CS

8

2

2

B

 

 

 

 

 

 

1 byte

1 byte

2 bytes

2 bytes

 

 

 

1 byte











 

(AX.14) List First ID

Command Sent

AX.14 List First ID

Command Type            A
Byte count                       0 – Clip name in Name Format requested
                                                2- Clip name in Extended Format requested
Command Code          14

Returns

8X.14 ID Listing

Command Type            8
Byte count                       0 – No clips present
                                                8 – Clip name in Name (see Command Definitions) returned
                                                A – Clip name in Extended Format (see Command Definitions)
                                                returned
Command Type            14
Return Data 1                2-byte number of data bytes to follow (only if clip name in
                                                Extended Format (see Command Definitions) returned)
Return Data 2                2 byte clip name length
Return Data 3                clip name (if at least one clip is present)

(AX.15) List Next ID

Command Sent

AX.15 List Next ID

Command Type            A
Byte count                       0 – A single clip with name in Name Format (see Command
                                                Definitions) requested
                                                1 – Defined number of clips in Extended Format (see Command
                                                Definitions) requested
Command Code          15
Send Data 1                    1 byte number of clips to be returned in ID Listing response

With byte count equal to ‘1’

CMD Type

Byte Count

CMD Code

Number of Clips to be returned

CS

A

1

1

5

 

 

1 byte

1 byte

1 byte

1 byte







Returns

8X.14 ID Listing

Command Type            8
Byte count                       0 – No more clips present
                                                8 – Single clip in Name Format (see Command Definitions)
                                                returned as data
                                                A – Single or multiple clips in Extended Format (see Command
                                                Definitions) returned as data
Command Type            14
Return Data 1                2-byte number of data bytes to follow (only if clip name is returned
                                                in Extended Format (see Command Definitions))
Return Data 2                2 byte clip name length
Return Data 3                clip name (if at least one more clip present)

With byte count equal to ‘A’

CMD Type

Byte Count

CMD Code

Actual Byte Count

Clip name Length

Clip name

Clip name Length

Clip name

CS

8

A

1

4

 

 

 

 

 

 

1 byte

1 byte

2 bytes

2 bytes

 

 

 

1 byte











 

(AX.18) ID Status Request

Command Sent

AX.18 ID Status Request

Command Type            A
Command Code          18
Byte count                       8 - Clip name in Name Format (see Command Definitions) sent
                                                A - Clip name in Extended Format (see Command Definitions) sent
Send Data 1                    2-byte number of data bytes to follow (only if clip name
                                                with Extended Format (see Command Definitions) is sent)
Send Data                        2 Clip Name (see comment below)

Returns

81.18 ID Status

Command Type            8
Byte count                       1
Command Type            18
Return Data 1                1 byte status data

Clip data information

(AA.13) Clip Data Request

Command Sent

(AA.13) Clip Data Request

Command Type            A
Byte count                       A Extended command
Command Code          13
Send Data 1                    1 byte
                                                C – Only clip name is specified. Attributes related to the clip are
                                                returned.
                                                E – Clip name and extension search parameters are specified.
                                                User data that match the search criteria is returned.
Send Data 2                    2-byte clip name length
Send Data 3                    Clip name

The clip name specified in Send Data 3 may contain a full rooted path; otherwise, it is assumed that the clip whose start time is being requested exists in the current working directory.

With Send Data 1 equal to ‘C’ (0x43)

Command structure

CMD Type

Byte Count

CMD Code

Actual Byte Count

Search Option

Clip name Length

Clip name

CS

A

A

1

3

 

C

 

 

 

1 byte

1 byte

2 bytes

1 byte

2 bytes

 

1 byte










 

Returns

8A.13 Clip Data

Command Type            8
Byte count                       A
Command Code          13
Return Data 1                8-bytes Creation Date (Windows FILETIME structure)
Return Data 2                8-bytes Modify Date (Windows FILETIME structure)
Return Data 3                4-bytes duration (timecode)
Return Data 4                1-byte Compression Type – 0 MPEG1, 1 MPEG2, 2 D10,
                                                3 DV25, 4 DV50, 5 DVCAM, 6 MPEG2HD, 7 DV100, 8 AVCI
                                                Return Data 5 1-byte Video Format – 0 NTSC_525, 1 PAL_625, 2  
                                                720_59_94p, 3 720_60p, 4 1080_23_98i, 5 1080_24i, 6
                                                1080_25_1to1i, 7 1080_29_97_1to1i, 8 1080_30_1to1i, 9
                                                1080_25_2to1i, 10 1080_29_97_2to1i, 11 1080_30_2to1i, 12
                                                1035_30_2To1 13 1035_29_97_2To1 14 720_50_1To1p 15
                                                525_59_94_1To1p 16 525_60_1To1p 17 525_29_97_1To1p 18
                                                525_30_1To1p 19 625_50_1To1p 20 625_25_1To1p 21
                                                720_29_97_1To1p 22 720_30_1To1p 23 720_25_1To1p 24
                                                1440x1080_29_97_2To1 25 1440x1080_30_2To1 26
                                                1440x1080_25_2To1 27 Xga_59_94_1To1 28 Xga_50_1To1 29
                                                Wxga_59_94_1To1 30 Wxga_50_1To1 31 Wsxga_59_94_1To1 32
                                                Wsxga_50_1To1
Return Data 6                1-byte Number of Video Tracks
Return Data 7                1-byte Number of Audio Tracks
Return Data 8                1-byte Number of Ancillary Data Tracks
Return Data 9                1-byte Number of Timecode Tracks
Return Data 10              4-bytes status bytes – bit 0 ready to play, bit 1 Under
                                                Construction, bit 2 read only, bit 3 locked, bit 4 Drop Frame
Return Data 11             2-bytes Thumbnail extension ID length (on thumbnail supported
                                                servers)
Return Data 12             Thumbnail extension ID (on thumbnail supported servers)
Return Data 13              8-bytes file size in MB (on thumbnail supported servers)

CMD Type

Byte count

CMD code

Actual Byte count

Creation Date

Modify Date

Duration

Comp-ression type

Video Format

#Video tracks

#Audio Tracks

#Anc data tracks

# TC tracks

Status

Thum-bnail EXT

ID length

Thum-bnail EXT ID

File Size

CS

8

A

1

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1 byte

1 byte

2 bytes

8 bytes

8 bytes

4 bytes

1 byte

1 byte

1 byte

1 byte

1 byte

1 byte

4 bytes

2 bytes

 

8 bytes

1 byte




















 

On Failure:                       80.13 is returned to indicate failure.

Status byte A, bit 0 is set high to indicate ‘ID Not Found’ if the specified clip is not found on disk. Status byte 9, bit 4 is set high to indicate ‘Metadata Not Found’ if any requested metadata item is not found in the database.

With Send Data 1 equal to ‘E

Send Data 2                    2-byte clip name length
Send Data 3                    Clip name

Optional

Send Data 4                    1-byte User Data Name length
Send Data 5                    User Data Name Value
Send Data 6                    1-byte Creator length
Send Data 7                    Creator Value
Send Data 8                    1-byte Class length
Send Data 9                    Class Value

Command structure

CMD Type

Byte Count

CMD Code

Actual Byte Count

Search Option

Clip name length

Clip name

User data name length

User data name value

Creator length

Creator value

Class

length

Class value

CS

A

A

1

3

 

E

 

 

 

 

 

 

 

 

 

1 byte

1 byte

2 bytes

1 byte

2 bytes

 

1 byte

 

1 byte

 

1 byte

 

1 byte
















Returns

8A.13Clip Data

Command Type            8
Byte count                       A
Command Code          13

Return Data 1                2-bytes number of data bytes to follow
Return Data 2                1-byte User Data Name length
Return Data 3                User Data Name value
Return Data 4                1-byte Creator length
Return Data 5                Creator value
Return Data 6                1-byte Class length
Return Data 7                Class value
Return Data 8                1-byte Type length
Return Data 9                Type value
Return Data 10             2-bytes User Data Value length
Return Data 11              User Data Value value
. .
. .
. .
Return Data n-9            1-byte User Data Name length
Return Data n-8            User Data Name value
Return Data n-7            1-byte Creator length
Return Data n-6            Creator value
Return Data n-5            1-byte Class length
Return Data n-4            Class value
Return Data n-3            1-byte Type length
Return Data n-2            Type value
Return Data n-1            2-bytes User Data Value length
Return Data n                User Data Value value

CMD Type

Byte count

CMD code

Actual Byte count

User data name length

User data name value

Creator length

Creator value

Class length

Class value

Type length

Type value

User data value length

User data value

 

 

CS

8

A

1

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1 byte

1 byte

2 bytes

1 byte

 

1 byte

 

1 byte

 

1 byte

 

2 bytes

 

 

 

1 byte



















 

(A2.09) Get Thumbnail

Command Sent

A2.09 Get Thumbnail

Command Type            A
Byte count                      2
Command Code          09
Send Data 1                    2-byte clip name length
Send Data 2                    Clip name in Extended Format5.1
Send Data 3                    2-byte frame number (optional)

Without frame info (i.e. byte count = clip name length + 2)

CMD Type

Byte Count

CMD Code

Actual Byte Count

Clip name Length

Clip name

A

2

0

9

 

 

 

1 byte

1 byte

2 bytes

2 bytes

 








 With frame info (i.e. byte count = clip name length + 4)

CMD Type

Byte Count

CMD Code

Actual Byte Count

Clip name Length

Clip name

Frame #

A

2

0

9

 

 

 

 

1 byte

1 byte

2 bytes

2 bytes

 

2 bytes









Returns

If thumbnail present/generated for clip,

82.09 Thumbnail Data

Command Type            8
Byte count                       2
Command Type            09
Return Data 2                1-byte Frame format
                                                0 – jpeg
                                                1 – bmp
Return Data 3                2-byte thumbnail size
Return Data 4                Thumbnail data

CMD Type

Byte Count

CMD Code

Actual Byte Count

Frame format

Thumbnail length

Thumbnail

8

2

0

9

 

 

 

 

1 byte

1 byte

2 bytes

1 byte

2 bytes

 









If thumbnail does not exist and could not be created,

80.09 Thumbnail Data

Command Type            8
Byte count                       0
Command Type            09



[1] https://my.riedel.net/s/contactsupport/simplylive