DSP Algorithms

Signal processing consultancy from algorithm
development to assembly optimization.

Combined Acoustic Noise and Echo Canceller (CANEC)

Browse
Home
Consultancy
Publications
Download
Contact
Company
Partners
Products
Voice over IP
ASPT
Noise Reduction
Echo Cancellers
Sample Rate Converter
Room

Order Software
Request Information
Request Quotation
Feedback


What professionals say about CANEC

Bill Gardner, WaveArts (after testing using CANEC Demonstrations):
"You may recall that I was recently evaluating your CANEC AEC for possible licensing, on behalf of a customer of mine. I evaluated about a dozen different AEC solutions and you will be happy to hear that I recommended CANEC to my customer."

Bill Gardner, WaveArts (after integrating CANEC SDK):
"I tried a live test and CANEC performed great. It was in a very noisy office (AC + traffic noise) and both single-talk and double-talk worked fine, all echo and background suppressed. Very impressive."

William Westlake, product manager at British Telecom (after testing the Microsoft VoIP client using CANEC plug-in on Windows Mobile 6):
"The Voice Quality is now superb, better than GSM and maybe as good as PSTN."

Mark Hemmer, acoustic engineer, after testing SymNet Designer 6.0, a professional audio product that relies on CANEC to provide robust multi-channel noise and echo cancellation:
"I loaded 6.0 into the system for testing in an Auditorium that seats up 500 people. This location has over 40 audience microphones used for questions and answers, plus another 4 wireless and 5 wired microphones on the platform, plus a podium microphone. They regularly do both video and teleconferencing from this location and due to the size of the room, PA is mandatory. I submixed all 50 microphones through 2 automixers and simply inserted a SymNet 6.0 single channel AEC in the signal path. I was amazed at how well it worked. This Facility uses a Polycom for video conference and A Gentner DH20 for teleconference, both of these items work well but we would still notice some glitches and echo at times probably due to the extreme environment. Running the SymNet 6.0 AEC in circuit with these two devices completely removed this problem with no artifacts. With the internal AEC in the Gentner and Polycom bypassed, the system was equally problem free."




CANEC Facts Sheet

Download CANEC Facts Sheet

CANEC Availability

CANEC is a mature software-only speech enhancement library that has been deployed in numerous applications from professional audio equipments to tiny mobile phones with excellent results. CANEC is currently directly available on many popular platforms and processors in the form of an SDK (Software Development Kit) to be integrated directly into the application (a Voice Over Internet Protocol, for instance).

If you are looking for a complete high quality VoIP solution, you may consider one of the VoIP clients that have already integrated CANEC. Currently the following VoIP clients are directly available with CANEC integrated and need no additional development efforts.

  • Microsoft VoIP Client on Windows Mobile 6.0 and higher: Microsoft has integrated CANEC into their VoIP client on WM6 as a plug-in module. The plug-in does not need any further integration or configuration and is directly installable by the OEM or the end user. This plug-in solution is used by British Telecom in their Office Anywhere (business) and Broadband Anywhere (consumer) products. The VoIP client is available only from Microsoft and the plug-in is available only from DSP Algorithms.
  • PJSIP User Agent on all platforms supported by PJSIP: PJSIP have successfully integrated CANEC into their VoIP stack and made the integration source code available. Interested customers may receive the integration code as an example with the CANEC SDK.
If you are also developing a high quality communication application that needs high quality acoustic echo and/or noise cancellation, you may consider a partnership similar to the above listed applications. Please contact us if you wish to integrate CANEC into your solution; after all, it costs you nothing!

CANEC Performance

CANEC is a next generation acoustic noise canceller (ANC) and acoustic echo canceller (AEC) combined in a single "light-weight" software module, designed to provide superior performance at very low resources. The audio samples below demonstrate CANEC performance.

microphone signal (8kHz) PLAY SAMPLE CANEC output PLAY SAMPLE
Microphone signal (22kHz) PLAY SAMPLE CANEC output PLAY SAMPLE
Microphone signal (22kHz) PLAY SAMPLE CANEC output PLAY SAMPLE

CANEC Features

Conventional adaptive AECs have some inherent problems that make them expensive, difficult to use, and often produce insufficient echo reduction. Conventional AECs require large adaptive filters, in the order of few thousand coefficients, to provide acceptable echo reduction in reverberant acoustic environments, therefore, claiming a huge processing power and storage resources. The number of filter coefficients must be increased as the reverberation time of the application's acoustic environment increases, which on one hand decreases the convergence speed, and on the other hand makes it difficult to design a resource-efficient AEC for an application that will be used in different rooms. Failing to correctly choose the number of filter coefficients that matches the acoustic environment results in insufficient echo reduction, making the use of other helping components such as "residual echo reduction" and "non-linear processor" necessary, which in turn increases system complexity and cost.

