The VoipMediaEngine class is the primary class for accessing all the capabilities of the LanScape VOIP Media Engine.

The VoipMediaEngine..::.DtmfDecoder type exposes the following members.

Constructors

  NameDescription
VoipMediaEngine..::.DtmfDecoder
Initializes a new instance of the VoipMediaEngine..::.DtmfDecoder class

Methods

  NameDescription
CreateDtmfDecoder
The CreateDtmfDecoder API procedure is used to create a real time DTMF decoder. Using the created DTMF decoder, your VOIP applications will be able to detect in-band DTMF tones from any audio media stream. Application software generally uses this functionality to monitor specific audio media streams of interest. When the application receives audio data blocks, it writes the audio data block to the DTMF decoder. If there is DTMF content in the media stream sent to the decoder, the application will be notified of the detected DTMF tone via a user supplied callback. Both DTMF "ON" and "OFF" transitions are detected and sent to the application.

Before your application terminates, you must call the DestroyDtmfDecoder()()() API procedure to destroy the decoder and to regain its resources.

DestroyDtmfDecoder
The DestroyDtmfDecoder API procedure is used to destroy a previously created DTMF decoder and reclaim all resources associated with the decoder.
DtmfDecoderGetMinimumDigitOnTime
The DtmfDecoderGetMinimumDigitOnTime API procedure allows an application to retrieve the current minimum digit ON time for the DTMF decoder.
DtmfDecoderGetSignalThreshold
The DtmfDecoderGetSignalThreshold API procedure allows the application to retrieve the current DTMF detection threshold.
DtmfDecoderGetTwist
The DtmfDecoderGetTwist API procedure allows the application to retrieve the current allowed forward and reverse twist of the DTMF input signal.
DtmfDecoderSetMinimumDigitOnTime
The DtmfDecoderSetMinimumDigitOnTime API procedure can be called by application software to specify the minimum digit ON time for a detected DTMF digit.

Minimum digit ON time is generally set to 40Ms in order to comply with standard in-band DTMF requirements. However, for noisy DTMF signals, specifying a larger DTMF ON time improves noise immunity, improves "talk off" performance and reduces false DTMF digit detections (false positives).

DtmfDecoderSetSignalThreshold
The DtmfDecoderSetSignalThreshold API procedure can be called to specify the DTMF signal detection threshold. DTMF will only be detected by the DTMF decoder if the incoming DTMF signal power is greater than the power threshold as set by this API procedure. For most application deployments, the default signal threshold for the DTMF decoder should be adequate and you should not have to call this API procedure.
DtmfDecoderSetTwist
The DtmfDecoderSetTwist API procedure allows the application to specify the range of acceptable forward and reverse twist of the DTMF input signal.
DtmfDecoderWrite
The DtmfDecoderWrite API procedure is used to pass audio sample blocks to a DTMF decoder. The audio sample block must be PCM or uLaw data and consist of 20Ms worth of data (160 samples) at 8000Hz. To see how to create a DTMF decoder that will be used for PCM or uLaw data blocks, see the UsePcm parameter of the CreateDtmfDecoder(VoipMediaEngine, Boolean, Int32, Int32, Int32, Boolean, VoipMediaEngine..::.DTMF_DECODER_CALLBACK_PROC, Object) API procedure.
Finalize
The Object's finalizer.
(Overrides Object..::.Finalize()()().)
SetDtmfTuningTables
The SetDtmfTuningTables API procedure is used to change tuning parameters of DTMF decoders. Application software should not call this API procedure unless otherwise instructed by LanScape support personnel.
Note:
If your application requires specific DTMF decoder tuning, please contact LanScape support for further details and pricing information.

Fields

  NameDescription
FilterBlockN
An internal filter tuning parameter. Do not modify this value directly.
hDtmfDecoderHandle
The actual media enigne DTMF decoder native handle. Do not modify this value directly.
ImmediateEvaluation
true if the DTMF decoder has been created to oerform immediate evaluation Do not modify this value directly.
MediaEngine
The media enigne instance. Do not modify this value directly.
pManagedDtmfDecoderInstance
A pseudo pointer to this managed wrapper. Do not modify this value directly.
pUserDtmfDecoderProc_Mananged
An internal callback procedure. Do not modify this value directly.
SampleRate
The sample rate. Do not modify this value directly.
UsePcm
true if the DTMF decoder has been created to accept PCM samples. false if the DTMF decoder has been created to accept uLaw samples. Do not modify this value directly.
UserDefinedData_Mananged
Instance data passed to an internal callback procedure. Do not modify this value directly.
UserSamplesPerInputBlock
The number of samples per input sample block. Do not modify this value directly.

See Also