diff options
author | Shaun Ruffell <sruffell@digium.com> | 2010-10-20 12:23:06 +0000 |
---|---|---|
committer | Shaun Ruffell <sruffell@digium.com> | 2010-10-20 12:23:06 +0000 |
commit | 996c17d9e97460c73607ed4dd10bc53300b8d0f3 (patch) | |
tree | 3addf8af9fdff5337a4164d9a2fb3467e1e93254 /include | |
parent | 7e37a2766ed3aa99e4b57092943b3c13961aedd5 (diff) |
dahdi: Add compile time DAHDI_ECHOCAN_PROCESS_TX option.
Add optional interface to allow software echo cans to process the
transmitted samples. Can be used for things like DC removal.
I used the following patches uploaded by biohumanoid but changed the
name of 'echocan_hpf_tx' to 'echoan_process_tx and put the changes
behind a compile time option.
(issue #13562)
Reported by: biohumanoid
Patches:
kernel.h.patch uploaded by biohumanoid (license 459)
dahdi-base.c.#2.patch uploaded by biohumanoid (license 459)
Signed-off-by: Shaun Ruffell <sruffell@digium.com>
Acked-by: Kinsey Moore <kmoore@digium.com>
Acked-by: Russ Meyerriecks <rmeyerriecks@digium.com>
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@9442 a0bf4364-ded3-4de4-8d8a-66a801d63aff
Diffstat (limited to 'include')
-rw-r--r-- | include/dahdi/dahdi_config.h | 7 | ||||
-rw-r--r-- | include/dahdi/kernel.h | 9 |
2 files changed, 16 insertions, 0 deletions
diff --git a/include/dahdi/dahdi_config.h b/include/dahdi/dahdi_config.h index b0592f3..d304b6e 100644 --- a/include/dahdi/dahdi_config.h +++ b/include/dahdi/dahdi_config.h @@ -126,6 +126,13 @@ */ /* #define CONFIG_DAHDI_NO_ECHOCAN_DISABLE */ +/* + * Define if you would like to allow software echocans to process the tx audio + * in addition to the rx audio. Used for things like DC removal. + * + */ +/* #define CONFIG_DAHDI_ECHOCAN_PROCESS_TX */ + /* * Uncomment if you happen have an early TDM400P Rev H which * sometimes forgets its PCI ID to have wcfxs match essentially all diff --git a/include/dahdi/kernel.h b/include/dahdi/kernel.h index b7b2c02..6edddbd 100644 --- a/include/dahdi/kernel.h +++ b/include/dahdi/kernel.h @@ -257,6 +257,15 @@ struct dahdi_echocan_ops { * \return Nothing. */ void (*echocan_NLP_toggle)(struct dahdi_echocan_state *ec, unsigned int enable); + +#ifdef CONFIG_DAHDI_ECHOCAN_PROCESS_TX + /*! \brief Process an array of TX audio samples. + * + * \return Nothing. + */ + void (*echocan_process_tx)(struct dahdi_echocan_state *ec, + short *tx, u32 size); +#endif }; /*! A factory for creating instances of software echo cancelers to be used on DAHDI channels. */ |