I found something older dealing with dither against no dither:
https://www.hydrogenaud.io/forums/in...dpost&p=858410
No idea this really helps but some may find it interesting.
I tried the sweep file created in line 1 and applied 2 volume changes on the resulting 24bit file, -5.01dB followed by +5.01 without dither. I had no better idea to find a way to compare it to the source.
So for 2x volume changes the resulting distortion with SoX stats for the mixdown: I attached the file.
DC offset -0.000000
Min level -0.000000
Max level 0.000000
Pk lev dB -138.47
RMS lev dB -142.04
RMS Pk dB -141.81
RMS Tr dB -142.27
Crest factor 1.51
Flat factor 3.86
Pk count 96.9k
Bit-depth 1/24
Num samples 221k
Length s 5.000
Scale max 1.000000
Window s 0.050
Results 11 to 20 of 49
-
2015-11-17, 19:56 #11Transporter (modded) -> RG142 -> Avantgarde Acoustic based 500VA monoblocks -> Sommer SPK240 -> self-made speakers
-
2015-11-18, 01:22 #12
But that distortion would be at a level of less than 0.00001%. Do you think that is audible?
A valid question, as you wrote, is can you hear it? I'm trying to side-step that because I don't want to create an argument here. For me, it's enough to know it's technically better and I can have it for free ..."To try to judge the real from the false will always be hard. In this fast-growing art of 'high fidelity' the quackery will bear a solid gilt edge that will fool many people" - Paul W Klipsch, 1953
-
2015-11-18, 01:30 #13
- Join Date
- Mar 2007
- Location
- UK
- Posts
- 1,304
Wombat, without looking into it further, the result seems to be in the right ball park. The 24th bit probably equates to -144db or so from peak signal.
Bear in mind, though, with digital volume control the signal itself moves down in level so then relatively this distortion could be -100db from peak level.
But the technically correct way to reduce volume is with dither - whether the effects are audible or not. If it's free then why not.
Darren
-
2015-11-18, 01:37 #14
- Join Date
- Mar 2007
- Location
- UK
- Posts
- 1,304
Hi Julf,
A quibble: it can be much higher if you're attenuating digitally.
True.
When it comes to technical improvement, I try to avoid "analysis paralysis".
There is a sea of people saying this or that is or is not audible. But ... the technically correct way to do volume control is with dither ... so I do it.
It would be nice if the track got a seek (and convert.conf got re-tokenised) on every volume change. Not impossible but I wouldn't be surprised if it would involve many more changes, as I said I'm busy. That would take away any remaining "cost". I'm happy for someone else to step in with coding.
DarrenLast edited by darrenyeats; 2015-11-18 at 02:09.
-
2015-11-18, 05:22 #15
- Join Date
- Apr 2005
- Location
- Watford, UK
- Posts
- 1,927
True, if the attenuations you are performing are entirely arbitrary.
But in the context of 16 bit sources and Squeezebox players, the firmware is carefully arranged to attenuate by discrete steps such that there is no truncation until you get down to around -35dB or so. (I know that you already understand this). To add dither in this case would actually provide a technically inferior result.
And might I suggest that the most common real-world scenario is playback of 16 bit sources with less than 35dB of attenuation? So in practical terms, adding dither to a Squeezebox system is actually making things worse - not that it will be audibly different, of course.Transporter -> ATC SCM100A
-
2015-11-18, 05:55 #16
- Join Date
- Mar 2007
- Location
- UK
- Posts
- 1,304
Clive, it's below -30dB (volume 40) where it becomes bit imperfect with 16 bit data. And I regularly listen at less than this level. Also I have 24 bit recordings for which it's always bit imperfect.
A usable range and being source-agnostic are reasonable things for which to ask. This is why the correct way to do digital volume control is with dither.
DarrenLast edited by darrenyeats; 2015-11-18 at 14:52.
-
2015-11-18, 07:22 #17
- Join Date
- Apr 2005
- Location
- Watford, UK
- Posts
- 1,927
I wasn't trying to diss your efforts - just pointing out that for the majority of typical users it's not really beneficial.
I think that your personal scenario (low level listening, lots of 24 bit sources) is quite unusual.
Slightly off topic: if you are routinely doing critical listening at levels below -30dB, could it be that your gain staging is out?
(I also sometimes put stuff on at very low levels in the background, but can't say that I ever *listen* at such levels. When I want to really enjoy my music, the volume on the Transporter is typically 80 or higher).Transporter -> ATC SCM100A
-
2015-11-18, 07:53 #18Transporter (modded) -> RG142 -> Avantgarde Acoustic based 500VA monoblocks -> Sommer SPK240 -> self-made speakers
-
2015-11-18, 11:56 #19
- Join Date
- Mar 2007
- Location
- UK
- Posts
- 1,304
Dither is still the correct way to do volume control ...! Because I want to play anything, over a usable volume range, without worrying about it.
I'll add something here. Though I accept you might live within the limits of the SB and Transporter volume controls, I'm not sure about the Touch ...!
I'm given to understand it's SqueezePlay that runs on the Touch, is this true? From what I've seen of the SqueezePlay code, it uses a two part scale where 0=-74db, 25=-37dB and 100=0db and volume steps divided equally in dB in each scale. You can see the first part ramps rapidly. This actually fits with my user experience with the Touch. Until someone can explain otherwise, (edit*) I think the Touch likely truncates at every volume level below 100, with 16 or 24 bit sources.
Darren
*Thanks Julf.Last edited by darrenyeats; 2015-11-18 at 15:33.
-
2015-11-18, 13:44 #20
It is not always the correct way. Dither adds noise. It should only be used under the right conditions, when we know the added noise is a smaller degradation than the truncation noise.
I have no confidence that the Touch is bit perfect at any volume level or any bit depth."To try to judge the real from the false will always be hard. In this fast-growing art of 'high fidelity' the quackery will bear a solid gilt edge that will fool many people" - Paul W Klipsch, 1953