Quote:
Originally Posted by geekmaster
Instead of Dynamic Range Compression, the cellphone codecs use A-law or u-law logarithmic range compression (non-binary weighting of the 8 bits). This effectively packs the bottom bits close together and spreads the top bits far apart, allowing a useful number of bits for both quiet sounds and for loud sounds, even though there are only 8-bits in total. This takes advantage of human logarithmic sensory perception, and works a lot like gamma correction as used in digitial photography (except for sound in this case).
Of course, it may be even better to use both dynamic range compression AND logarithmic coding. 
|
To be frank, a very simple inline bandstop targeting REALLY bad signal areas can stop them dead (obviously) and when exact enough is imperceptible.
This doesn't really work as a guiding principle for creating a general purpose noise gate though, now it just so happens the last LADSPA plugin that was created with my programming buddy was indeed a noise gate in csound. As I recall the actual filtering wasn't the issue it was correctly anticipating silence and then ramping up the filtering at that time - then detecting non silence - and effectively pre-releasing it.
Managed in this way even a really shitty filter can do a good job with the right impulse information - we have a buffer right? that sounds like enough time domain info to make a silence estimation. anyways you get the picture.
use bad things well and get good results is my mantra on these things.