I struggled with how to write this because the subject's rather complicated and in the end decided to keep it simple. Heck, it's Sunday after all and we're supposed to be taking a day off.
Yesterday we covered analog volume controls and how they, by virtue of adding something into the signal path, are always going to make things worse: in fact, less is better with an analog volume control. The louder you turn it up, the better it'll sound because there's less to get in the way.
Digital volume controls are the same in this regard, but a whole other story. They add nothing to the signal path: instead they rearrange the digital numbers to achieve a lower volume. This is simple to understand if you remember that each loudness level in a PCM digital system is based on a number - that number representing the level of the output signal - with larger numbers louder and lower number softer. Change the number, change the volume. Simple.
So why isn't it a perfect system? Well, the first thing you learn in engineering is that there is rarely ever a free lunch - life's series of compromises designers choose with nothing being perfect. Remember the numbers I mentioned in a PCM system? The size of those numbers is a direct function of what we call the word length as well as the numbers of times we have to represent that word length every second. You've certainly heard of 16 bit, 20 bit, 24 bit? That's the length of the "word". The number of times per second we have to represent that word is the sample rate: 44,000, 88,000, 192,000 times a second.
So basically, when you use a digital volume control and lowering the original number to lower the volume you're losing bits in the bargain. But what does that really mean and who cares?
Here's the buzz word for the day: dynamic range. A 16 bit word can give you 96dB of dynamic range while a 24 bit word can do a whopping 144 dB! Remember, this is an exponential scale and the limit of human hearing is at about 16 bits on a good day. Here's something else to consider - your analog electronics aren't going to provide dynamic range that exceed 16 bits either.
So, let's put all this info together. When we turn a digital volume control down we're losing bits: 1 bit for every 6dB or half volume. Sounds pretty bad, right? Well, there's one more twist to add into the mix: upsampling DACS. Most modern DACS upsample the 16 bits to 32 bits and THEN perform the volume changes. So depending on how the DAC is designed, most of the volume changes you might experience are "free" for the usable volume ranges on 16 bit audio. For 24 bit audio you have a smaller "free" range to work with, but what you are losing is so low in volume anyway that even the best analog electronics and loudspeakers can't really reproduce it anyway.
Bottom line? If you can accept digital in the first place and remember that life's a compromise in audio engineering, a digital volume control can do as little damage to the signal as even the very best analog volume control. And if, as we've shown, the output stages are identical then which ever you choose you'll be ok if your designer's done his/her job correctly.
Tomorrow let's wrap up some tidbits.