Adaptive Digital's AEC G4 supports narrowband, wideband sampling rates.
There are currently two varients of AEC G4: desktop and mobile.

Fourth Generation Acoustic Echo Canceller: AEC G4 (Narrowband and Wideband)

HD AEC comes in two variants – desktop and mobile. The mobile variant is an extension to the desktop variant. The mobile variant is able to operate in environments where the bulk delay (audio delay to the speaker and back from the microphone due to buffering) is not known. This is notably the case in Android-based mobile phones.


  1. Superior Double-Talk Performance
  2. Supports 8 kHz and 16 kHz sampling rates
  3. Able to achieve greater than 40 dB of ERLE without nonlinear processor
  4. Supports true cancellation at tail lengths up to 160 msec
  5. Full-duplex performance
  6. Operates both narrowband and wideband with programmable sampling rate
  7. Non-linear processor
  8. Fast Convergence and reconvergence
  9. No divergence due to doubletalk
  10. Integrated Transmit Equalization
  11. Integrated noise-reduction
  12. Integrated automatic gain control
  13. Parameters are user configurable
  14. Fast Convergence and reconvergence
  15. No divergence due to double-talk
  16. Integrated microphone equalization
  17. Functions are C-callable
  18. Multiple channel operation
  19. Parameters are user configurable


  1. Full duplex performance under a wide dynamic range of audio levels.
  2. Supports wideband audio (16 kHz sampling rate) with no artificial cutoff of high frequencies.
  3. Supports tail lengths up to 160 msec. with full-duplex cancellation.
  4. Converges within one second regardless of tail length and sampling rate.
Data sheet: .pdf


ADT AEC G4 is available off the shelf on the following Platforms: Other configurations are available upon request.

Platform ARMv7 Platform ARMv8
ARM Cortex-A8 ARM Cortex-A53
ARM Cortex-A9 ARM Cortex-A57
ARM Cortex-A12  
ARM Cortex-A15  
ARM Cortex-A17  


The Adaptive Digital Technologies acoustic echo canceller (AEC) electronically removes both direct coupling and reflected echo, enabling true full-duplex hands-free telephony in mobile phones, speakerphones, and hands-free intercoms.
The fourth-generation canceller includes a noise reduction feature, as well as the typical anti-howling, nonlinear processing, and double-talk detection found in the first generation AEC. The acoustic noise reduction feature is particularly useful during speakerphone calls where there is background noise present such as an exhaust fan, and in noisy outdoor environments. By using Adaptive Digital’s acoustic echo canceller to eliminate this unwanted echo and reverberating interference, echo-free conversation can be achieved.


The following figure is a simplified block diagram of the Acoustic Echo Canceller. A description follows. In the description, you will find parameter names blue, underlined, and in inside parenthesis ( parameter ). This indicates that a user-controlled parameter is involved in the process being described.

The top half of the diagram shows the receive signal path, or the signal path from the telephone network to the speaker.

The bottom half of the diagram shows the transmit signal path from the microphone toward the telephone network. The AEC cancels the echo that occurs between the speaker output and the microphone input.

The terms Rx (Receive) and Tx (Transmit) may be confusing at first because both the receive and transmit paths have inputs and outputs. The names receive and transmit are used from the point-of-view of the person at the speaker/microphone side.

The terms Rx (Receive) and Tx (Transmit) may be confusing at first because both the receive and transmit paths have inputs and outputs. The names receive and transmit are used from the point-of-view of the person at the speaker/microphone side.

The RxIn signal coming from the network is fed into the RxNLP (Receive Nonlinear Processor). The RxNLP can attenuate (MaxRxAttendB ) the received signal by a variable amount based upon the talk state (single talk vs. double-talk). This attenuation improves the overall echo attenuation.

The output of the RxNLP is fed into a noise generator, which adds noise ( maxRxNoisedBm ) to the receive signal. This noise helps the AEC converge and remain converged even when nobody is speaking. The output of the noise generator is fed both to the transmit output (TxOut) and into the bulk delay block, whose delay is controlled by bulkDelaySamples. The bulk delay block compensates for the buffering delay at the RxOut and TxIn interfaces as well as any other non-acoustic system delays in the path between RxOut and TxIn. The output of the bulk delay is fed to the the adaptive filter.

The adaptive filter estimates the echo and subtracts it from the TxIn signal to form the residual signal. The residual signal is fed to the noise reduction block. This noise reduction block removes background noise and therefore improves the signal to noise ratio of the transmit signal. Noise Reduction parameters include ( nrSTIntervalMSec , nrLTIntervalMSec , nrMaxLossdB , nrHighSNRMarkdB , nrLowSNRMarkdB .)

The output of the noise reduction block is fed into an equalizer. The equalizer is used to flatten out the frequency response of the transmit channel. This may be necessary due to the acoustics of the hands-free device and due to the characteristics of the microphone itself. The equalizer gain vs. frequency band table is provided by the user parameter ( pTxEqualizerdB10 ).

The output of the transmit equalizer is fed into the TxNLP. The TxNLP is the transmit non-linear processor. The TxNLP increases the echo attenuation by attenuating the residual by a variable amount based upon the talk state. The TxNLP is controlled by ( maxTxLossB and targetResidualLeveldBm, worstExpectedERLdB, and maxTxNLPThresholddB ). The TxNLP block also includes a comfort noise generator that is turned on or off using ( cngEnable) .

The compute gain block computes the AGC gain. The output of the TxNLP is fed into the AGC gain block, which provides gain or loss depending upon the residual signal level. The AGC is controlled by ( agcEnable ,  agcMaxGaindB , agcMaxLossdB , agcTargetLeveldBm , and agcLowSigThreshdBm .)

The output of the AGC is fed to the transmit output (TxOut) of the AEC.


  1. Sampling Rate
  2. Tail Length
  3. Frame Size
  4. NLP Control
  5. Max Noise Level
  6. AGC Control
  7. Equalizer Control
  8. Noise Reduction Control




All Memory usage is given in units of byte.

Platform Sampling Rate Tail Length (msec) MIPS Per Channel Memory
ARM Cortex-A 8 kHz 32 27 26K
64 31 41K
128 35 54K
160 37 108K
ARM Cortex-A 16 kHz 32 62 32K
64 77 54K
128 99 108K
160 110 170K

Specifications are approximate. Exact per-channel numbers can be obtained by using API functions AECG4_alloc or AECG4_staticAllocHelper.


AEC_ADT_create(…)                      Create and initializes an echo canceller channel
AEC_ADT_applyl(…)                      Executes cancellation function
AEC_ADT_backgroundHandler(…)           Handles background calculations
AEC_ADT_delete(…)                      Deletes an echo canceller channel

For complete information, please contact sales. Tel: 1-800-340-2066 x120

or email us.

search our site



AEC Generation 4

High Definition


The high definition acoustic echo canceller supports wide band audio (16 kHz, 32 kHz, 44.1, and 48 kHz sampling rates).

Contact us
  for more information