dtmf.c File Reference

#include <inttypes.h>
#include <stdlib.h>
#include <tgmath.h>
#include <math.h>
#include "floating_fudge.h"
#include <string.h>
#include <stdio.h>
#include <time.h>
#include <fcntl.h>
#include "spandsp/telephony.h"
#include "spandsp/fast_convert.h"
#include "spandsp/queue.h"
#include "spandsp/complex.h"
#include "spandsp/dds.h"
#include "spandsp/tone_detect.h"
#include "spandsp/tone_generate.h"
#include "spandsp/super_tone_rx.h"
#include "spandsp/dtmf.h"
#include "spandsp/private/queue.h"
#include "spandsp/private/tone_generate.h"
#include "spandsp/private/dtmf.h"

Defines

#define DEFAULT_DTMF_TX_LEVEL   -10
#define DEFAULT_DTMF_TX_ON_TIME   50
#define DEFAULT_DTMF_TX_OFF_TIME   55
#define DTMF_THRESHOLD   171032462.0f
#define DTMF_NORMAL_TWIST   6.309f
#define DTMF_REVERSE_TWIST   2.512f
#define DTMF_RELATIVE_PEAK_ROW   6.309f
#define DTMF_RELATIVE_PEAK_COL   6.309f
#define DTMF_TO_TOTAL_ENERGY   83.868f
#define DTMF_POWER_OFFSET   110.395f
#define DTMF_SAMPLES_PER_BLOCK   102

Functions

int dtmf_rx (dtmf_rx_state_t *s, const int16_t amp[], int samples)
int dtmf_rx_status (dtmf_rx_state_t *s)
size_t dtmf_rx_get (dtmf_rx_state_t *s, char *buf, int max)
void dtmf_rx_set_realtime_callback (dtmf_rx_state_t *s, tone_report_func_t callback, void *user_data)
void dtmf_rx_parms (dtmf_rx_state_t *s, int filter_dialtone, int twist, int reverse_twist, int threshold)
dtmf_rx_state_t * dtmf_rx_init (dtmf_rx_state_t *s, digits_rx_callback_t callback, void *user_data)
int dtmf_rx_release (dtmf_rx_state_t *s)
int dtmf_rx_free (dtmf_rx_state_t *s)
int dtmf_tx (dtmf_tx_state_t *s, int16_t amp[], int max_samples)
int dtmf_tx_put (dtmf_tx_state_t *s, const char *digits, int len)
void dtmf_tx_set_level (dtmf_tx_state_t *s, int level, int twist)
void dtmf_tx_set_timing (dtmf_tx_state_t *s, int on_time, int off_time)
dtmf_tx_state_t * dtmf_tx_init (dtmf_tx_state_t *s)
int dtmf_tx_release (dtmf_tx_state_t *s)
int dtmf_tx_free (dtmf_tx_state_t *s)

Detailed Description


Generated by  doxygen 1.6.2