CANEC solves the conventional AEC problems by employing a revolutionary fast adaptive filter designed to provide high echo reduction at a low processing load regardless of the application's acoustic environment. This next generation echo and noise canceller employs proprietary advanced signal processing algorithms that result in superior performance at much lower processing load than conventional systems. In a benchmark test, CANEC has been measured to provide 3 to 10 times faster speed compared to different conventional echo and noise cancellers on the same processor. CANEC, therefore, allows system designers to seamlessly and quickly add AEC and ANC functionality to their new or existing applications at minimum cost, leading to reduced product price, reduced development cycle, and fast time to market. In addition to supporting single channel systems, CANEC natively and efficiently supports multi-channel systems that employ several loudspeakers and several microphones. CANEC is available for several digital signal processors, general purpose processors, and embedded processors, and is easy to port to any fixed-point or floating-point platform due to its reduced complexity. The main features of CANEC (as per version 2.5) are summarized below.

  • Complies fully with the G.167 standard.
  • Employs an efficient unisize adaptive algorithm with 3 to 10 times less processing load than conventional echo cancellers.
  • Provides superior and consistent single-talk echo reduction of 80 dB in any acoustic environments.
  • Employs proprietary robust and effective double talk detector.
  • Provides echo reduction of 30 dB or more during double-talk periods.
  • Instant full convergence to 80 dB echo reduction in 100 milliseconds or less. Rate of adaptation is fast enough to allow excellent performance even with moving microphones and moving users.
  • Low algorithm processing delay (defined by the user adjustable block length).
  • Supports multiple loudspeakers and multiple microphones.
  • Noise reduction algorithm providing up to 25 dB of background noise reduction with negligible speech distortion. Noise reduction level is user adjustable.
  • Includes two automatic gain control units per channel for seamless control of speaker, and output signals' levels.
  • Includes a sample synchronization module for clock skew correction; allowing cheaper codec hardware to be employed, and making the software usable on desktop and portable computing platforms.
  • Works at any sampling frequency without any modification.
  • Robust against moderate non-linearities in the acoustic response model and FES signals.
  • Voids the need of helper software components such as "residual echo canceller" and "non-linear processor".
  • Provides consistent performance at the same processing load in all acoustic environments, from a small car with a reverberation time of less than 100 ms to a large conference hall with reverberation time of 1.5 second or more.
  • Suitable for any application that requires echo and/or noise cancellation including speaker-phones, hands-free car kits, audio and video conferencing, desktop conferencing, voice over IP, Internet phones, and many others.
  • Works seamlessly after microphone arrays, automatic gain control, and mixer units, therefore saving huge processor cycles, memory, and power consumption, that would otherwise be wasted by placing a traditional AEC after each microphone as required by current technology.
  • Trivial to integrate due to its simple Application Programming Interface.
  • Fully configurable. System designers have complete control on system switches and algorithm parameters, including the ability to enable/disable and set the target level of individual channels in any functional block.
  • Already available on several fixed-point and floating-point platforms including ARM, xscale, MIPS, SHx, x86, SHARC, BlackFin, and many others. CANEC also directly available for Microsoft Windows operating systems including Windows CE, Windows Mobile for Pocket PC, Windows Mobile for smartphones, Windows embedded, and of course Windows PC versions (95, 98, ME, 2000, 2003, XP). All Windows versions include an audio module that already integrates the CANEC API calls inside a data acquisition thread, making integration into a Windows application a matter of few lines of C++ code.
  • Proven excellent performance in several applications ranging from professional audio, video conferencing, Desktop collaboration, Softphones, and consumer electronics products.

Evaluating CANEC

CANEC IP2IP Demo

The CANEC IP2IP (UDP) demo is a hands-free Voice over IP application that allows you to easily and quickly evaluate all CANEC features in a real-life call. This application is available for the following platforms.

  • Windows 98 and higher, including Vista and 7.
  • Mac OS X 10.5 and higher.
  • Linux 2.6 with ALSA audio driver.
  • Windows CE 5.0 and higher (x86, ARM, MIPS, and SH4 processors)
  • Windows Mobile 5.0 and higher.
  • Embedded Linux with ALSA audio driver (several platforms including the low cost Beagle Board).
  • [Coming soon] iPhone and Android.

The CANEC UDP allows you to do the following.
  • Establish a voice call between any two devices over a (wireless) network connection. All supported platforms use the same audio encoding, so you can call from a PC to a smart device or a Windows CE box, or from a PDA to a smartphone.
  • Play an audio file to the loudspeaker, record the resulting echo, noise, and local speech, process the recorded data in real-time and saving the result to an audio file. This function is helpful when one person only is available for testing and it simulates one side of the hands-free communication scenario.
  • Enable and disable any or all CANEC processing modules during the conversation to allow hearing the difference without stopping and starting again.
  • Adjust all processing units target levels and other options such as selecting the loudspeaker type and the sample synchronization module type.
  • Test audio streaming at 8 and 16 kHz sample rates.

To request the CANEC IP2IP demo, please fill in this short form.

Embedded Systems Evaluation Packages

CANEC is also available for evaluation on several DSP and embedded systems development boards. You will need to sign a Non-Disclosure Agreement before you can evaluate CANEC on your development board. We recommend that you try the CANEC IP2IP demo before requesting an evaluation version on your embedded platform.


Copyright © DSP ALGORITHMS, All rights reserved.