Head-Fi.org › Forums › Equipment Forums › Computer Audio › Dithering?
New Posts  All Forums:Forum Nav:

Dithering?

post #1 of 10
Thread Starter 

Hello all!

 

(Maybe this should be in the Sound Science forum)

I am on an odyssey of finding out what makes the difference between various audio players on the PC. There is one aspect that I have not considered until right now: dithering.

Can the way a player dithers from the 64-bit floating point internal format to the external 24-bit integer format make a difference between the SQ of the players? Since noised shaping is involved, can this process be just as much as it is an art as it is a science? For that matter, can using integer mode with the player make the difference in sound quality since, for better or worse, it is the software that will be doing this conversion instead of the DAC?

Thanks!

PS: I may have finally found what is responsible for the differences between audio players. :)


Edited by r010159 - 4/28/14 at 12:36pm
post #2 of 10

If we're talking about 24-bit samples, then dithering is irrelevant. Whatever the quantization algorithm produces, is going to drown in the thermal noise of even the best electronic components available. And that's provided that you'll find a DAC chip that is capable of generating 144dB of dynamic range... And if you could, this still largely exceeds your hearing range anyway. 

 

In the 16-bit world it does make a difference, as 96dB of the dynamic range it can handle is well within hardware capabilities as well as human hearing. Here the best way to operate is to use the "bit perfect" capabilities of your player - that way your player should be completely transparent and what you hear is what has been mastered into the CD.

post #3 of 10
Thread Starter 
Quote:
Originally Posted by PleasantSounds View Post
 

If we're talking about 24-bit samples, then dithering is irrelevant. Whatever the quantization algorithm produces, is going to drown in the thermal noise of even the best electronic components available. And that's provided that you'll find a DAC chip that is capable of generating 144dB of dynamic range... And if you could, this still largely exceeds your hearing range anyway. 

 

In the 16-bit world it does make a difference, as 96dB of the dynamic range it can handle is well within hardware capabilities as well as human hearing. Here the best way to operate is to use the "bit perfect" capabilities of your player - that way your player should be completely transparent and what you hear is what has been mastered into the CD.

 

Does this mean if I do not play the music in bit-perfect mode, then there may be problems? If I select for 24-bit playback, will the software be intelligent enough to convert the floating point numbers directly into 24-bit integers? Or will dithering come into play here?

 

Now that I think about it, if I am not using integer mode playback, wouldn't the floating point number be directly given to the DAC with no conversions necessary?


Edited by r010159 - 4/28/14 at 6:10pm
post #4 of 10
Quote:
Originally Posted by r010159 View Post
 

 

Does this mean if I do not play the music in bit-perfect mode, then there may be problems? If I select for 24-bit playback, will the software be intelligent enough to convert the floating point numbers directly into 24-bit integers? Or will dithering come into play here?

 

Now that I think about it, if I am not using integer mode playback, wouldn't the floating point number be directly given to the DAC with no conversions necessary?

 

I'm not aware of any DACs that can handle 64-bit data, be it float or integer. There are some with 32-bit capability, but here I'm not sure if it's integer or float. As far as I'm concerned, 24-bit sampling is more than enough.

 

Back to dithering: it's a technique of "randomizing" the least significant bits, so that the quantization noise does not produce audible artifacts and is perceived as just noise. If you would do that on a 24-bit sample, it may affect the lowest 1 or 2 bits. That means the upper 22 bits would not be affected by dithering at all. When you send that to a DAC, it will do what it can to convert it to analog, but in reality the best you can hope to discern from the components generated noise is maybe the upper 20 bits. So whatever dithering would do is going to be inaudible anyway. Some players don''t bother dithering 24-bit output at all and just chop off the decimal part, but I don't know if all do that (they should, as dithering 24-bit audio is just wasting CPU cycles). 

 

Regarding problems in the non-bit-perfect world: the way I approach this whole thing is I choose bit perfect just for the peace of mind that the sound is as good as it can be. I'm not sure if I could distinguish between bit-perfect WASAPI playback and DS, even in 16-bit. But if you want the theoretical explanation, then the dithering done during the CD mastering is there to begin with, and combining it with the dithering in software may increase the noise level. Still, clever noise shaping algorithms should minimize the impact of this effect, and you are unlikely to ever hear it, unless you're planning to get deaf. If you hear any noise during CD playback, it's probably the tape noise from master recording - this happens a lot on older CDs.

