Support

If you have a problem or need to report a bug please email : support@dsprobotics.com

There are 3 sections to this support area:

DOWNLOADS: access to product manuals, support files and drivers

HELP & INFORMATION: tutorials and example files for learning or finding pre-made modules for your projects

USER FORUMS: meet with other users and exchange ideas, you can also get help and assistance here

NEW REGISTRATIONS - please contact us if you wish to register on the forum

Users are reminded of the forum rules they sign up to which prohibits any activity that violates any laws including posting material covered by copyright

Noise Removal

Post any examples or modules that you want to share here

Noise Removal

Postby martinvicanek » Tue Jul 31, 2018 10:34 pm

Those of us who grew up before the digital revolution remember tape or cassette recorders. Home recording in the pre DAW era consisted in bouncing tracks while playing along adding stuff. The result was, by todays standards, of a totally inacceptable quality. Each bounce added noise and degraded the payload. I have some such historical recordings with a terrible SNR, and I was curious to try to rescue what was possible. My attempts were not very successful.

Thre tricky part of NR is not to add color to the residual noise. I have been experimenting a lot and finally got something I consider useful. The architecture is similar to a vocoder, where the same audio is supplied to both the carrier and the modulator. Each frame is analyzed and a filter is constructedwhic keeps the strong spectral components and discards the rest.

Have fun.
Attachments
NoiseRemoval2.fsm
Improved transients, added a high shelf filter to make up for lost trebble
(56.71 KiB) Downloaded 1108 times
NoiseRemoval.fsm
First post
(83.21 KiB) Downloaded 1076 times
Last edited by martinvicanek on Sun Aug 05, 2018 10:06 am, edited 2 times in total.
User avatar
martinvicanek
 
Posts: 1328
Joined: Sat Jun 22, 2013 8:28 pm

Re: Noise Removal

Postby tulamide » Tue Jul 31, 2018 11:06 pm

Hi Martin,

as so often, I'm probably just too stupid to handle the fsm correctly, so bear with me!

I loaded the fsm, loaded one of the many cassette-recordings I have from my early days (too embarrassing to be made public), that I never could rescue satisfyingly. But to my surprise, there's no change in the audio I hear. At one point I even relinked directly to the Amp (to compare the original versus the noise remover), and indeed there is no difference at all.

