modem_connect_tones.h File Reference

Go to the source code of this file.

Defines

#define _SPANDSP_MODEM_CONNECT_TONES_H_
#define MODEM_CONNECT_TONES_FAX_CED   MODEM_CONNECT_TONES_ANS
 FAX CED tone is the same as ANS tone.

Typedefs

typedef modem_connect_tones_tx_state_s modem_connect_tones_tx_state_t
typedef modem_connect_tones_rx_state_s modem_connect_tones_rx_state_t

Enumerations

enum  {
  MODEM_CONNECT_TONES_NONE = 0, MODEM_CONNECT_TONES_FAX_CNG = 1, MODEM_CONNECT_TONES_ANS = 2, MODEM_CONNECT_TONES_ANS_PR = 3,
  MODEM_CONNECT_TONES_ANSAM = 4, MODEM_CONNECT_TONES_ANSAM_PR = 5, MODEM_CONNECT_TONES_FAX_PREAMBLE = 6, MODEM_CONNECT_TONES_FAX_CED_OR_PREAMBLE = 7
}

Functions

modem_connect_tones_tx_state_tmodem_connect_tones_tx_init (modem_connect_tones_tx_state_t *s, int tone_type)
 Initialise an instance of the modem connect tones generator.
int modem_connect_tones_tx_release (modem_connect_tones_tx_state_t *s)
 Release an instance of the modem connect tones generator.
int modem_connect_tones_tx_free (modem_connect_tones_tx_state_t *s)
 Free an instance of the modem connect tones generator.
 SPAN_DECLARE_NONSTD (int) modem_connect_tones_tx(modem_connect_tones_tx_state_t *s
 Get the next bit of data from a T.38 rate adapting non-ECM buffer context.
int modem_connect_tones_rx_get (modem_connect_tones_rx_state_t *s)
 Test if a modem_connect tone has been detected.
modem_connect_tones_rx_state_tmodem_connect_tones_rx_init (modem_connect_tones_rx_state_t *s, int tone_type, tone_report_func_t tone_callback, void *user_data)
 Initialise an instance of the modem connect tones detector.
int modem_connect_tones_rx_release (modem_connect_tones_rx_state_t *s)
 Release an instance of the modem connect tones detector.
int modem_connect_tones_rx_free (modem_connect_tones_rx_state_t *s)
 Free an instance of the modem connect tones detector.
const char * modem_connect_tone_to_str (int tone)

Variables

int16_t amp []
int16_t int len
const int16_t amp []
const int16_t int len


Detailed Description


Typedef Documentation

typedef struct modem_connect_tones_rx_state_s modem_connect_tones_rx_state_t

Modem connect tones receiver descriptor. This defines the state of a single working instance of the tone detector.

typedef struct modem_connect_tones_tx_state_s modem_connect_tones_tx_state_t

Modem connect tones generator descriptor. This defines the state of a single working instance of the tone generator.


Enumeration Type Documentation

anonymous enum

Enumerator:
MODEM_CONNECT_TONES_NONE  This is reported when a tone stops.
MODEM_CONNECT_TONES_FAX_CNG  CNG tone is a pure 1100Hz tone, in 0.5s bursts, with 3s silences in between. The bursts repeat for as long as is required.
MODEM_CONNECT_TONES_ANS  ANS tone is a pure continuous 2100Hz+-15Hz tone for 3.3s+-0.7s.
MODEM_CONNECT_TONES_ANS_PR  ANS with phase reversals tone is a 2100Hz+-15Hz tone for 3.3s+-0.7s, with a 180 degree phase jump every 450ms+-25ms.
MODEM_CONNECT_TONES_ANSAM  The ANSam tone is a version of ANS with 20% of 15Hz+-0.1Hz AM modulation, as per V.8.
MODEM_CONNECT_TONES_ANSAM_PR  The ANSam with phase reversals tone is a version of ANS_PR with 20% of 15Hz+-0.1Hz AM modulation, as per V.8.
MODEM_CONNECT_TONES_FAX_PREAMBLE  FAX preamble in a string of V.21 HDLC flag octets.
MODEM_CONNECT_TONES_FAX_CED_OR_PREAMBLE  CED tone is the same as ANS tone. FAX preamble in a string of V.21 HDLC flag octets. This is only valid as a tone type to receive. It is never reported as a detected tone type. The report will either be for FAX preamble or CED/ANS tone.


Function Documentation

int modem_connect_tones_rx_free ( modem_connect_tones_rx_state_t s  ) 

Free an instance of the modem connect tones detector.

Parameters:
s The context.
Returns:
0 for OK, else -1.

int modem_connect_tones_rx_get ( modem_connect_tones_rx_state_t s  ) 

Test if a modem_connect tone has been detected.

Parameters:
s The context.
Returns:
TRUE if tone is detected, else FALSE.

modem_connect_tones_rx_state_t* modem_connect_tones_rx_init ( modem_connect_tones_rx_state_t s,
int  tone_type,
tone_report_func_t  tone_callback,
void *  user_data 
)

Initialise an instance of the modem connect tones detector.

Parameters:
s The context.
tone_type The type of connect tone being tested for.
tone_callback An optional callback routine, used to report tones
user_data An opaque pointer passed to the callback routine,
Returns:
A pointer to the context.

int modem_connect_tones_rx_release ( modem_connect_tones_rx_state_t s  ) 

Release an instance of the modem connect tones detector.

Parameters:
s The context.
Returns:
0 for OK, else -1.

int modem_connect_tones_tx_free ( modem_connect_tones_tx_state_t s  ) 

Free an instance of the modem connect tones generator.

Parameters:
s The context.
Returns:
0 for OK, else -1.

modem_connect_tones_tx_state_t* modem_connect_tones_tx_init ( modem_connect_tones_tx_state_t s,
int  tone_type 
)

Initialise an instance of the modem connect tones generator.

Parameters:
s The context.

int modem_connect_tones_tx_release ( modem_connect_tones_tx_state_t s  ) 

Release an instance of the modem connect tones generator.

Parameters:
s The context.
Returns:
0 for OK, else -1.

SPAN_DECLARE_NONSTD ( int   ) 

Get the next bit of data from a T.38 rate adapting non-ECM buffer context.

Parameters:
s The context.
amp An array of signal samples.
len The number of samples to generate.
Returns:
The number of samples generated.


Generated on Thu Oct 18 15:29:15 2012 for spandsp by  doxygen 1.4.7