Performance of ADI's New FullFsNR Block
Recently the SigmaStudio team at ADI produced a prototype block that can reduce background noise in speech signals. Presently it's not built into SigmaStudio, but can be downloaded and installed following the directions at: https://ez.analog.com/message/127455#127455
It's called FullFsNR because unlike earlier offerings, it operates at "normal" sample rates. It works by splitting the incoming audio into over a dozen channels within the speech frequency range, then gating each according to level. Channels found above threshold are allowed through, while those not are assumed to contain primarily noise and are thus shut off. The adjustable threshold determines how it operates -- as a noise gate and/or as a dynamic noise reduction system. Operating adjustments are described below:
How well does it work? Here's some test results:
Frequency Response:
By setting the threshold low and overwhelming it with noise, the block's response with all channels open can be found. The low-frequency roll-off is from an external 150 Hz Hi-pass filter in the test setup. The block's HF response is -3dB at about 6500 Hz -- a medium-quality voice bandwidth (better than telephone, not quite FM radio).
Noise Reduction:
A test signal consisting of a 500 Hz tone and some below-threshold noise is shown below:
The block's output shows significant noise reduction at frequencies above the tone frequency:
When the input tone is switched on and off, the noise gets shut off completely while the tone is gone:
Conclusion:
It works very well. Some suggestions for additional features:
A version with a "data controlled" threshold, so the threshold (the most likely adjusted parameter) could be made an end-user adjustment via GPIO.
A wider-bandwidth version for higher-fidelity voice applications.
I'm really impressed that ADI would take the time to implement a user's request such as this, with only a prospect of selling some more chips in return. I hope they do!
Bob
noise_gate
voice
noise
sigmastudio
noise_reduction
Thanks For the analysis Bob.I definitely appreciate ADI's effort on this, but before I could use it in my application I would have to have the ability to control the threshold from an external pot as you listed in your suggestions. I can test out the block more when I'm back from vacation (next week).
Thanks for the analysis, Bob. I'll take some of what you wrote and put it on the Wiki. I think this block will find its way into the standard library in the next SigmaStudio release.
This question has been assumed as answered either offline via email or with a multi-part answer. This question has now been closed out. If you have an inquiry related to this topic please post a new question in the applicable product forum.
Thank you,
EZ Admin
Please log in to reply.









