In the audio domain, I am currently attempting to use MATLAB to distil:

1. $\textrm{signal}$ from $\textrm{noise + signal}$

2. $\textrm{noise}$ from $\textrm{noise + signal}$ using two adaptive filters $\rightarrow$ two results.

I get the first answer quite effectively using:

hFDAF1 = adaptfilt.fdaf(AdaptFiltLength,StepSize,Leakage,Delta,Lambda)

[Errors1, Adapt_Out_Audio] = filter(hFDAF1, NoisePlusAudio, Audio)


where NoisePlusAudio is a microphone in the room, and Audio is music playing through speakers in the room.

How do I get the adaptive filter to remove the Audio from NoisePlusAudio, just leaving the background noise of the room, much like an echo canceller? The following does not work, it just lets all the sound through.

[Errors2, Adapt_Out_Noise] = filter(hFDAF2, Audio, NoisePlusAudio)


I'd love to know the answer ....

• I assume your hFDAF2 is similar settings to hFDAF1? Feb 5 '16 at 9:41
• I use:AdaptFiltLength = 256 StepSize = 0.03 Leakage = 0.9 Delta = 1 Lambda = 0.96 Feb 6 '16 at 6:33
• Would you support this: area51.stackexchange.com/proposals/94189/matlab Just up vote question with less than 10 votes.
– Royi
Jan 2 '17 at 12:10