Double dithering

Discussion in 'Mixing and Mastering' started by Wolfang, Apr 8, 2021.

Tags:
  1. mild pump milk

    mild pump milk Russian Milk Drunkard

    Joined:
    Mar 29, 2014
    Messages:
    2,790
    Likes Received:
    2,382
    Location:
    Russia
    Lame is good. Popular. Almost everywhere.

    I didn't search too much about which mp3 encoder is the best, but days ago I found mp3 audio, 320kbps with preserved dithering and spectrum with less or no "pixelness" up to 20k.
     
  2. Wolfang

    Wolfang Producer

    Joined:
    Apr 17, 2019
    Messages:
    548
    Likes Received:
    111
    Wow, so many great answers! Thanks, guys!
     
  3. Obineg

    Obineg Platinum Record

    Joined:
    Dec 7, 2020
    Messages:
    771
    Likes Received:
    276
    it is reasoned to generalize the problem and the solution here, because this is a perfect example:

    if you dont know what dithering is, dont use it at all.

    you simply dont need it if you dont know what it is. if you use dithering where it doesnt belong, it only makes things worse.

    the guy who once designed the waves limiter is an idiot. that thing mislead millions of people! (i could have said it in other words: putting dithering into plug-ins only made sense before host programs had dithering built-in. which is the case since 1997. only when it is built-in you can use it right^^)
     
  4. Obineg

    Obineg Platinum Record

    Joined:
    Dec 7, 2020
    Messages:
    771
    Likes Received:
    276
    you dont have to do that at all.

    if you later export to float anyway, you would have listened to something else than what you actually work on.^^

    truncation can not be controlled by dithering. and it is in my opinion dangerous to start doing things like that, because different apps handle it differently. ;/

    at this point i also feel like pointing out that between a 32 bit int stream in a DAW and a 24 bit export there is usually a volume slider, which operates in float. :) so this scenario doesnt really exist. (err... in most programs.)

    anyone who can do the math will quickly understand that dithering from 32 to 24 is almost nonsense already. but i have to admit that i do it, too. lol.

    however, normally you just keep everything in float.
     
    Last edited: Apr 11, 2021
  5. mild pump milk

    mild pump milk Russian Milk Drunkard

    Joined:
    Mar 29, 2014
    Messages:
    2,790
    Likes Received:
    2,382
    Location:
    Russia
    I think you do not understand the point of all.

    How can you send your float point or 32 bit fixed to your monitors or analog chain, if your DAC will convert all this to 24 bit before monitoring/analog? 24 bit DAC is your end point here, so you should dither otherwise it will be truncated.
    32 bit float, 32 bit fixed int or 64 bit etc are useful and better, but only inside your PC, for DSP quality, lower quantisation noise and float preserves clipping. But your DAC will output your audio as 24 bit.

    So, while working in DAW with higher bit depth and float it is better to use 24 bit dithering on FX Monitoring last in the chain for your DAC (output) and 24 bit renders. You may send 32-64 float or 32 int to mastering engineer, but the question is whether your mastering engineer will apply 24 bit dithering from his DAC to his analog chain.
    Another question is 32 bit DAC.
     
    Last edited: Apr 11, 2021
    • Interesting Interesting x 1
    • List
  6. Obineg

    Obineg Platinum Record

    Joined:
    Dec 7, 2020
    Messages:
    771
    Likes Received:
    276
    dithering does not avoid truncation, and it is only useful in conjunction with it.

    truncation is what happens when you convert from 32 bit integer to 24 bit integer. with ot without dithering. (or actually re-dithering)

    and while monitoring you dont need it at all because 1.) a dithererd bus track will as such never be part of the sum later and 2.) you never know what your IO driver does. jack audio for example has dither built-in, some hardware drivers, too. if you do it with some fancy plug-in in addition, you do it twice.

    such thing does not exist.

    not at all. it is always better to leave everything as float.

    that is the whole point of using floating point formats, that you do not have to convert between formats with different precisions multiple times.

    otherwise you could work in 24 bit from the start on.


    dithering is only useful when you export a final master to 24, 16 or 8 bits. for everything else it only make things worse.

    this means you dont use dithering if you plan to make an mp3 from it later, you dont dither stems, you dont dither when you want to process the audio in another program, you dont dither content for a sampling library and so on.

    you only do it for "CD/DVD", if you want to call it like that.
     
    Last edited: Apr 13, 2021
  7. mild pump milk

    mild pump milk Russian Milk Drunkard

    Joined:
    Mar 29, 2014
    Messages:
    2,790
    Likes Received:
    2,382
    Location:
    Russia
    24 bit dithering exists. Look at your dithering options first before telling such things. 32 bit float dithering exists too. Ask Chris Johnson from airwindows, he does plugins with such dithering.
    Truncation can be avoided by dithering. Because it is dithering's job, to avoid it. Dithering doesn't mask truncation. Ask Bob Olhson.

    Digitally, fully in the box, yes, everything should be in float.
    But if you go to analog from digital, you go through 24 bit DAC, and you must dither to 24 bit, you can't send float to analog (it will be truncated by 24 bit DAC, and clipped above 0dB, because float preserves clipping and it can be unclipped, fixed/int just clips). Or your audio will be 24 bit but truncated.

    And i don't understand "dithererd bus tarck will as such never be part of the sum later"...
    I speak about listening through your 24 bit DAC, which truncates to 24 bit. Dithering is only on FX Monitoring, not on Insert, while listening.
     
    Last edited: Apr 13, 2021
  8. Obineg

    Obineg Platinum Record

    Joined:
    Dec 7, 2020
    Messages:
    771
    Likes Received:
    276
    you simply dont understand what "dithering" means. what you saw here is an option to dither FOR 24 bits.

    when you change the bit depth you can either truncate or round, and you can do both of it either with dithering or without.

    dithering to 32 bit float is also possible, but in practice it is complete nonsense.

    and who is "you"? :)

    no manufacturer i know uses a dithering process when converting analog to digital. delta/sigma conversion is supported by dirac to do what you think dithering does.

    no, it will be converted to 24, and you can do that either truncated or rounded.

    RME ASIO exclusively asks for 32 bit from the host and is able to properly convert it without "clipping".

    that is because they obviously can do the math. ;)


    you dont even listen to my argument.

    beside the fact that you

    1.) only hear the difference when you are trained for it and have 8000 dollar speakers in an anechoic room...

    2.) ...it doesnt make any sense to listen to your audio material in a different way than how you are going to render it. and you dont render with dithering unless you are exporting a master - which isnt the case in 99% of the situations people work with audio.

    you listen to audio with a dithering option turned on as last step before you are exporting a master. not else. that is the point of monitoring, that you hear what is on "tape", and not a better version of it.
     
    • Interesting Interesting x 1
    • List
  9. mild pump milk

    mild pump milk Russian Milk Drunkard

    Joined:
    Mar 29, 2014
    Messages:
    2,790
    Likes Received:
    2,382
    Location:
    Russia
    From wiki:
    One can, for example, simply discard the excess bits – called truncation. One can also round the excess bits to the nearest value. Each of these methods, however, results in predictable and determinable errors in the result. Using dither replaces these errors with a constant, fixed noise level.

    I don't know what you want to say by truncation and rounding with/in conjunction with dithering. Dithering solves this.

    As I remember, maat linearise gives you options like truncate or round or dither.

    Usually, if not always, truncate is considered as bit reduction with its artefacts (quantisation noise) without dithering. Dithering solves this.

    RME ASIO? Inside the box? Or from digital device to digital device? Or it unclips your float audio before analog chain? What's the point here? In any case, how this solves the problem of clipped float audio going thru DAC? Float happens inside your pc, daw, editors, plugins only.

    24 bit Monitoring or other dac output: what if you have a non-mastered file with very low volume?

    Dithering solves quantisation errors/noise problems, it will not hurt. As Alexey Lukin said, dither to fixed point, either 16 or 24 bits, without any doubts. 24 bit DAC from digital to analog output is from 24 bit, and 24 bit audio goes from 32 bit int/fixed or 32/64 bit float, so dithering should be done. Just in case of preserving tails, fadeouts, fadeins, low volume audio and even because dithering noise is quieter than quantisation errors, noise shaping is even quieter for your ears.
     
    Last edited: Apr 13, 2021
    • Interesting Interesting x 1
    • List
  10. xorome

    xorome Audiosexual

    Joined:
    Sep 28, 2021
    Messages:
    1,176
    Likes Received:
    860
    I've had to give this some thought for plugin development recently and currently my conclusion is that plugins should dither whereever they are working with doubles and return floats to the DAW. The loss in precision might be negligible for a single plugin, but it likely stacks up the more plugins you have that convert doubles to float without dithering. Dithers seem to be cheap computationally in any case.
     
Loading...
Loading...