#include <stdlib.h>
#include <inttypes.h>
#include <string.h>
#include <stdio.h>
#include "floating_fudge.h"
#include "spandsp/telephony.h"
#include "spandsp/bit_operations.h"
#include "spandsp/dc_restore.h"
#include "spandsp/modem_echo.h"
Functions | |
modem_echo_can_state_t * | modem_echo_can_create (int len) |
void | modem_echo_can_free (modem_echo_can_state_t *ec) |
void | modem_echo_can_flush (modem_echo_can_state_t *ec) |
void | modem_echo_can_adaption_mode (modem_echo_can_state_t *ec, int adapt) |
int16_t | modem_echo_can_update (modem_echo_can_state_t *ec, int16_t tx, int16_t rx) |
void modem_echo_can_adaption_mode | ( | modem_echo_can_state_t * | ec, | |
int | adapt | |||
) |
Set the adaption mode of a modem echo canceller context.
ec | The echo canceller context. | |
adapt | The mode. |
References modem_echo_can_state_t::adapt.
modem_echo_can_state_t* modem_echo_can_create | ( | int | len | ) |
Create a modem echo canceller context.
len | The length of the canceller, in samples. eturn The new canceller context, or NULL if the canceller could not be created. |
References modem_echo_can_state_t::curr_pos, modem_echo_can_state_t::fir_state, modem_echo_can_state_t::fir_taps16, modem_echo_can_state_t::fir_taps32, and modem_echo_can_state_t::taps.
void modem_echo_can_flush | ( | modem_echo_can_state_t * | ec | ) |
Flush (reinitialise) a modem echo canceller context.
ec | The echo canceller context. |
References modem_echo_can_state_t::curr_pos, fir16_state_t::curr_pos, modem_echo_can_state_t::fir_state, modem_echo_can_state_t::fir_taps16, modem_echo_can_state_t::fir_taps32, modem_echo_can_state_t::taps, and modem_echo_can_state_t::tx_power.
void modem_echo_can_free | ( | modem_echo_can_state_t * | ec | ) |
Free a modem echo canceller context.
ec | The echo canceller context. |
References modem_echo_can_state_t::fir_state, modem_echo_can_state_t::fir_taps16, and modem_echo_can_state_t::fir_taps32.
int16_t modem_echo_can_update | ( | modem_echo_can_state_t * | ec, | |
int16_t | tx, | |||
int16_t | rx | |||
) |
Process a sample through a modem echo canceller.
ec | The echo canceller context. | |
tx | The transmitted audio sample. | |
rx | The received audio sample. eturn The clean (echo cancelled) received sample. |
References modem_echo_can_state_t::adapt, modem_echo_can_state_t::curr_pos, modem_echo_can_state_t::fir_state, modem_echo_can_state_t::fir_taps16, modem_echo_can_state_t::fir_taps32, fir16_state_t::history, modem_echo_can_state_t::taps, and modem_echo_can_state_t::tx_power.