[Speex-dev] Denoise causing drain pipe effect in audio

Henry Gomersall whg21 at cam.ac.uk
Fri Jun 4 05:31:34 PDT 2010

On Fri, 2010-06-04 at 17:28 +0530, Gurinder Singh wrote:
> Is there a way of retaining high noise suppression and still getting
> better audio quality. Your pointers will be of great help. 

I hope people don't resent me making a point on this, as I don't
actually know how the noise suppression in speex works, but I have some
knowledge in the area of noise suppression.

In general, if you have information about the nature of the noise you
are trying to suppress, you can do much better than just assuming white

This is a classic example of where a Wiener filter might be useful.
Typically, you would use a second microphone to capture just the noise,
and then use that to perform some regularisation on the speech signal -
you would suppress parts of the signal spectrum where the signal to
noise ratio is low. The Wiener filter is well studied and understood,
but only really optimal under the assumption of additive Gaussian noise
and a Gaussian prior on the signal (which is almost never true!), and is
easily tractable under even stronger conditions. As a first attempt
though, I would try the Wiener filter as it may be good enough.

In answer to your general question, yes, there are ways of doing noise
suppression, and much can be done with knowledge about the kind of noise
you are experiencing. Huge swathes of literature are devoted to exactly
this topic.

Hope that is vaguely useful.



More information about the Speex-dev mailing list