Digital gain (headphone DAC/amplifier) - does it affect sound?
Sep 1, 2021 at 4:55 AM Thread Starter Post #1 of 6

joker97

100+ Head-Fier
Joined
May 3, 2012
Posts
128
Likes
11
So today I picked up an old Fiio E17 and compared the old ATH M50 vs the Audeze LCD 2 with Fazor.

Set up - Flac -> Laptop ->USB -> DAC/Amp (Fiio E17) -> Headphones

Anyway - I realised the gain was set at medium. No EQ on the Fiio - everything flat so as to not add any additional circuitry hopefully.

Then I realised - maybe it should be set at 0. Then I thought because it's a digital system maybe it should be at max.

But does it even make a difference if it's all digital? And if it does, which way of gain tweak would do what to the bass mids highs? "Volume" on laptop is 100%.
 
Last edited:
Sep 4, 2021 at 5:40 AM Post #3 of 6

gregorio

Headphoneus Supremus
Joined
Feb 14, 2008
Posts
4,125
Likes
2,244
But does it even make a difference if it's all digital?
Ah but it's not all digital, the amp section is analogue! The reason you haven't got many responses is because we don't know exactly what's going on inside the E17. As a general rule, you would probably want the gain set to 0, unless that requires you to have the volume higher than about 50-75% to drive your headphones at a reasonable level, in which case +6 would be a better choice. Bare in mind this is just an educated guess and could be wrong, although provided it's a decent device, it shouldn't make any audible difference as long as the 0 setting doesn't require too high a volume setting.

G
 
Sep 9, 2021 at 11:11 PM Post #4 of 6

theaudiologist1

100+ Head-Fier
Joined
Sep 23, 2019
Posts
223
Likes
26
Location
Uranus
Ah but it's not all digital, the amp section is analogue! The reason you haven't got many responses is because we don't know exactly what's going on inside the E17. As a general rule, you would probably want the gain set to 0, unless that requires you to have the volume higher than about 50-75% to drive your headphones at a reasonable level, in which case +6 would be a better choice. Bare in mind this is just an educated guess and could be wrong, although provided it's a decent device, it shouldn't make any audible difference as long as the 0 setting doesn't require too high a volume setting.

G
What's better: low gain max volume, or high gain low volume? My amp also has a mid gain but I never used it. My AMP's high gain is 2.5X or 7.5dB. What does that do?
 
Sep 17, 2021 at 6:14 AM Post #5 of 6

71 dB

Headphoneus Supremus
Joined
Sep 17, 2017
Posts
1,697
Likes
561
Location
Helsinki, Finland
What's better: low gain max volume, or high gain low volume?
In ideal World it doesn't matter, but in real World it might matter depending on the system. High gain + low volume is a better bet, because all noise induced after the gain stage will be amplified further less. However, high gain may distort strong signal in which case low gain + high volume might be better.

My amp also has a mid gain but I never used it. My AMP's high gain is 2.5X or 7.5dB. What does that do?
It makes the signal 2.5 times stronger. In decibels that is 20 * log10 (2.5) = 7.96 dB. That doesn't match the 7.5 dB, but maybe the gain is actually 2.4 in which case it is 7.60 dB (close enough).
 
Sep 17, 2021 at 8:30 AM Post #6 of 6

71 dB

Headphoneus Supremus
Joined
Sep 17, 2017
Posts
1,697
Likes
561
Location
Helsinki, Finland
About digital multiplication (and binary numbers for that matter...)

10 times an integer number adds a zero to the end: 10 * 134 = 1340. The original digits gets moved one "step" to the left. Similarly when we multiply a decimal number (say 3.14) by ten, the decimal point gets moved one "step" to the right (31.4) indicating the movement to the right in relation to the decimal point. Of course if a number is divided by 10, the movement happens to the opposite direction: 31.4 / 10 = 3.14 and 4000 / 10 = 400.

Multiplying by 100 means multiplying by 10 twice. So there are two "steps": 100 * 3.1415 = 10 * (10 * 3.1415) = 10 * 31.415 = 314.15.
Multiplying by a million (one and 6 zeros) means 6 steps etc.

This works, because we operated with 10-based number system. We have 10 digits from 0 to 9 to represent numbers. However, computers do not use 10-based numbers. They are based on "on/off" logic. Computers understand only two digits (bits): 0 (off) and 1 (on). For computers the number 0 is 0 and number 1 is 1, but they can't have 2! They have to "write" that number using zeros and ones. Because they operate in 2-based (binary) number system, moving the digits one "step" left means multiplying by 2. So, 10 means number 2. Binary number 100 means number 4, because number 1 has been multiplied by 2 twice. Binary number 111 means number 7, because it is 4+2+1 = 7.

So, multiplying by 2 is easy in digital systems: the zeros and ones are simply moved one step left! Multiplying by 32 is just as easy: Five steps instead of one, because 32 = 2*2*2*2*2. Multiplying a signal by 2 means +6.020599913... dB which is very near 6 dB.

If we divide by 2, the zeros and ones get moved to right, but the least significant bit at the right end can't move further right. What happens to it? It drops out. If it was 0, the number was "even" and dividing by two is easy. If it was 1, the number was "odd" and the result of dividing by 2 must by rounded up or down: 111 (7) divided by 2 is 11 (3) or 100 (4). This rounding error means distortion. If we apply ditter to the number to be divided by 2, the rounding errors get randomized so that they do not correlate with the signal: It becomes noise and the signal itself remains undistorted. Adding dither only if the number to be divided by 2 is odd means we statistically half the dither noise power (-3 dB), but we also add a mechanism for the dither to potentially correlate with the signal if the samples of the signal aren't statistically random in their evenness or oddness,. Pretty much all music should be random in this sense. If the signal is to be divided by 4 (-12 dB), statistically 75 % of the samples "need" dither so that the dither noise is 1.25 dB weaker than "full dither".

We see, that in digital systems with finite word length we can do multiplications and divisions at varying accuracy depending on how much the numbers are multiplied or divided by. Multiplication by any integer value can be made without any errors assuming there is no overflow: 13 times (+22.3 dB) a signal for example can be done with 100 % accuracy by adding copies of the signal multiplied by 8, 4 and 1 (original) because 8 + 4 + 1 = 13. This gives following gain options up to 20 dB:

+6.02 dB
+9.54 dB
+12.04 dB
+13.98 dB
+15.56 dB
+16.90 dB
+18.06 dB
+19.08 dB
+20.00 dB

Dividing the signal causes rounding errors that can be transformed into non-distorting noise by using dither. Dividing by an integer value N gives the opportunity to not apply dither noise for sample values divisible by N. This reduces the dither noise by 10*log10 (N/(N-1)) dB. Using this dither reduction strategy, the available gains (and dither noise levels ref full dither) are:

-6.02 dB (-3.01 dB)
-9.54 dB (-1.76 dB)
-12.04 dB (-1.25 dB)
-13.98 dB (-0.97 dB)
-15.56 dB (-0.79 dB)
-16.90 dB (-0.66´dB)
-18.06 dB (-0.58 dB)
-19.08 dB (-0.51 dB)
-20.00 dB (-0.46 dB)

Combining multiplication and division gives much more options: For example multiplying by 3 (+9.54 dB) and then dividing by 2 (-6.02 dB) gives the gain of 1.5 (+3.52 dB) assuming there is no overflow during the calculation (for example processing 24 bit audio in 32 bit floating point). The takeaway from this is that there are ways of doing digital gain "wiser" if one understands binary numbers, bit shifting and dither.
 

Users who are viewing this thread

Top