How am I supposed to use the schematic (for example, I was used to fingerprinting parts of the noise section, which isn't present here)? I'm pretty sure it's something I forget to do.
"There lies the dog buried" (German saying translated literally)
tulamide
 
Posts: 2714
Joined: Sat Jun 21, 2014 2:48 pm
Location: Germany

Re: Noise Removal

Postby martinvicanek » Tue Jul 31, 2018 11:33 pm

Ouch! My stupid mistake! Where is this palmface icon? :oops:
Thanks for reporting, Tula, corrected in the original post.
User avatar
martinvicanek
 
Posts: 1328
Joined: Sat Jun 22, 2013 8:28 pm

Re: Noise Removal

Postby tulamide » Wed Aug 01, 2018 12:56 am

Oh wow!

A one-knob real-time noise removal tool without fingerprinting or any of the hassle, other tools have. It's working reliable on different noise sources and strengths and is very effective. The typical issue of losing hi-freq content is due to the nature of noise, and even a wizard like you can't prevent that. I am instantly convinced of this tool. I could get rid of even very severe noise ratios already at -90 to -70 dB, and the resulting sound is at least as good as my attempts of working for half an hour in wavosaur/audacity. Which reminds me to setup wavosaur's VST support to load your remover!

Awesome tool! Thanks for sharing! :ugeek:
"There lies the dog buried" (German saying translated literally)
tulamide
 
Posts: 2714
Joined: Sat Jun 21, 2014 2:48 pm
Location: Germany

Re: Noise Removal

Postby adamszabo » Fri Aug 03, 2018 9:14 am

Wow very cool Martin, I just tried it and it works great!
adamszabo
 
Posts: 667
Joined: Sun Jul 11, 2010 7:21 am

Re: Noise Removal

Postby Spogg » Fri Aug 03, 2018 12:19 pm

I really want to try this because I’m sure it’s excellent.

But I don’t have a suitable recording, so if anyone can supply or link to one I’d be most grateful. It doesn’t seem a fair test to create one by just adding noise to something. All I find on Google is noise reduction software and tutorials.

Cheers

Spogg
User avatar
Spogg
 
Posts: 3358
Joined: Thu Nov 20, 2014 4:24 pm
Location: Birmingham, England

Re: Noise Removal

Postby tulamide » Fri Aug 03, 2018 8:16 pm

Spogg wrote:I really want to try this because I’m sure it’s excellent.

But I don’t have a suitable recording, so if anyone can supply or link to one I’d be most grateful. It doesn’t seem a fair test to create one by just adding noise to something. All I find on Google is noise reduction software and tutorials.

Cheers

Spogg

Whatever you're looking for, you'll find it on the wonderful freesound.org. You just need an account (and maybe contribute sounds yourself, but that's not needed, just a reminder from myself) to download files. For this specific task I recommend this soundfile:
https://freesound.org/people/NoiseCollector/sounds/46423/

Happy noise removal! :lol:

EDIT: But you can't really enjoy the elegant efficiency of this tool, if you don't try to reach the same result with tools from audio editors.
"There lies the dog buried" (German saying translated literally)
tulamide
 
Posts: 2714
Joined: Sat Jun 21, 2014 2:48 pm
Location: Germany

Re: Noise Removal

Postby martinvicanek » Sat Aug 04, 2018 10:31 am

Thanks for the feedback, guys. Spoggs observation indicates that perhaps I should publish this in the music archeology forum? :twisted:
Anyway, while the tool makes a decent job regrading noise suppression, it does smear out transients. A shorter FFT improves on transients at the cost of noise removal quality. I am trying to improve the one without sacrificing the other.
For the inclined reader: The current approach uses a linear phase filter. My plan is to convert that into a minimum phase filter. That way it should retain the spectral characteristics but with a tighter impulse response.
User avatar
martinvicanek
 
Posts: 1328
Joined: Sat Jun 22, 2013 8:28 pm

Re: Noise Removal

Postby KG_is_back » Sat Aug 04, 2018 6:58 pm

Transient smearing is a common problem with FFT-based filters of all kinds. I have several possible solutions:
1. use wider vertical smoothing - average neighbouring bins to reduce the steepness of the filters.
2. use transient detector to detect peaks and either
a) blend in original audio right around the peaks or
b) lower the threshold or soften the knee or
c) automate smoothing as described in 1.
3. Instead of only calculating absolute value of the voice frequency bins (which effectively creates zero/linear-phase filter, which is ambiguously non-causal) also add some phase-shift to ensure the filter is minimum phase / more causal. That would remove pre-ringing on transients into post-ringing. I'm not sure how this could be done though.
KG_is_back
 
Posts: 1196
Joined: Tue Oct 22, 2013 5:43 pm
Location: Slovakia

Re: Noise Removal

Postby martinvicanek » Sun Aug 05, 2018 10:07 am

Thanks, KG, all valid comments.
1. is equivalent to shorter FFTs. It does help the transients, but it worsens the NR.
2. is interesting but it would have to be done for each bin separately. Not sure what the overall result would be.
3. was my original plan. I succeeded in converting to min phase following JOS https://ccrma.stanford.edu/~jos/filters ... html#19463, however it turned out not to be such a good idea because consecutive frames are no lnger seamless after filtering (as is the case with lin phase).

Anyway, what I did was design a carefully synchronized overlap-add scheme with linear phase filtering and that improved the transients by a factor of two. So I am quite happy with the result now (version 2 at the beginning of this thread).
User avatar
martinvicanek
 
Posts: 1328
Joined: Sat Jun 22, 2013 8:28 pm

Next

Return to User Examples

Who is online

Users browsing this forum: No registered users and 43 guests

cron