post #5 of 10
Thread Starter 
Quote:
Originally Posted by PleasantSounds View Post
 

 

I'm not aware of any DACs that can handle 64-bit data, be it float or integer. There are some with 32-bit capability, but here I'm not sure if it's integer or float. As far as I'm concerned, 24-bit sampling is more than enough.

 

[deleted]

 

My audio software displays that it is sending 64-bit 44.1K to the DAC from a source of 16-bit 44.1K, This is really interesting. Perhaps this is not integer but instead floating point numbers? Perhaps the software can interrogate the DAC to see what format it requires?

 

What do you think? The reason I am asking is that I am using a EQ VST with the player, so it will not be bit-perfect.

 

By the way, thanks for your knowledgable replies to my questions.

post #6 of 10

There is enough noise from even the quietest electronics to have at least a kind of dither like effect on the signal. That is why for example CD's made from analog tape sources in the early days almost always sounded better than ones that were made from digital tapes. The noise floor of microphones themselves was below that of what early 16 bit digital systems were capable of recording. The tape noise from analog tape was much higher & was sufficiently random that it had a kind of dithering effect on the system. In a 24 bit system these same microphones were sufficiently noisy to have a dithering kind of effect. Even the analog electronics of the quietest nature is sufficiently noisy in the case of 24 bit audio as thermal noise of resistors are sufficiently noisy in most cases.

post #7 of 10
Quote:
Originally Posted by r010159 View Post
 

 

My audio software displays that it is sending 64-bit 44.1K to the DAC from a source of 16-bit 44.1K, This is really interesting. Perhaps this is not integer but instead floating point numbers? Perhaps the software can interrogate the DAC to see what format it requires?

 

What do you think? The reason I am asking is that I am using a EQ VST with the player, so it will not be bit-perfect.

 

By the way, thanks for your knowledgable replies to my questions.

 

What software and what DAC is that? Are you using ASIO / WASAPI or DS? If the latter, then Windows is doing the final conversion to pass the data to the DAC, so whatever the player sends ends up being as defined in your audio devices. In that case just set the Windows sound output to 24 bit and you'll be sure to never hear the dithering noise. 

post #8 of 10
Thread Starter 
Quote:
Originally Posted by PleasantSounds View Post
 

 

What software and what DAC is that? Are you using ASIO / WASAPI or DS? If the latter, then Windows is doing the final conversion to pass the data to the DAC, so whatever the player sends ends up being as defined in your audio devices. In that case just set the Windows sound output to 24 bit and you'll be sure to never hear the dithering noise. 

 

I have a O2/ODAC on a Mac Maverick OS using J River Media Center. Maybe your right. In my case maybe CoreAudio is doing the conversion. But I cannot help but wonder if there is any loss in resolution due to quantize noise. Since it is 64-bit, this does not seem to be the case.

post #9 of 10
Quote:
Originally Posted by r010159 View Post
 

 

I have a O2/ODAC on a Mac Maverick OS using J River Media Center. Maybe your right. In my case maybe CoreAudio is doing the conversion. But I cannot help but wonder if there is any loss in resolution due to quantize noise. Since it is 64-bit, this does not seem to be the case.

 

Oh sorry - you used term PC in the first message so I assumed you're using Wndows  :confused_face:

 

Honestly, your equalizer is more likely to cause resolution loss than the quantization, as it operates in the clearly audible range. Just make sure your DAC is receiving 24-bit samples (or better if that's really possible) and leave it at that. 

post #10 of 10
Quote:
Originally Posted by r010159 View Post
 

 

My audio software displays that it is sending 64-bit 44.1K to the DAC from a source of 16-bit 44.1K, This is really interesting. Perhaps this is not integer but instead floating point numbers? Perhaps the software can interrogate the DAC to see what format it requires?

 

What do you think? The reason I am asking is that I am using a EQ VST with the player, so it will not be bit-perfect.

 

By the way, thanks for your knowledgable replies to my questions.

 

http://www.kvraudio.com/product/bitviewer_by_tobybear

 

Have you checked specs for the audio chip (to find out the data type it supports)?

New Posts  All Forums:Forum Nav:
  Return Home
  Back to Forum: Computer Audio
Head-Fi.org › Forums › Equipment Forums › Computer Audio › Dithering?