Automatic Gain Control (AGC)


CouthIT’s Automatic Gain Control (AGC) module scales the speech signals to a specified value regardless of the variations in the input level in various dynamic environments such as car, multi talker babble, street etc. The AGC algorithm adaptively maintains the dynamic range of a speech signal without amplifying the non speech portions. This module can be used in wireless and VoIP applications, speaker phones, digital hearing aids, tele-conferencing systems, speaker verification and in speech recognition applications.

  • Fixed-point ANSI C implementation.
  • Re-entrant implementation.
  • C-callable APIs
  • Operates on 16-bit PCM speech signals sampled at 8 Khz (narrow-band) or 16 Khz (wide-band).
  • Provides a maximum gain of up to +20dBov and a minimum gain of -20dBov.
  • Provides protection against saturation or clipping of the signal.
  • User selectable desired output level.
  • User selectable response time.
  • Protection against excessive gain increase in case of background noise.
  • Protection for gain adjustment in case of low level speech portions with hangover period of 200 ms.
  • No amplification in case of silence intervals.
  • Optimized for low memory foot print and low complexity.
  • Tested using a large database of narrow band and wide band speech and noise test vectors.
  • Tested using babble, car, street, and a combination of stationary and non-stationary background noises.
  • Tested for different speech levels from -15dBov to -40dBov.
  • Tested in conjunction with CouthIT’s noise suppression module.
  • Tested for graceful exit in case of errors or exception.
  • Module is fully interruptible.
  • Tested for Input buffer corruption
  • Tested for I/O buffer alignment requirements
  • Tested for multi-instance implementation.
  • Tested with scratch contamination at frame boundaries
  • Tested for 100% code coverage
  • Range validation of all API parameters.
  • Code validated on Spectrum Digital C6455 DSK platform.
  • Code validated on OMAPL138 Platform.

ARM9E, ARM11, Cortex-A8, Cortex-A9, and TI C64x+.

For datasheet with resource usage details