Configuring the Video Messaging Server Interface

Create a configuration file (srv.cfg) to set up the Video Messaging Server Interface. Each line of the configuration file must specify a different parameter value. The format of a line is:

<Parameter> = <Value>

Any text on a line appearing after a hash character (#) is ignored as a comment.

The following tables describe the types of parameters in the srv.cfg file:

IP interface parameters

The parameters in the following table define IP interface settings for the Video Messaging Server Interface:

Parameter

Type

Default

Description

destIPAddr_audio

string

10.1.8.94

IP address of the system (3G-324M Interface) receiving the audio RTP stream from the server.

destIPAddr_video

string

10.1.8.94

IP address of the system (3G-324M Interface) receiving the video RTP stream from the server.

destPort_audio

DWORD

1000

UDP port on the remote system (3G-324M Interface) receiving the audio RTP stream.

destPort_video

DWORD

2000

UDP port on the remote system (3G-324M Interface) receiving the video RTP stream.

frame_quota

int

2

Number of audio frames assembled in each packet.

srcIPAddr_audio

string

10.1.8.94

IP address of the server sending or receiving the audio RTP stream.

srcIPAddr_video

string

10.1.8.94

IP address of the server sending or receiving the video RTP stream.

srcPort_audio

DWORD

3000

UDP port on the server receiving the audio RTP stream from the 3G-324M Interface.

srcPort_video

DWORD

4000

UDP port on the server receiving the video RTP stream from the 3G-324M Interface.

useIPv6

int

0

IP network type for the server:

0: IPv4

1: IPv6

System parameters

The parameters in the following table describe the system parameters for the Video Messaging Server Interface:

Parameter

Type

Default

Description

enableAVsync

int

0

Enables or disables audio and video RTP endpoints to perform incoming skew calculations:

0: Disables RTP endpoints from performing incoming skew calculations.

1: Enables endpoints to perform incoming skew calculations.

nBoardType

int

6000

CG board type (6000, 6060, 6500, 6565).

nPorts

init

1

Number of ports to run.

vidSkewTime

int

0

Video skew (in ms) that is set by the application and sent to the board to adjust video skew with respect to audio.

A positive value indicates that the video lags audio. A negative value indicates that the video leads audio.

The maximum value is 4095.

Play and record parameters

The parameters in the following table define play and record audio and video settings for the Video Messaging Server Interface:

Parameter

Type

Default

Description

audio_buffer_size

int

4000000

Maximum audio file size (in bytes) that can be recorded.

AutoPlay

DWORD

0

Enables or disables an immediate play after completion of H.245 negotiation.

0: Disables immediate play.

1: Enables immediate play.

AutoPlayList

int

0

Enables or disables automatic play of files from the list after the call setup. The files are listed in the ListFileName file.

0: Does not start automatically playing files from the list.

1: Automatically starts playing files from the list after the call setup.

AutoPlayRec

int

0

Enables or disables simultaneous play/record after call setup.

0: Does not start simultaneous play/record after call setup.

1: Starts simultaneous play/record after call setup. This setting automatically affects the AutoRecord, AutoPlay, and AutoPlayList parameters when they are set to 0.

AutoRecord

DWORD

0

Enables or disables immediate start of recording after completion of H.245 negotiation.

0: Does not automatically start recording.

1: Starts recording immediately.

enable_Iframe

DWORD

1

Determines when recording on audio and video channels begins.

0: Recording begins immediately after the ADI multimedia recording function is called.

1: Recording begins upon receipt of next I-frame.

ListFileName

int

autoplay.lst

Name of file that contains the list of files to start playing after the call is set up. Only used if AutoPlayList = 1.

Maxtime

DWORD

0

Maximum allowed time for recording (in hundreds of milliseconds). If Maxtime is exceeded, recording is immediately terminated and all files are closed.

0: Disables this time limit.

PartialBuffers

int

0

Specifies either synchronous or asynchronous play/record.

0: Synchronous play/record.

1: Asynchronous play/record.

video_buffer_size

int

4000000

Maximum video file size (in bytes) that can be recorded.

Silence detection parameters

The parameters in the following table define silence detection settings for the Video Messaging Server Interface:

Parameter

Type

Default

Description

audioStop_InitTimeout

DWORD

0

Enables or disables automatic stop of audio and video recording when audio silence (for example, no voice activity) is detected at the start of the audio recording.

0: Audio and video recording is not automatically stopped.

1-65535: Number of milliseconds of silence needed to trigger the stop.

This option has no effect on playback.

audioStop_SilenceLevel

DWORD

-45

Audio level (in dBm) required to trigger audioStop_initTimeout or audioStop_SilenceTimeout.

Range: -51 to -15 dBm

audioStop_SilenceTimeout

DWORD

0

Enables or disables automatic stop of audio and video recording when audio silence (for example, no voice activity) is detected while recording audio.

0: Audio and video recording is not automatically stopped.

1-65535: Number of milliseconds of silence needed to trigger the stop.

This option has no effect on playback.

native_silence_detect

DWORD

0

Enables or disables silence detection:

0: Disables silence detection.

1: Enables silence detection.

videoStop_InitTimeout

DWORD

0

Enables or disables automatic stop of audio and video recording when the video signal is not present at the start of a recording session (for example, if the RTP packet stream is not transmitting).

0: Audio and video recording is not automatically stopped.

1-65535: Number of milliseconds of no video needed to trigger the stop.

This option has no effect on playback.

videoStop_NosignalTimeout

DWORD

0

Enables or disables automatic stop of audio and video recording when the video signal is not present during a recording session (for example, if the RTP packet stream stops transmitting).

0: Audio and video recording is not automatically stopped.

1-65535: Number of milliseconds of no video needed to trigger the stop.

This option has no effect on playback.

Audio and video codec parameters

The parameters in the following table define audio and video codec settings for the Video Messaging Server Interface.

Parameter

Type

Default

Description

Audio_Record_Format1

enum

None

Audio record format:

0: NO_AUDIO

1: N_AMR (passthrough or native AMR)

2: N_G723 (passthrough or native G.723)

3: F_G711U

4: F_G711A

5: F_G723_5

6: F_G723_6

7: F_GSM_FR

8: F_AMR_475

9: F_AMR_515

10: F_AMR_590

11: F_AMR_670

12: F_AMR_740

13: F_AMR_795

14: F_AMR_102

15: F_AMR_122

Audio_RTP_Format

enum

11 (AMR_122)

Audio RTP format (only applies if audio transcoding is performed):

0: NO_AUDIO_RTP

1: G723_5

2: G723_6

3: G711

4: AMR_475

5: AMR_515

6: AMR_590

7: AMR_670

8: AMR_740

9: AMR_795

10: AMR_102

11: AMR_122

Video_Format

enum

1

Video format:

0: NO_VIDEO

Non-zero: Video record format is based on the video codec negotiated in 3G-324M.

3GP parameters

The parameters in the following table define 3GP settings for the Video Messaging Server Interface.

Parameter

Type

Default

Description

3gpDirectWrite

unsigned long

0

Enables the 3GP library to wait until mmCloseFile is invoked before writing 3GP data to disk:

0: 3GP library waits until mmCloseFile is invoked before writing 3GP data to disk.

1: 3GP library writes data when mmWriteStream is invoked.

3gpFileName

string

record.3gp

3GP file name.

3gpFileName_play

string

play.3gp

3GP file name containing audio and video media used for play during simultaneous play/record operation.

createHintTracks

int

0

Enables or disables whether the 3GP library should create hint tracks for each track in the 3GP file.

0: Disables the creation of hint tracks.

1: Enables the creation of hint tracks.

getSDP

int

0

Enables or disables the retrieval of SDP-related parameters from 3GP file to be played. Data will be written to an output SDP file using outputSDPFileName.

0: Disables retrieval/storage of SDP information.

1: Enables retrieval/storage of SDP information.

inputSDPFileName

string

input.sdp

Input SDP file for setting of SDP-related parameters in recorded 3GP file. Enable the capability using setSDP.

outputSDPFileName

string

output.sdp

Output SDP file for storage of SDP-related parameters from 3GP file to be played. Enable the capability using getSDP.

seekTime

int

0

Uses mmSeekToTime to seek to the specified time during a play operation. The seek time is in ms and is relative to the start of the 3GP file.

Valid values lie between the first sync point time and the last sync point time. A value of 0 disables seeking.

setSDP

int

0

Enables or disables the setting of SDP-related parameters in a recorded 3GP file, based on information in an input SDP file using inputSDPFilename.

0: Disables setting SDP information.

1: Enables setting SDP information.

skewCorrection

int

0

Enables the 3GP library to perform skew correction for an audio stream during a record operation.

The application sets the skew correction time by using mmSetSkewCorrection. The 3GP library adjusts audio skew with respect to video by inserting or removing audio frames.

skewCorrection is in ms. The range is -4095 to 4095 ms.

0: Disables skew correction.

A positive value indicates that audio leads video. A negative value indicates that audio lags video.

useHintTracks

int

0

Enables or disables the 3GP library from using hint tracks for each track in the 3GP file.

0: Disables the use of hint tracks.

1: Enables the use of hint tracks.

writeSyncPoints

int

0

Enables or disables the 3GP library from creating sync points for random access support.

0: Disables the writing of sync points as part of the 3GP file.

1: Enables the writing of sync points as part of the 3GP file.