diff options
author | kpfleming <kpfleming@5390a7c7-147a-4af0-8ec9-7488f05a26cb> | 2007-02-01 00:55:41 +0000 |
---|---|---|
committer | kpfleming <kpfleming@5390a7c7-147a-4af0-8ec9-7488f05a26cb> | 2007-02-01 00:55:41 +0000 |
commit | 13179eb2fc4b2384550a1681513986584634bfd6 (patch) | |
tree | 5e450b5b4ef50a7dfb8268e75d04785ab0adc13e /zaptel.h | |
parent | 7976f3ed8ba610c565d4cd80a7f8c0643005de49 (diff) |
add support for Digium's High Performance Echo Canceller
rework the top-level Makefile so kernel 2.6 modules are built by a dedicated Makefile
git-svn-id: http://svn.digium.com/svn/zaptel/branches/1.2@2076 5390a7c7-147a-4af0-8ec9-7488f05a26cb
Diffstat (limited to 'zaptel.h')
-rw-r--r-- | zaptel.h | 50 |
1 files changed, 14 insertions, 36 deletions
@@ -23,8 +23,6 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - * $Id$ */ #ifndef _LINUX_ZAPTEL_H @@ -171,38 +169,6 @@ #define RING_DEBOUNCE_TIME 2000 /* 2000 ms ring debounce time */ -#ifdef AGGRESSIVE_SUPPRESSOR -#define ZAPTEL_ECHO_AGGRESSIVE " (aggressive)" -#else -#define ZAPTEL_ECHO_AGGRESSIVE -#endif - -#ifdef __KERNEL__ -/* Echo cancellation */ -#if defined(ECHO_CAN_STEVE) -#define ZAPTEL_ECHO_CANCELLER "STEVE" -#include "sec.h" -#elif defined(ECHO_CAN_STEVE2) -#define ZAPTEL_ECHO_CANCELLER "STEVE2" -#include "sec-2.h" -#elif defined(ECHO_CAN_MARK) -#define ZAPTEL_ECHO_CANCELLER "MARK" -#include "mec.h" -#elif defined(ECHO_CAN_MARK2) -#define ZAPTEL_ECHO_CANCELLER "MARK2" -#include "mec2.h" -#elif defined(ECHO_CAN_KB1) -#define ZAPTEL_ECHO_CANCELLER "KB1" -#include "kb1ec.h" -#elif defined(ECHO_CAN_MG2) -#define ZAPTEL_ECHO_CANCELLER "MG2" -#include "mg2ec.h" -#else -#define ZAPTEL_ECHO_CANCELLER "MARK3" -#include "mec3.h" -#endif -#endif - #define ZT_GET_PARAMS_RETURN_MASTER 0x40000000 typedef struct zt_params @@ -1021,9 +987,21 @@ struct zt_hdlc { #endif struct zt_chan *chan; }; - #endif /* CONFIG_ZAPATA_NET */ +/* Echo cancellation */ +struct echo_can_state; +#if 0 +/* echo can API consists of these functions */ +void echo_can_init(void); +void echo_chan_shutdown(void); +struct echo_can_state *echo_can_create(int len, int adaption_mode); +void echo_can_free(struct echo_can_state *ec); +short echo_can_update(struct echo_can_state *ec, short iref, short isig); +void echo_can_array_update(struct echo_can_state *ec, short *iref, short *isig); +int echo_can_traintap(struct echo_can_state *ec, int pos, short val); +#endif + /* Conference queue stucture */ struct confq { u_char buffer[ZT_CHUNKSIZE * ZT_CB_SIZE]; @@ -1187,7 +1165,7 @@ struct zt_chan { /* Is echo cancellation enabled or disabled */ int echocancel; - echo_can_state_t *ec; + struct echo_can_state *ec; echo_can_disable_detector_state_t txecdis; echo_can_disable_detector_state_t rxecdis; |