4

I'd like to know what role digital gain (volume) control has on logical and perceived quality. I do have knowledge about how audio is stored digitally but do not know how volume works beyond the fact that it relates to the magnitude or amplitude of the digital signal.

Some editing systems and players can apply a gain that boosts the signal level beyond 100%, assuming a lossless digital source and reasonable analogue amplifier levels, does artificially increasing digital signals beyond 100% have any effect on quality whatsoever? This is assuming of course that 100% requires no signal manipulation at all (I may be wrong here).

Please note that the question is only about digital volume and not analogue.

  • 1
    hi raheel, unfortunately this is a sound design forum and not a VLC forum. However if you are interested in digital audio in general than i can recommend this article: en.wikipedia.org/wiki/Clipping_(audio). And for more in depth reading check this: soundonsound.com/sos/sep13/articles/level-headed.htm – Arnoud Traa Mar 18 '14 at 17:16
  • @ArnoudTraa: Thank you for the articles. My question is not about VLC though. It has more to do with what role volume plays in the chain of converting a digital signal to an audible one. If you have any suggestions about how to improve the question, they would be welcome. – Raheel Khan Mar 18 '14 at 17:24
  • well to be honest, if you've read the article on digital clipping, you should know the answer. if you go over 100% in VLC or any other audio app, the audio will clip at a certain point, depending on source volume. this holds true regardless of the analogue conversion. – Arnoud Traa Mar 18 '14 at 18:02
3

First, lets start by clarifying that "volume" isn't a particularly technical concept. Most generally "volume" refers to SPL or sound pressure level which is the amount of pressure being exerted by sound waves and depends on the distance from a sound source.

Rather what we are talking about here is the impact of signal level. Within an analog system, the signal level is determined by the amplitude of the voltage. If the signal gets too strong, the analog circuitry can't handle it and distortion occurs.

For digital signals on the other hand, we aren't dealing with voltages, (well not directly) but rather 1s and 0s that describe samples of audio. Simplified a bit, each sample describes the voltage of the analog signal at the time the sample was taken. The maximum amplitude the system can support is assigned the maximum number and the minimum amplitude is assigned the minimum number.

This range is what is known as the dynamic range of the digital signal. Values directly in the middle are 0, values that approach 0 are as far negative as the range can cover and values near the maximum are as far positive as the digital file can describe.

So what is "increasing the volume"? Well, really this is increasing the gain. Gain is the amount of amplification done to the signal. With an analog signal, it involves increasing the amplitude of the signal and in digital it means moving the values further out away from the mid point.

If, for example, I had an audio file that could use values from -10 to 10, 0 would be the midpoint. If I doubled the signal level, values of 0 would stay the same, values of 3 would become 6, -3 would become -6, etc. But what happens when we hit a number like 7? Well, 7 doubled would be 14, but we only have the ability to represent up to 10.

Unless we also increased the bit depth of the audio file, we have no way to expand the preserve the signal and can only store a value of 10. This is what is known as clipping (because the value got to high and we had to clip the value to the maximum (or minimum) we could represent.

Clipping results in the production of square waves that don't sound natural and have lost information. It generally makes crackling and popping sounds because a speaker can't actually produce a square wave effectively.

It is worth noting however that this only occurs if you actually go beyond what the file can support. If, for example, the original file only ever went to -5 and 5, there would be no clipping and no loss of data from that.

That said, there is another issue we haven't talked about yet. Noise floor. In any system, there is a certain amount of noise. Noise is junk data that gets picked up and doesn't have any meaning. It is just random and not part of the signal. For good audio, you want a high signal to noise ratio (signal is loud, noise is quiet).

However, most system's have a noise floor below which signal can't be distinguished from noise. So let's say that the system that recorded our file in our previous example had a noise floor of 1. This means any signal quieter than -1 to 1 would not be distinguishable from background noise. When we apply our gain, we also increase the signal level of this noise, so now anything quieter than -2 to 2 is noise and the noise will be just as amplified as the sound we want is.

It does also offer some benefits down stream though. Say, for example, that are DAC (digital to analog converter) has a noise floor of 3. If we didn't apply any gain, we'd lose a lot of signal quality at the DAC because we'd only have the difference between 3 and 5 for meaningful signal since our signal was only going up to 5 at the loudest. If we applied a gain before hand however, our noise floor in the DAC would still be 3, but our maximum signal would be 10, giving us a much cleaner analog signal in the end.

So the short answer to your question is, digitally increasing signal level will result in clipping and square wave production if it causes the dynamic range of the file to be exceeded and will also result in a boosting of the noise floor of the signal. That said, it also helps avoid the noise floor of any devices down stream from the gain. In general, the rule is that you want the strongest digital signal you can have without clipping at any point, thus giving you the most space between the noise floor and the signal.

2

As far as digits are concerned, you can multiply by any "gain" you wish, as long as you do not overflow (-127 to 128 for 8 bit; -32676 to +32678 for 16bit audio; ±8.3x106 for 24bit audio, and up to ±1.7×1038 for 32bit floating point). However, there will be some rounding involved, and the fewer the bits the more the rounding error.

Note that whatever the format, in linear PCM, a peak at -6dB will still take half the maximum value in terms of numbers.

However, for (typically 16 bit) systems that utilise dithering to increase dynamic range and lower distortion, applying gain after dithering has taken place increases the deliberate noise injected at the floor to offset the quantisation errors, and may introduce new quantisation errors.

Once the noise floor is more audible, also with more quantisation errors (gain staging without sufficient resolution, leading to too much rounding errors) the clarity of the signal starts going down. This is, of course, assuming no clipping or other distortion has taken place yet. Hence DAWs and plugins internally working at 32, 40, 48, or 64bit PCM.

So far this is purely digital stuff. When the signal goes through the convertors you get into all sorts of non-linearity - from the DACs (none are perfect and the generally accepted wisdom is that hot is better as long as you don't clip), through the signal chain (some units are deliberately non-linear), to the amps and speakers (amp classes, but also speaker cone stiffness), and finally your ears (fletcher munson).

On the whole, if a system has sufficient resolution, from 24 bit and up, i wouldn't worry about gain, and only worry about headroom (digital won't go past 0dB), or source signal noise (it gets amplified as much as the signal). Sometimes your brain does the noise reduction work for you, but every person's threshold is different.. Makes the subject really exciting for me.

Theoretically, for best results, play at 0 gain everywhere. Source software -> system volume -> audio interface mixer. In practice, in a 24+ bit pipeline, you can look after your needs and pay no attention to the digits.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.