Hi,
I want to develop Active noise cancellation system with StartKit and Audio Slice kit, Is it possible or should I go with DSP chip. Any recommendations are welcome.
Thank you for advice.
Active Noise Cancellation
-
- New User
- Posts: 2
- Joined: Tue Jan 12, 2010 10:14 pm
-
- Member++
- Posts: 18
- Joined: Tue Oct 08, 2013 1:53 pm
Here at XMOS we have successfully developed a Echo Noise Cancellation algorithm, so it should be possible to develop an Active Noise cancellation algorithm.
Any noise cancellation algorithm requires some processing time. The difference between using a dedicated H/W chip, a programmable chip (like an xCORE), or a general programmable DSP, is the amount of delay introduced into the signal chain. The acceptable amount of delay will time depend on your application. For instance, playing back audio files, e.g. MP3 the amount of delay can be large.
For listening (and replying) to a real time conversation, less than 200ms will be acceptable.
For a real-time application, the it may be feasible to play the raw input as soon as possible, and subtract the processed response a short time later. This will have the effect of cancelling low frequencies, but not the highest frequencies. This may be acceptable for some applications, e.g 'mains hum removal'
Any noise cancellation algorithm requires some processing time. The difference between using a dedicated H/W chip, a programmable chip (like an xCORE), or a general programmable DSP, is the amount of delay introduced into the signal chain. The acceptable amount of delay will time depend on your application. For instance, playing back audio files, e.g. MP3 the amount of delay can be large.
For listening (and replying) to a real time conversation, less than 200ms will be acceptable.
For a real-time application, the it may be feasible to play the raw input as soon as possible, and subtract the processed response a short time later. This will have the effect of cancelling low frequencies, but not the highest frequencies. This may be acceptable for some applications, e.g 'mains hum removal'
-
- XCore Expert
- Posts: 956
- Joined: Fri Dec 11, 2009 3:53 am
- Location: Sweden, Eskilstuna
Hi
I have some experience with ANC on XMOS (G4). XDK + XAI kit
I made ANC for large fork-trucks with internal combustion engines. Also a real-time GUI that communicates over UDP connected to it. The company I made it for went bankrupt, so it never ended in a commercial product.
It is a difference between Echo-Cancellation and ANC.
The LMS or NLMS doesn't work if the error microphone and the loudspeaker is in different positions and thus it is a transfer function between them. You need the Filtered X LMS, and probably Multi channel => McFxNLMS for use with multiple microphones and loudspeaker.
You can see some pictures here, testing it in the lab.
http://www.xcore.com/projects/multichan ... ontrol-anc
I have some experience with ANC on XMOS (G4). XDK + XAI kit
I made ANC for large fork-trucks with internal combustion engines. Also a real-time GUI that communicates over UDP connected to it. The company I made it for went bankrupt, so it never ended in a commercial product.
It is a difference between Echo-Cancellation and ANC.
The LMS or NLMS doesn't work if the error microphone and the loudspeaker is in different positions and thus it is a transfer function between them. You need the Filtered X LMS, and probably Multi channel => McFxNLMS for use with multiple microphones and loudspeaker.
You can see some pictures here, testing it in the lab.
http://www.xcore.com/projects/multichan ... ontrol-anc