Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Noise reduction with FFMpeg or NAudio (Read 5752 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Noise reduction with FFMpeg or NAudio

Hello,
do you know how to do noise reduction (DeClicker,DeNoizer,DeBuzzer etc) with FFMpeg or Naudio ?

If not, do you recommend me to use NAudio and write the noise reduction algorithm on my own ?

Do you know where i can find more info regarding the algorithms related to DeClicker,DeNoizer,DeBuzzer noise reduction ?

Thank you very much !

Noise reduction with FFMpeg or NAudio

Reply #1
Audacity is an open source audio editor so you an study the code.  It has a click removal "effect" and a noise reduction "effect".  It doesn't have a debuzz, but I assume that's something like a comb filter starting at 50 or 60Hz, which shouldn't be too hard (if you're a DSP programmer  ).

I'm not sure what FFMPEG has to do with this.  It's a collection of CODECs.

I'm  not familiar with Naudio.


Noise reduction with FFMpeg or NAudio

Reply #2
Thank you for your response.

I do not have much experience in DSP.

What should be the delay of the comb filter ? Should i process only samples with frequency higher than 50Hz?

NAudio is an Open Source .NET Audio Library.

http://naudio.codeplex.com/

Audacity is an open source audio editor so you an study the code.  It has a click removal "effect" and a noise reduction "effect".  It doesn't have a debuzz, but I assume that's something like a comb filter starting at 50 or 60Hz, which shouldn't be too hard (if you're a DSP programmer  ).

I'm not sure what FFMPEG has to do with this.  It's a collection of CODECs.

I'm  not familiar with Naudio.


Also i found this Wikipedia Article : https://en.wikipedia.org/wiki/Noise_reduction

Quote
Other approaches

A second class of algorithms work in the time-frequency domain using some linear or non-linear filters that have local characteristics and are often called time-frequency filters.[10] Noise can therefore be also removed by use of spectral editing tools, which work in this time-frequency domain, allowing local modifications without affecting nearby signal energy. This can be done manually by using the mouse with a pen that has a defined time-frequency shape. This is done much like in a paint program drawing pictures. Another way is to define a dynamic threshold for filtering noise, that is derived from the local signal, again with respect to a local time-frequency region. Everything below the threshold will be filtered, everything above the threshold, like partials of a voice or "wanted noise", will be untouched. The region is typically defined by the location of the signal Instantaneous Frequency,[11] as most of the signal energy to be preserved is concentrated about it.

Modern digital sound (and picture) recordings no longer need to worry about tape hiss so analog style noise reduction systems are not necessary. However, an interesting twist is that dither systems actually add noise to a signal to improve its quality.
Software programs

Most general purpose voice editing software will have one or more noise reduction functions (Audacity, WavePad, etc.). Special purpose noise reduction software programs include Gnome Wave Cleaner, Sony Creative Noise Reduction, SoliCall Pro, Voxengo Redunoise and X-OOM Music Clean.

Noise reduction with FFMpeg or NAudio

Reply #3
any help?

Noise reduction with FFMpeg or NAudio

Reply #4
Quote
What should be the delay of the comb filter ? Should i process only samples with frequency higher than 50Hz?
A pure 50Hz hum just needs a notch filter at 50Hz. 

A 50Hz "buzz" contains harmonics at 100Hz, 200Hz, 400Hz, etc.  I believe it a the delay should be 1/2 of the period, so that's 10 mS, right? 

Quote
I do not have much experience in DSP.
I don't either...  I'd suggest starting with something "simple" like opening an audio file, adjusting the volume up or down, and saving the file.  You've got to be able to "get to" the raw PCM audio data before you can process it, so just opening and then re-saving the file is the first hurdle.


If you need a DSP reference, there is a free online DSP book.  There's nothing about noise reduction in that book...  I don't think there's anything specific to audio in the book, but it covers the basics before you get into something more advanced like noise reduction.