chrisj wrote on Wed, 17 August 2005 16:55 |
*whew* no wonder you're having trouble. Some of that is nonsense.
Truth:
Flat dither is random noise applied so its maximum possible peak range covers a space equal to EXACTLY one least significant bit- whatever that may be, be it 24, 16 or 8 bit. It is applied first, and then you just truncate.
TPDF is random noise applied so its maximum possible peak range covers a space equal to EXACTLY one least significant bit- twice. You use two separate noise sources, not one at twice the loudness, and it results in a dither where the combined maximum peak can go as high as two least significant bits- whatever those may be. Then you truncate. Because it's two sources, the randomness results in a statistical distribution where it's less likely for the peak to be that high. If you plotted the distribution, it would be triangular in shape, hence the name Triangular Probability Density Function.
Nonsense: (from each source in turn)
The amplitude isn't 'less than' one quantization level unless you mean 'usually less'. When you say correlated it actually doesn't mean the noise source you're using, it means that the RESULTING noise floor should not fluctuate with the music.
It doesn't 'confuse' the quantizer, just sort of statistically averages it out. Your idea that dither only diminishes the quantization error isn't really correct- what happens is that you get a blast of noise that really, truly, is indistinguishable from hi-res noise. I didn't believe this myself until I tried it with really correct dithering. If you just truncate loud white noise you can hear a difference. If you dither the loud white noise and truncate THAT, suddenly you can't hear a difference anymore. It's a hell of a neat trick, honestly.
The bits have a perfectly easy time 'deciding' whether to switch on and off- the trouble is that very gradual signal changes get encoded as stretches of no change interspersed with abrupt jumps! This is no strain on the quantizer. It's happy to dump inharmonic grunge into the sound
It depends how you look at it, whether it 'removes' quantization errors. We mean 'to the ear', we mean 'the sound of truncation'. You must remember that even so, quantization is happening. It's just happening in such a way that information is allowed to get through. You can say 'dither does not prevent the quantization error' but it still prevents the EFFECT of the quantization error, by turning it into a result indistinguishable from the high-res sound with simultaneous noise.
The guy from Berklee is being unhelpful- for some reason he's saying, add dither, and then depend on the process of saving to 16 bit which will automatically truncate the resolution. This is dumb: suppose some future 'save as 16 bit' dithered a 24 bit signal, as it should be doing in the first place? Ignore him.
Benchmark Media must be doing some kind of noise shaper. That's different. There might be a penalty- they're talking about 'at some particular frequency', and other frequencies like highs might be 24 db worse for all you know.
Is that any help? As far as the 'level' question- use one or two noise sources, each peak at EXACTLY one LSB, if you used two you have TPDF and peak at one-plus-one LSB.
|
Dear Chrisj.
Just seen this post on dither - nothing more I could add as you have described the issues well and I totally agree with your explanation.
This comes at an interesting time for me cos I have been making a limiter application recently which has dither and noise shaping. I included a noise shaping depth control so that the energy could be varied from TPDF to full noise shape.
I also wrote a section in the manual with plots to describe dither, noise shaping and warn of the myths and dangers.
You might like to look at this stuff, it's short and to the point with some plots included of real responses.
http://www.sonyoxford.co.uk/pub/plugins-sony/products/limite r-Tech_Detail.htm#dither