What about… Dithering? Part 1: The Basics
I’m sure nobody of you will outsource a production to a third person like a mixing or mastering engineer – we are doing the whole production ourselves. In my eyes, this means the more you know about the single steps, the more you will be able to push quality.
A often overseen part of mastering is Dithering. But what is Dithering for and what does it mean?
For my own production I use Ozone as a part of my mastering chain. It contains a dithering section with a plenty amount of options. And to be honest: I didn’t pay much attention to this section yet. Of course not only Ozone is able to set up dithering. There are other plugins like Waves L3-16 and L2 which include Dithering sections. Or Toneboosters Dither or PSP X-Dither, which are specialized dithering tools.
While researching I stumbled upon iZotopes Dithering guide. It’s a bit annoying to get through the whole guide, so let me sum up the basic idea.
Digital Audio
To understand the magic behind dithering, it is good to get behind the basics of digital audio. You should already know how digital audio is stored and converted, but let me repeat this lesson in brevity: in contrast to analogue waveforms, digital waveforms are quantized, which means that the resolution is limited. This resolution is specified in Sample Rate and Bit Rate. So the higher these two values are, the smoother the digital waveform will get.
Quantization Noise
Let’s imagine you are producing a piece in 24bit, but the customer wants the file in 16bit. The simplest way to do the conversion, is by erasing the lowest 8 bit. 24bit – 8bit = 16bit.
Now this 16bit curve is less smooth than the 24bit one, for sure. Due to the principle of digital audio it won’t be possible to reproduce the original 24 bit. There will always be differences where old and new sampling points can be found. And this results in quantizations error.
So how do these quantization errors and digital waveforms influence your audio? Let’s have a look on a single sine wave with a resolution of 16 bit. You will notice that around -96 there is a lot of stuff going on: noise, harmonics and dirt. Nothing you would expect from a pure sine wave. This is a result of the digital waveform: squares.
This means for you as a producer: the more quiet your signal, the closer it is to the noise floor. Or the more compressed your signal is, the more noise will get up.
Dithering
How do we solve this problem? Right! Dithering! Adding noise, to reduce noise!
By using dithering you add a noise floor, which fits to the destination format, to cover the quantization noise with smoother, more continuous noise. Various noise floors appear to sound differently when mixed together with your signals. Sounds a little bit fishy, right? But exactly this point gets important, when you are doing fades. Why? A digital reduction of volume means a reduction of bits. And we learned: the lower the bit depth, the lower your signal to noise ratio!
In the picture below you can see how dithering noise evens out the quantization errors from the picture above.
Don’t get me wrong, you won’t have a noisy file if its heavily compressed. The mix still covers the noise floor, which is much lower than the rest of your mix.
Let’s have a listen to an example, which shows what is happening in digital underground.
Here are 3 files with fade outs which were done on a very low level. So this is the above mentioned problem with fades. I normalized it, so you can hear the difference without the need of cranking up your volume.
The first one was exported with 24bits and sounds good. 24bit -> larger signal to noise ratio.
[soundcloud url=”https://api.soundcloud.com/tracks/248518486?secret_token=s-5ftF7″ params=”color=ff5500&inverse=false&auto_play=false&show_user=true” width=”100%” height=”20″ iframe=”true” /]
This one was exported in 16bit with no Dithering. Lower signal to noise ratio. You will instantly hear the difference. Sounds harsh dirty and not nice:
[soundcloud url=”https://api.soundcloud.com/tracks/248518492?secret_token=s-tm2Gw” params=”color=ff5500&inverse=false&auto_play=false&show_user=true” width=”100%” height=”20″ iframe=”true” /]
The last one was exported in 16bit with Dithering. It is still noisy, but in another way. I used the standard settings in Ozone’s dithering section. For me it definitely sounds a lot better.
[soundcloud url=”https://api.soundcloud.com/tracks/248518497?secret_token=s-8kvtt” params=”color=ff5500&inverse=false&auto_play=false&show_user=true” width=”100%” height=”20″ iframe=”true” /]
So far for this episode. I think you get the point how dithering works basically and what it can do.
In the next part I will show you how to set up the right options for dithering to prevent unwanted quantization noise.