For Acoustic Echo Cancellation (AEC), non-linearities in the echo path should be avoided for optimal performance. To meet the Microsoft Teams Audio Specification, a hands-free full duplex conferencing device must meet a target dBSPL for receive path and a target dBFS on the transmission path. At 1.5 meters the target output level is 67 dbSPL using a receive path test stimulus of -18dBFS, and the for send path the signal level should be between -30 and -14 dBFS.

Automatic Gain and Saturation Control for an Acoustic Echo Canceller

From a hardware perspective, the microphone and loudspeaker hardware gains should be adjusted to help meet all of these targets. From a software perspective, an automatic gain control (AGC) module should be inserted before the AEC on the receive path, and after the AEC on the send path. If the device on the far-end is Microsoft Teams compliant then an AGC on the receive path is not necessary. An AGC helps keep the signal level constant by amplifying talkers who speak quietly and by attenuating talkers who speak loudly. However, the time variance of the RMS power of speech can be faster than the adaptation rate of an AGC, which can cause the signal to temporarily exceed the target levels, running the risk of saturation. An additional detector is implemented to determine when saturation has occurred to inform the AEC to stop adaptation and prevent divergence. This control also informs the AEC’s echo suppressor to apply more attenuation to the residual echo signal.