Record File Start 0x011E

SwitchKit Name

RecordFileStart

Type

EXS API and SwitchKit API message

Description

Record File Start 0x011E

NOTE: This message applies to the DSP Series 2 card only.

Use this message to start a file recording.

You can select the channel and the DSP card, or let the Matrix Controller choose the DSP Card by leaving the DSP slot set to 0xFF. The Matrix Controller card reports back in the response which DSP Card has been selected.

The Initial Silence Timer specifies how much silence is allowed before the card aborts the recording. The Final Silence Timer specifies how much silence is allowed before the silence triggers the card to stop recording voice.

Any delay between the beginning of conversation and the beginning of recording can result into clipped recorded media. To alleviate this potential problem, Cantata recommends sending the Record File Start message before the conversation begins (before the Resource Connect message). Recording sessions involve a signal energy detection threshold, so the silence before conversation will not be recorded.

Sent by

Host Application

Related API Message

Record File Modify, Record File Stop

SwitchKit Code

C Structure

typedef struct {

UBYTE AddrInfo[30];

UBYTE DataType;

UBYTE TLVCount;

UBYTE Data[221];;

} XL_RecordFileStart;

C Structure Response

typedef struct {

unsigned short Status;

UBYTE reserved6[13];

UBYTE AddrInfo[251];

} XL_RecordFileStartAck;

 

 

C++ Class

class XLC_RecordFileStart : public XLC_OutboundMessage {

public:

const UBYTE *getAddrInfo() const; }

UBYTE *getAddrInfo();

void setAddrInfo(UBYTE *x);

XBYTE getConferenceID() const;

void setConferenceID(XBYTE x);

XBYTE getParentConferenceID() const;

void setParentConferenceID(XBYTE x);

XBYTE getChildConferenceID() const;

void setChildConferenceID(XBYTE x);

XBYTE getSpan() const ;

void setSpan(XBYTE x) ;

UBYTE getChannel() const;

void setChannel(UBYTE x);

UBYTE getDataType() const;

void setDataType(UBYTE x);

UBYTE getTLVCount() const;

void setTLVCount(UBYTE x);

const UBYTE *getData() const;

UBYTE *getData();

void setData(UBYTE *x)

};

C++ Class Response

class XLC_RecordFileStartAck : public XLC_OutboundMessage {

public:

 

unsigned short getStatus() const

void setStatus(unsigned short x)

const UBYTE *getAddrInfo() const;

UBYTE *getAddrInfo();

void setAddrInfo(UBYTE *x);

XBYTE getConferenceID() const;

void setConferenceID(XBYTE x);

XBYTE getParentConferenceID() const;

void setParentConferenceID(XBYTE x);

XBYTE getChildConferenceID() const;

void setChildConferenceID(XBYTE x);

XBYTE getSpan() const ;

void setSpan(XBYTE x) ;

UBYTE getChannel() const;

void setChannel(UBYTE x);

;

 

EXS API Hex Format

MESSAGE (White)

RESPONSE (Gray)

Byte

Field Description

Byte

Field Description

0

Frame (0xFE)

0

Frame (0xFE)

1, 2

Length (0x00NN)

1, 2

Length (0x00NN)

3, 4

Message Type (0x011E)

3, 4

Message Type (0x011E)

5

Reserved (0x00)

5

Reserved (0x00)

6

Sequence Number

6

Same Sequence Number

7

Logical Node ID

7

Logical Node ID

8

:

AIB

Address Method

0x00 - Individual

8, 9

Status (MSB, LSB)

0x0001 Invalid TLV Data

Software can't find the TLV Data Buffer. This can also
occur if the Data for a TLV is out of range.

0x0003 Invalid number of TLVs

There are no TLVs in the message.

0x0004 Invalid TLV Length

The TLV length is different from what is expected.

0x0006 Invalid TLV

Unknown TLV

0x000D Mandatory TLVs missing

One or more mandatory TLVs are missing

 

Also see Common Response Status Values in the API Reference

10

AIB (same as message)

11

Checksum

Number of AEs to follow

AEs

You must use one of these AEs:

0x0D Channel*

0x55 Conference ID
0x45 Child Conference ID

followed by the 0x01 Slot AE.

 

Notes:

 

If the slot is set to 0xFF, the Matrix Controller chooses the slot.

 

When recording RTP and there is more than one DSP Series 2 card in your system, you must specify the card you want to use (do not use 0xFF).

To record a full duplex voice conversation use two Channel AEs and the Dual Channel Record OptionTLV (0x05ED).

:

Data Type

0x00 TLVs

:

Number of TLVs to Follow

:

TLVs

Mandatory

0x05E0 File ID

0x05E1 File Format

 

If File ID is 0x00100000 or higher:

0x05E2 File Location

 

Optional

0x05E3 Gain

0x05E6 File Event Descriptor

0x05E8 Beep Tone Parameters

0x05E9 Initial Silence Timer

0x05EA Final Silence Timer

Nested TLVs

0x05ED Dual Channel Record Option (Mandatory if you use 2 Channel AEs)

0x05FB Silence Threshold

0x0604 DTMF Clamping/Filtering Enable

0x0615 Append or Replace

 

Media Streaming over RTP

Important: The DSP-2 card supports up to 15 RTP sessions.

Mandatory TLVs

0x0687 - Enable RTP for Play/Record File

0x29FF Media Local End Point Information

0x2A00 Media Remote End Point Information

0x2A01 Media Per Stream Information

0x2A02 Media Per Codec Information

0x2A07 Media Port

0x2A0E Media Connection Address

 

NOTE: if using RTP, the File ID must be below 0x00100000, so the File Format and File Location TLVs are

not required.

Optional TLVs

0x0688 - RTP Record Mode (to use PVD)

 

:

Checksum