diff options
author | markster <markster@5390a7c7-147a-4af0-8ec9-7488f05a26cb> | 2003-10-27 17:00:04 +0000 |
---|---|---|
committer | markster <markster@5390a7c7-147a-4af0-8ec9-7488f05a26cb> | 2003-10-27 17:00:04 +0000 |
commit | 398f396e0f94fb6009a3b27ffbae417becee566b (patch) | |
tree | 2a6d60c717ca01981ed3555ea6e52f4cf1292ac7 /zaptel.h | |
parent | 74768740b2a7dd30d85567e258c9a8c9c75a0cae (diff) |
Create echo "Pretraining" ioctl
git-svn-id: http://svn.digium.com/svn/zaptel/trunk@260 5390a7c7-147a-4af0-8ec9-7488f05a26cb
Diffstat (limited to 'zaptel.h')
-rwxr-xr-x | zaptel.h | 24 |
1 files changed, 20 insertions, 4 deletions
@@ -539,11 +539,21 @@ char dialstr[ZT_MAX_DTMF_BUF]; #define ZT_TIMERACK _IOW (ZT_CODE, 48, int) /* - * Set Conference to mute mode + * Get Conference to mute mode */ #define ZT_GETCONFMUTE _IOR (ZT_CODE, 49, int) /* + * Request echo training in some number of ms (with muting in the mean time) + */ +#define ZT_ECHOTRAIN _IOW (ZT_CODE, 50, int) + +/* + * Set on hook transfer for n number of ms -- implemnted by low level driver + */ +#define ZT_ONHOOKTRANSFER _IOW (ZT_CODE, 51, int) + +/* * 60-80 are reserved for private drivers * 80-85 are reserved for dynamic span stuff */ @@ -805,6 +815,8 @@ struct zt_tone_def { /* Structure for zone programming */ #define ZT_KEWLTIME 500 /* 500ms for kewl pulse */ #define ZT_AFTERKEWLTIME 300 /* 300ms after kewl pulse */ +#define ZT_MAX_PRETRAINING 1000 /* 1000ms max pretraining time */ + #define ZT_MAX_SPANS 128 /* Max, 128 spans */ #define ZT_MAX_CHANNELS 1024 /* Max, 1024 channels */ #define ZT_MAX_CONF 1024 /* Max, 1024 conferences */ @@ -982,12 +994,12 @@ struct zt_chan { struct confq confin; struct confq confout; - short getlin[ZT_MAX_CHUNKSIZE]; /* Last transmitted samples */ + short getlin[ZT_MAX_CHUNKSIZE]; /* Last transmitted samples */ unsigned char getraw[ZT_MAX_CHUNKSIZE]; /* Last received raw data */ short getlin_lastchunk[ZT_MAX_CHUNKSIZE]; /* Last transmitted samples from last chunk */ - short putlin[ZT_MAX_CHUNKSIZE]; /* Last received samples */ + short putlin[ZT_MAX_CHUNKSIZE]; /* Last received samples */ unsigned char putraw[ZT_MAX_CHUNKSIZE]; /* Last received raw data */ - short conflast[ZT_MAX_CHUNKSIZE]; /* Last conference sample -- base part of channel */ + short conflast[ZT_MAX_CHUNKSIZE]; /* Last conference sample -- base part of channel */ short conflast1[ZT_MAX_CHUNKSIZE]; /* Last conference sample -- pseudo part of channel */ short conflast2[ZT_MAX_CHUNKSIZE]; /* Previous last conference sample -- pseudo part of channel */ @@ -997,6 +1009,10 @@ struct zt_chan { echo_can_state_t *ec; echo_can_disable_detector_state_t txecdis; echo_can_disable_detector_state_t rxecdis; + + int echostate; /* State of echo canceller */ + int echolastupdate; /* Last echo can update pos */ + int echotimer; /* Timer for echo update */ /* RBS timings */ int prewinktime; /* pre-wink time (ms) */ |