Audio and video technologies have advanced rapidly over the last decade. Standard definition televisions became high definition (HD) televisions, which became ultra high definition (UHD) televisions. Audio has made the same evolution, from narrowband (8kHz sampling) audio, to wideband (16kHz sampling) audio, finally to fullband (48kHz sampling) audio. Despite embedded devices being more powerful than ever, engineers are always looking to maximize the resources of the device to add features that would make their product standout. One of the biggest resource consumers in the full-duplex audio communication realm is acoustic echo cancellation (AEC). AEC require long adaptive filters, and increasing the sampling rate of audio causes a double hit complexity. The complexity not only increases because you have to process more samples per second, but because the filter length has to increase to achieve the same tail length.
The table below shows the number of multiplications per second (MPS) required for a time domain FIR and NLMS filter update. As it can be seen observed, to increase the sampling rate from 8kHz to 48kHz, the number of MPS increases 36 fold.
Time-domain multiplies for AEC
All hope is not lost. As discussed in Subband Adaptive Filtering, the computational resources can be significantly reduced by transforming from the time domain to the subband domain to perform the AEC filtering. The table below shows that the MPS for 128ms tail length for various sampling rates and subband decimation factors.
Subband domain multiplies for AEC
For 48kHz with 256 subbands, the MPS is reduced nearly 64 times over compared to the time domain implementation. There is an overhead to transform the data to and from the subband domain, but FFT’s can be heavily optimized and some DSPs have hardware FFT accelerators. In addition to the subband optimization, higher sampling rates can take advantage of the fact that higher frequencies are more easily absorbed and therefore require shorter echo tails.
At VOCAL Technologies, our wideband and fullband AEC is efficiently implemented in the subband domain and optimized for a wide variety of embedded DSPs. Please contact us to learn more.