PDTMFEncoder Class Reference

#include <dtmf.h>

Inheritance diagram for PDTMFEncoder:

PTones PShortArray PBaseArray< T > PAbstractArray PContainer PObject List of all members.

Public Types

enum  { DefaultToneLen = 100 }

Public Member Functions

 PDTMFEncoder (const char *dtmf=NULL, unsigned milliseconds=DefaultToneLen)
 PDTMFEncoder (char key, unsigned milliseconds=DefaultToneLen)
void AddTone (const char *str, unsigned milliseconds=DefaultToneLen)
void AddTone (char ch, unsigned milliseconds=DefaultToneLen)
void AddTone (double frequency1, double frequency2=0, unsigned milliseconds=DefaultToneLen)
void GenerateRingBackTone ()
void GenerateDialTone ()
void GenerateBusyTone ()
char DtmfChar (PINDEX i)

Detailed Description

this class can be used to generate PCM data for DTMF tones at a sample rate of 8khz


Member Enumeration Documentation

anonymous enum

Enumerator:
DefaultToneLen 


Constructor & Destructor Documentation

PDTMFEncoder::PDTMFEncoder ( const char *  dtmf = NULL,
unsigned  milliseconds = DefaultToneLen 
)

Create PCM data for the specified DTMF sequence

Parameters:
dtmf  character string to encode
milliseconds  length of each DTMF tone in milliseconds

PDTMFEncoder::PDTMFEncoder ( char  key,
unsigned  milliseconds = DefaultToneLen 
)

Create PCM data for the specified dtmf key

Parameters:
key  character string to encode
milliseconds  length of each DTMF tone in milliseconds


Member Function Documentation

void PDTMFEncoder::AddTone ( const char *  str,
unsigned  milliseconds = DefaultToneLen 
)

Add the PCM data for the specified tone sequence to the buffer

Parameters:
str  string to encode
milliseconds  length of DTMF tone in milliseconds

void PDTMFEncoder::AddTone ( char  ch,
unsigned  milliseconds = DefaultToneLen 
)

Add the PCM data for the specified tone to the buffer

Parameters:
ch  character to encode
milliseconds  length of DTMF tone in milliseconds

void PDTMFEncoder::AddTone ( double  frequency1,
double  frequency2 = 0,
unsigned  milliseconds = DefaultToneLen 
)

Add the PCM data for the specified dual-frequency tone to the buffer frequency2 can be zero, which will generate a single frequency tone

void PDTMFEncoder::GenerateRingBackTone (  )  [inline]

Generate PCM data for a single cadence of the US standard ring tone of 440/480hz for 2 seconds, followed by 5 seconds of silence

void PDTMFEncoder::GenerateDialTone (  )  [inline]

Generate PCM data for 1 second of US standard dial tone of 350/440hz

void PDTMFEncoder::GenerateBusyTone (  )  [inline]

Generate PCM data for a single cadence of the US standard busy tone of 480/620hz for 1/2 second, 1/2 second of silence

char PDTMFEncoder::DtmfChar ( PINDEX  i  ) 

Convenience function to get the ASCII character for a DTMF index, where the index varies from 0 to 15

Returns:
ASCII value
Parameters:
i  index of tone


The documentation for this class was generated from the following file:
Generated on Mon Feb 23 01:57:56 2009 for PTLib by  doxygen 1.5.1