LanScape VOIP Media Engine
IVR_RECOGNITION_DATA
The address of this structure is passed to a user defined callback that was registered using the OpenRxIvrChannel API procedure. It allows access to the received sampled audio data stream of a phone line.
typedef struct
{
int PhoneLine;
MEDIA_FORMAT_AUDIO MediaFormat;
AUDIO_BANDWIDTH RequestedFormat;
void *pSampleBuffer;
unsigned long BufferLengthInBytes;
BOOL SamplesInByteArray;
void *pUserData;
}IVR_RECOGNITION_DATA;
Members:
PhoneLine
The zero based phone line the data was received on.
MediaFormat
Represents the format and rate of the sampled data the phone line is using. This rate and format represents the type of data being transmitted and received between call endpoints. Can be any one of the enumerated values as specified by MEDIA_FORMAT_AUDIO.
RequestedFormat
The audio rate and format the application requested when the receiver IVR channel was opened. Internally the telephony engine will perform proper format and rate conversion of the received phone line sampled data and present it to the application using this requested format.
pSampleBuffer
This is the address of the receive data sample buffer.
BufferLengthInBytes
The number of bytes contained in the internal sample buffer. Note: Because PCM data samples are two bytes in length (signed 16 bit short integers), the actual number of samples in the internal audio buffer is (BufferLengthInBytes/2).
SamplesInByteArray
When set to TRUE, the data pointed to by the pSampleBuffer member points to a byte (8 bits per element) buffer. If false, then pSampleBuffer points to a short (16 bits per element) buffer.
pUserData
This member variable holds the user specified instance data that was specified when the user callback was registered with the telephony engine.