Dither

Lasse Lammert

HCAF Blitzkrieg
Feb 12, 2009
8,409
40
48
www.lasselammert.com
I know, this has been discussed a couple of times...but I thoght it's that time again.

I never bothered much about what type of dithering I was using, didn't think it mattered much...

Usually I just dithered during mastering in Pro Tools, using the mbit+ mode in Ozone5...
Recently I've noticed that on some occasions I seem to have dithered twice (had the dither function in waveburner, which I use to create my masters, active by accident)...
So I decided to not use the izotope dither anymore but bounce my mastered wavs as 24 bit files and then let the POW-r dither in Waveburner do the final dithering.
Before comitting to that I thought I should at least create a blind test...and that's what I did.

I bounced a mix through my mastering chain and printed it:
a: 24 bit
b: 16 bit, no dither
c: 16 bit POW-r#1
d: 16 bit POW-r#2
e: 16 bit Ozone mbit+, noise shaping high.

then I had all the tracks in my PT session and used the mute switches on the Control 24 to create a true blind test (always comparing two tracks at a time, two fingers on the mute switches of those track, switching between them without knowing which one was muted at the time).
So I first compared the 24 bit file to the truncated 16 bit file...damn, what a difference!
so I thought to myself "wow, I'll make sure to always dither from now on, but it probably doesn't matter much what type of dither I'm using"......that changed when I then started to compare the different types of dither with each other...
And the MBIT+ just won every time, I thought the differences would be tiny and I'd probably just be cheating myself, but comparing with the other 3 16 bit tracks I was able to tell when I was listening to the mbit+ dithered file 100% of the time (both with headphones (mh50) and monitors (o300).

The MBIT+ file just sounded much closer to the original 24 bit file.


So just to be sure I then imported the 24 bit file into Waveburner and exported it as 16 bit from there, using the POW-r#1 again...re-imported it into PT and compared it to the POW-r#1 file I created within protools...and tbh I couldn't really tell a difference...so far so good...but then I flipped the phase on one of the tracks and they didn't fucking cancel out at all (although they were sample aligned of course!)...so the file that went through the Waveburner export was apparently not identical with the file that went through the same dithering process within PT..WTF???!!!!
(to be extra sure that it's the dithering that's causing the difference and not some fuck up in the import/export process I also imported my 24bit testfile into WB and exported it from there just to re-import into PT again..and voila, the null test shows that the ex-im-ex-imported file cancels out 100% with the original test file...
What does that mean? Well, that means that the same algo (POW-r#1) sounds different in Pro Tools than it does in WaveBurner.


My conclusion:
I prefer the sound of the MBIT+ dithered file as it's closest to the original 24bit, but I'll probably still be using the dithering process in WB in the future (just because it's really last in the chain after fades etc).
Unfortunately Ozone doesn't work in WB (a ton of bugs), so it's either dithering with izotope in PT or letting WB do the final dithering

What's your opinion on this topic?
 
Very interesting.
My workflow is to mix and print each song in PT in 24 bits, then create a session in PT where I import them all and do all my sequencing, fades, crossfading etc. Then I insert Ozone Maximizer using MBIT+ (never really cared much about the settings "high, moderate, etc" to be honest) and bounce the whole album as a 16 bit wave file (should be faster when I get PT11 with offline bounce). Then I import this big wave file in Waveburner and set my markers (accordingly to my markers in PT). I find it to be better than importing the files in Waveburner and doing crossfades there because I hate WB's GUI and I find it super hard to navigate, zoom, edit, etc.
 
Dithering is one of the techniques I have yet to delve into. I think that a part of me resists it, because I have a tendency to analyze things to death, and getting anxious over it.

But for what it's worth: I have been using Reaper's built-in dither and noise shaping when going from 24 to 16 bit and I've never had complaints.
 
Yeah, there's definitely differences in them. Not enough to bother me to shoot them out though, as I vastly prefer not doing the mastering unless I have to. So when I do, I've usually just used POW-r #1 in Waveburner without really thinking about it, because it's supposed to be the most neutral. Occasionally I've used the Apogee UV22HR too just to try it out, but I haven't really noticed a big difference or done any blind tests, so I'll usually just go with POW-r #1. The POW-r #2 and #3 I never use, because I don't think the type of music I do would benefit from them.

I've heard the MBit+ is good, but again, I haven't tried it.
 
i was wondering about that for a long time. care to upload some files to a/b them?
i never did a comparison because i always thought i couldn´t hear a difference...at least for heavy stuff. sometimes i even asked myself if it´s good that some of the plugins have their own dithering enabled (fg-x, l1/l2, etc.). technically it should be best to dither as the very last process of your mastering chain, shouldn´t it?!
so what if you have fg-x with dithering enabled and after that l2 with its own dithering algorithm enabled and another instance of uv22 hr in the end? will it really make a noticeable difference?
i think i have to test that...

EDIT: is there a sneap dithering preset?!???
 
I've also been using ozone for mbit+ for a while now, stumbled across a website a few years ago that had a blind test for every type of dither algorithm out there and the difference between some of them was pretty remarkable, specifically the Waves stuff sounded absolutely awful in comparison to the mbit+, the end result for me was that I had chosen mbit+ every time in the shootouts, as such I've never used anything else since.
 
Here's my perspective as a DSP engineer...

The same algorithm in two different apps' implementations may not yield the same result. For example, there is only one correct answer to a hyperbolic tangent (tanh(x)) for a given value of x, however, for speed reasons when dealing with a huge pile of numbers (as we always are with WAV files), we often resort to fast approximations of various maths that result in varying degrees of precision depending on the perceived needs of the application (for example, realtime monitoring of a DSP algorithm in a DAW.)

To put it another way: if every plugin in your mixes used the most precise possible version of every mathematical function or algorithm, your plugin counts would drop immensely and you would be bouncing constantly to get through a project. It would be like stepping back in time 10 years in terms of CPU speed.

So there are tradeoffs, even in a context where it shouldn't matter like dithering (where we're willing to wait for a render and don't really care about realtime monitoring.) This can often be the result of developers habitually using off the shelf "optimized" math libraries which allow for faster execution as I stated before. While there's really nothing wrong with this, and many of these libraries are fantastic, in the future we will see more plugins that have a realtime "monitoring" mode and an offline "rendering" mode that is higher quality. It's already begun to happen, and it's a good move.
 
Dithering is one of the techniques I have yet to delve into. I think that a part of me resists it, because I have a tendency to analyze things to death, and getting anxious over it.

But for what it's worth: I have been using Reaper's built-in dither and noise shaping when going from 24 to 16 bit and I've never had complaints.

Well if you decide to look into it "Mastering Audio" by Bob Katz is a great place to start. It goes very in depth. There's is more information in there about dithering than I will ever need.