Dithering questions you‘ve been afraid to ask…
- AcousticHippie
- 4769 posts since 12 Mar, 2003
You learn something new everday. Today I learned that dithering should be applied AFTER resampling.
Now I assume that if I use a dither plugin (for example TRacks Stealth Limiter, or Goodhertz Good Dither) as the last plugin on my master bus, that does NOT happen. I assume you have to export to 16bit first and then export again running through the dither plugin.
Is this assumption wrong?
Does anyone know which dither algo Waveform uses? Might be easier to only use this. I‘m assuming it is applied after resampling in the export process.
Cheers,
mully
Now I assume that if I use a dither plugin (for example TRacks Stealth Limiter, or Goodhertz Good Dither) as the last plugin on my master bus, that does NOT happen. I assume you have to export to 16bit first and then export again running through the dither plugin.
Is this assumption wrong?
Does anyone know which dither algo Waveform uses? Might be easier to only use this. I‘m assuming it is applied after resampling in the export process.
Cheers,
mully
Last edited by multree on Fri May 30, 2025 1:35 pm, edited 1 time in total.
-
- KVRist
- 374 posts since 18 Nov, 2023
You shall only dither once, and do so just before eventually downsampling your finally to be published audio file. So, complete all recording & mixing & mastering works at a high enough bit rate, then activate dithering if the final render should render to a lower bitrate.
Assume that Waveform is doing it correctly, if I remember correctly, and has preadjusted for your project a high enough bit rate of 32 bit. It then introduces the dither before rendering, if you activated it in the render dialog. The dither will not appear in the audio data of your tracks in the project.
Even if before not having introduced some dither, I doubt that downsampling artifacts become disturbingly audible if downsampling to 24 bit. It is likely to sometimes become audible if downsampling without dithering to 16 bit, though.
Here is a more complete explanation and advice:
https://www.izotope.com/en/learn/what-i ... audio.html
Assume that Waveform is doing it correctly, if I remember correctly, and has preadjusted for your project a high enough bit rate of 32 bit. It then introduces the dither before rendering, if you activated it in the render dialog. The dither will not appear in the audio data of your tracks in the project.
Even if before not having introduced some dither, I doubt that downsampling artifacts become disturbingly audible if downsampling to 24 bit. It is likely to sometimes become audible if downsampling without dithering to 16 bit, though.
Here is a more complete explanation and advice:
https://www.izotope.com/en/learn/what-i ... audio.html
Last edited by talby on Fri May 30, 2025 12:46 pm, edited 4 times in total.
Classical guitar --> Line Audio CM4 @ SSL12 --> KDE-Plasma @ Debian-Linux --> Waveform PRO 13.5
- KVRist
- 147 posts since 22 Oct, 2016
I'm sincerely too lazy to explain this to you, so I asked deepseek
formulate as simply and clearly as possible what dithering is, for what purpose it is used, how and when it should be used in the process of mixing and mastering
Here's a simple and clear explanation of dithering:
1. **What it is:**
* **Adding a tiny amount of *random noise*** to your audio signal just before you reduce its bit depth (e.g., going from 24-bit to 16-bit).
2. **Why it's used (Purpose):**
* **To hide digital distortion ("quantization error").** When you lower the bit depth, tiny details get chopped off roughly, creating unpleasant, gritty distortion, especially during very quiet passages or fade-outs.
* **The noise "masks" this distortion.** Think of it like using fine sandpaper (dither noise) to smooth out rough wood grain (distortion) instead of leaving jagged splinters.
3. **When to use it:**
* **ONLY during the FINAL step** when you are permanently reducing the bit depth of your finished audio for distribution.
* **Mastering:** This is the *most common and crucial* place. When the mastering engineer exports the final master file (e.g., 16-bit for CD, 16-bit or 24-bit for streaming), they apply dither as the very last process in the chain.
* **Mixing:** *Rarely, if ever.* Only if you *must* bounce a mix to a lower bit depth *and* this bounce will be the final audio used without further mastering. Normally, mixes stay at high bit depths (24-bit or 32-bit float) until mastering.
4. **How to use it:**
* **1. Finish all processing:** Complete all mixing, mastering, volume adjustments, and limiting.
* **2. Set Export/Bit Depth:** Set your DAW or mastering software to export/render/bounce the audio at the *target* lower bit depth (e.g., 16-bit).
* **3. Enable Dither:** **Activate the dither option** in your export/bounce/render dialog box *just before* rendering.
* **4. Choose Type (Optional):** Most tools offer dither "types" (e.g., Rectangular, Triangular, Shaped). **Triangular** is a safe, good default. **Shaped** (or Noise Shaped) pushes the noise into frequencies humans hear less, often sounding slightly better – use this if available and you're aiming for highest quality.
* **5. Render:** Export the file. The dither is applied automatically during the bit depth reduction.
**Key Rules to Remember:**
* **Only When Reducing Bit Depth:** If you're not changing bit depth (e.g., exporting 24-bit file from a 24-bit session), **DO NOT** use dither.
* **Only Once:** Apply dither **only once**, at the **absolute final export** to the delivery format. Never dither multiple times.
* **After Limiting:** Dither must be the very last process, *after* any peak limiting or final volume adjustment.
* **Mastering Stage:** Its primary and most important use is during the mastering export.
**Analogy:** Imagine drawing a smooth curve on graph paper with huge squares. Drawing precisely is impossible, so you get jagged steps. Dither is like using a pencil to shade the edges slightly randomly – from a distance, the curve looks smoother, even though you added tiny graphite "noise".
**In short:** Dither is a tiny, controlled amount of noise added at the *very last step* of mastering when reducing bit depth (e.g., to 16-bit) to make the resulting audio sound smoother and less distorted, especially in quiet parts.
Is dithering required when reducing signal frequency while maintaining bitrate?
No, **dithering is *not* required or used when reducing sample rate (e.g., going from 96 kHz to 44.1 kHz) while maintaining the same bit depth (e.g., 24-bit).**
Here's why, explained simply:
1. **The Problem is Different:**
* **Bit Depth Reduction:** Creates "quantization error" - harsh digital distortion when truncating low-level information. Dither fixes this by masking it with noise.
* **Sample Rate Reduction (Downsampling):** Creates a problem called **aliasing**. High frequencies above the *new* Nyquist limit (half the new sample rate) fold back into the audible range as ugly whistles and artifacts.
2. **The Solution is Different:**
* **Aliasing** is prevented by using an **anti-aliasing filter** (a steep low-pass filter) *before* downsampling. This filter removes all frequencies above the new Nyquist limit.
* **Dither** does nothing to prevent aliasing and is not designed for this purpose.
**When Downsampling (Reducing Sample Rate):**
1. **Apply an Anti-Aliasing Filter:** This is **essential**. All competent sample rate converters (SRC) do this automatically. The *quality* of this filter determines how clean the conversion sounds.
2. **Bit Depth Stays the Same? (e.g., 24-bit to 24-bit):** **No dither needed.** You're not reducing the resolution of each sample, just how many samples per second you have. There's no quantization error introduced by the sample rate change itself.
3. **Bit Depth *Also* Reduced? (e.g., 24-bit/96kHz -> 16-bit/44.1kHz):**
* The SRC handles the anti-aliasing filter and downsampling.
* **Then**, at the *very end* of this process, **dither is applied** when reducing the bit depth from 24-bit to 16-bit.
**Key Takeaways:**
* **Dithering is ONLY for reducing bit depth (e.g., 24-bit -> 16-bit).**
* **Downsampling (reducing sample rate) requires an anti-aliasing filter.**
* **If you *only* change the sample rate and keep the bit depth the same, dither is NOT used or needed.**
* **If you change *both* sample rate *and* bit depth:**
1. High-quality Sample Rate Conversion (with anti-aliasing) happens first.
2. **Dither is applied last**, only during the final bit depth reduction step.
**In short:** Focus on what you're changing:
* **Lowering Bit Depth?** Yes, use dither (once, at the final export).
* **Lowering Sample Rate?** No dither. Use a good SRC with an anti-aliasing filter.
* **Lowering Both?** Use good SRC *then* apply dither during the bit depth reduction.
when reducing the bitrate, should dithering be used before or after the actual bitrate reduction action, if I use a separate plugin for dithering, and why in this order?
Here's the clear answer with the crucial order explained:
**Always place the dithering plugin *immediately BEFORE* the actual bit reduction plugin (or action) in your signal chain.**
**Why this specific order is mandatory:**
1. **The Problem Occurs During Reduction:** The harsh quantization distortion happens at the *exact moment* the bit depth is reduced (e.g., when truncating 24-bit samples to fit into 16 bits).
2. **Dither Must Be Present *At That Moment*:** Dither works by adding its tiny noise *just before* the truncation happens. This noise randomizes the quantization error, turning the harsh distortion into a smoother, less audible noise floor.
3. **If Dither Comes After:**
* The truncation/distortion has **already happened** when the bit depth is reduced.
* Adding dither noise *afterwards* simply adds noise **on top of the existing distortion**. It does **nothing** to mask or alter the distortion that was created during the reduction.
* **Result:** You get both the ugly distortion **and** the dither noise – the worst of both worlds.
**Visualizing the Signal Chain:**
```
[All Other Processing] --> [Dither Plugin] --> [Bit Reduction Plugin/Action] --> [Output]
```
**Key Technical Reason:**
* Dither isn't just "processing" applied to the signal. Its primary function is to **condition the signal *immediately prior to quantization*** (the bit reduction step). The noise interacts with the quantization process itself to randomize the error.
**Practical Implications:**
1. **If your "bit reduction" is happening during export:** Enable dither *in the export dialog box*. The DAW applies it correctly *during* the reduction process. (You don't need separate plugins).
2. **If using separate plugins within a session (e.g., for creative effect or testing):**
* **Dither Plugin:** Place this first.
* **Bit Reduction Plugin:** Place this *immediately after* the dither plugin.
* **DO NOT** put any other processing (EQ, compression, volume) between the dither plugin and the bit reducer. This would alter the carefully conditioned signal before truncation.
**In Short:**
* **Dither BEFORE Bit Reduction:** Dither masks the distortion *as it's being created*.
* **Dither AFTER Bit Reduction:** Pointless. You get distortion + noise. **Never do this.**
**Remember:** This specific plugin order *only* matters if you are manually simulating the bit reduction process *within* your DAW using separate plugins. For the crucial final mastering export to a lower bit depth (e.g., 16-bit CD), simply enabling dither in your DAW's export settings handles the order correctly.
цвет волшебства
- AcousticHippie
- Topic Starter
- 4769 posts since 12 Mar, 2003
okay.... so I can simply forget what I learned today?
there's a lot of conflicting info about this and I'm not trusting AI just yet.... it's quite often wrong.
here are some quotes:
"except for dither, which must always be last in the mastering chain — even after sample rate conversion"
from https://goodhertz.com/tonal/tupe-mastering/
"Theorically, dithering should always be done as final step, after resampling."
from KikeG on https://hydrogenaudio.org/index.php/topic,38317.0.html
also UA seems to have been saying the same once:
iZotope can't make up it's mind on the issue:
"For dithering to work, it must be the absolute last edit performed on an audio file, except for the final conversion to 16-bit depth. Only dither once. This means that any effect applied after dithering, even a slight gain adjustment, or a sample-rate conversion, can undermine the positive effects of your dithering"
from https://www.izotope.com/en/learn/what-i ... 0dithering.
there's a lot of conflicting info about this and I'm not trusting AI just yet.... it's quite often wrong.
here are some quotes:
"except for dither, which must always be last in the mastering chain — even after sample rate conversion"
from https://goodhertz.com/tonal/tupe-mastering/
"Theorically, dithering should always be done as final step, after resampling."
from KikeG on https://hydrogenaudio.org/index.php/topic,38317.0.html
also UA seems to have been saying the same once:
iZotope can't make up it's mind on the issue:
"For dithering to work, it must be the absolute last edit performed on an audio file, except for the final conversion to 16-bit depth. Only dither once. This means that any effect applied after dithering, even a slight gain adjustment, or a sample-rate conversion, can undermine the positive effects of your dithering"
from https://www.izotope.com/en/learn/what-i ... 0dithering.
You do not have the required permissions to view the files attached to this post.
- AcousticHippie
- Topic Starter
- 4769 posts since 12 Mar, 2003
my guess is (and I have already checked this by using a bit meter after the dither plug-ins) that some dither plug-ins already perform the resampling themselves and exporting via the DAW to that sample rate doesn't cause any resampling.
so here are my results:
Goodhertz Good Dither resamples the audio inside the DAW to whatever you have it set to.
If set to 16bit it outputs a 16bit signal.
IK Stealth Limiter does NOT resample the audio and outputs a 32bit signal, it doesn't matter if the bit depth in Stealth Limiter is set to off, 16 or 24bits
Goodhertz CanOpener does not have a 16bit setting and either outputs a 32bit file when dithering is off or a 24bit file when dithering is switched on.
that's all dither capable plug-ins I have currently installed.
so here are my results:
Goodhertz Good Dither resamples the audio inside the DAW to whatever you have it set to.
If set to 16bit it outputs a 16bit signal.
IK Stealth Limiter does NOT resample the audio and outputs a 32bit signal, it doesn't matter if the bit depth in Stealth Limiter is set to off, 16 or 24bits
Goodhertz CanOpener does not have a 16bit setting and either outputs a 32bit file when dithering is off or a 24bit file when dithering is switched on.
that's all dither capable plug-ins I have currently installed.
- KVRist
- 147 posts since 22 Oct, 2016
I don't get it, where did you find any contradictions there? Resampling is changing the signal frequency, as everyone wrote above, dithering is ONLY for changing the bit rate, which is indicated in all the links you provided.
I'm afraid that you need to study the theory of digital audio first, if you confuse bit depth and resampling. Sorry
I'm afraid that you need to study the theory of digital audio first, if you confuse bit depth and resampling. Sorry
цвет волшебства
- AcousticHippie
- Topic Starter
- 4769 posts since 12 Mar, 2003
Yeah I think I‘ve confused resampling and bit reduction. gotta be one of those days...
Since all my projects are in 44,1 anyway, I don‘t change the sample rate at all.
I'll be quiet now...

Since all my projects are in 44,1 anyway, I don‘t change the sample rate at all.
I'll be quiet now...
- KVRist
- 147 posts since 22 Oct, 2016
as far as I can figure out, you can change the signal frequency at any time, both before and after, I can't imagine a reason why this could be important. the only thing that comes to mind is that since we physically reduce the number of samples per unit of time by lowering the frequency, then before lowering the bitrate we will simply simplify the calculations in the final rendering.
But I still strongly recommend that you study the method of transmitting an audio signal in digital form, the presence of such knowledge will 99% cut off all misunderstandings and questions, especially about dithering.
in short, we have a speaker that can straighten up and push air towards you or, conversely, be drawn in and pull it towards itself, with such vibrations it creates sound. The number of times the speaker can perform these movements per unit of time is the frequency, respectively pushing air is 1, drawing it in is -1 and rest is 0. Accordingly, all intermediate values from 1 to 0 and to -1 are in the range after the decimal point 0.9999 and -0.9999. Accordingly, the audio signal is a stream of similar numbers, which, depending on the sample frequency, change at a given speed, creating the movement of the speaker membrane. Bit rate is the depth of how much detail this number can be recorded - 32 bits are 8 digits after the decimal point 0.00000001, 16 bits respectively 4 - 0.0001, the higher the bit rate, the more detailed information we can record in the stream of numbers, a smoother curve, this is especially important for a more natural synthesizer part, and also allows you to compensate for too quiet or too loud sound with virtually no loss, if it has already been recorded, the range of values allows. Reaper, StudioOne have been working with a full 64-bit range for a long time, that's 16 digits after the decimal point 0.0000000000000001, I would really like this from waveform =(. Dithering acts as a small noise that is written into that part of the values after the decimal point that will be cut off, so that when rounding we don't have unusual dips and bursts, cutting off detailed smoothness, when high values disappear or are rounded up, instead random values are entered that will noisily and quietly fluctuate without creating overtones from the cut values. That's how it works
But I still strongly recommend that you study the method of transmitting an audio signal in digital form, the presence of such knowledge will 99% cut off all misunderstandings and questions, especially about dithering.
in short, we have a speaker that can straighten up and push air towards you or, conversely, be drawn in and pull it towards itself, with such vibrations it creates sound. The number of times the speaker can perform these movements per unit of time is the frequency, respectively pushing air is 1, drawing it in is -1 and rest is 0. Accordingly, all intermediate values from 1 to 0 and to -1 are in the range after the decimal point 0.9999 and -0.9999. Accordingly, the audio signal is a stream of similar numbers, which, depending on the sample frequency, change at a given speed, creating the movement of the speaker membrane. Bit rate is the depth of how much detail this number can be recorded - 32 bits are 8 digits after the decimal point 0.00000001, 16 bits respectively 4 - 0.0001, the higher the bit rate, the more detailed information we can record in the stream of numbers, a smoother curve, this is especially important for a more natural synthesizer part, and also allows you to compensate for too quiet or too loud sound with virtually no loss, if it has already been recorded, the range of values allows. Reaper, StudioOne have been working with a full 64-bit range for a long time, that's 16 digits after the decimal point 0.0000000000000001, I would really like this from waveform =(. Dithering acts as a small noise that is written into that part of the values after the decimal point that will be cut off, so that when rounding we don't have unusual dips and bursts, cutting off detailed smoothness, when high values disappear or are rounded up, instead random values are entered that will noisily and quietly fluctuate without creating overtones from the cut values. That's how it works
цвет волшебства
-
- KVRist
- 374 posts since 18 Nov, 2023
Can happen. We all started there. Some of us are meanwhile some years of reading and studying ahead of you. So, you are very welcome to ask and we will try out best to help you.multree wrote: Fri May 30, 2025 3:45 pm Yeah I think I‘ve confused resampling and bit reduction. gotta be one of those days...
Since all my projects are in 44,1 anyway, I don‘t change the sample rate at all.
I'll be quiet now...![]()
![]()
![]()
By the way, no need to consult and trust AI if there are man made qualified articles available. AI is only good if you search for an efficient reminder on a topic which you before studied already sufficiently from competent man made sources and you are thus able to safely judge on the correctness of the AI output.
Usually the sites of the hardware, plugin or service providers are full of very valuable content.
On YouTube the same, stay first with channels of the well known hardware, plugin or service providers, until you learned enough to judge yourself if a channel is nothing more than some guy shining by self-esteem but unfortunately spreading a lot of well presented and still questionable claims.
Classical guitar --> Line Audio CM4 @ SSL12 --> KDE-Plasma @ Debian-Linux --> Waveform PRO 13.5
- AcousticHippie
- Topic Starter
- 4769 posts since 12 Mar, 2003
It‘s Not like I started yesterday… it‘s just that I hadn‘t really thought about dithering all that much and got confused. I‘m getting old is all.
- KVRist
- 147 posts since 22 Oct, 2016
for humor, I suggest checking other mathematics, a person does not hear (especially at an age) above 13 kHz, turn on the generator and make sure, and then turn on the composition and with a thin cut remove the part above, strange? the presence of sound is not heard, and the absence is clearly audible, probably cutting out high frequencies resonates in the audible part
цвет волшебства
