Spotify - normalization vs dynamic range compression

Page 2 - Seeking answers? Join the What HiFi community: the world's leading independent guide to buying and owning hi-fi and home entertainment products.

TrevC

Well-known member
unsleepable said:
TrevC said:
Setting the same volume level for all tracks means reducing the dynamic range. It's doing exactly what it's supposed to do. They would need to store the peak level for every track and apply attenuation appropriately according to that level, an impossible task. I think it works pretty well and they have it pretty much spot on. It's certainly better than that used on radio.

I think it's more complex than just storing the peak level for each track. And in my opinion, it's not only a perfectly possible task, but I also don't doubt for a second that that's actually how it's currently done.

The necessary information to normalise the volume must be sent along with each track, so that it's the player that normalises the audio. It would be pointless for the Spotify servers to do this on the fly, when there is so much CPU time available at their disposal in all the devices where their players are running. And it would be equally pointless to double their necessary storage space.

Furthermore, I can locally cache tracks for offline playback, and then enable or disable normalisation in settings and don't have to re-download all cached tracks, no?

Finally, we may understand differently normalisation and dynamic range reduction. I don't think they are really the same thing.

The only difference between the two are the time constants used. The volume levelling on Spotify uses a fairly long time constant when raising the gain, slightly shorter in reducing it, which works fine for most tracks but is caught out by longish periods of quiet music with a sudden crescendo, the beginning of Wish you were Here by Pink Floyd sounds pretty bad, for example. It's a bit like the old automatic level circuits in cassette recorders without level adjustment.. Audio compression or dynamic range reduction as used by radio stations like Radio 2 uses the shortest possible time constant that changes the levels instantly squashing the dynamic range to a few dBs. An extreme version of dynamic range crushing is used on AM radio, where audio processing units such as the Optimod reduce dynamic range to almost zero. Certain music sounds better with poor dynamic range IMO, old Motown records for example, but that might be because I always used to hear them that way. :O)
 

Vladimir

New member
Dec 26, 2013
220
7
0
Visit site
Untill this thread I had no idea there is such thing as a spotifile. *shok*

I use the free subscription at 160Kbps, so I don't bother and I have no playlists organized. I fail as a spotifile! *beee*
 

unsleepable

New member
Dec 25, 2013
6
0
0
Visit site
TrevC said:
The only difference between the two are the time constants used. The volume levelling on Spotify uses a fairly long time constant when raising the gain, slightly shorter in reducing it, which works fine for most tracks but is caught out by longish periods of quiet music with a sudden crescendo, the beginning of Wish you were Here by Pink Floyd sounds pretty bad, for example. It's a bit like the old automatic level circuits in cassette recorders without level adjustment.. Audio compression or dynamic range reduction as used by radio stations like Radio 2 uses the shortest possible time constant that changes the levels instantly squashing the dynamic range to a few dBs. An extreme version of dynamic range crushing is used on AM radio, where audio processing units such as the Optimod reduce dynamic range to almost zero. Certain music sounds better with poor dynamic range IMO, old Motown records for example, but that might be because I always used to hear them that way. :O)

What you describe seems like compression to me. I think the point of steve_1979 is precisely that normalisation could be done without recompressing music, just by modifying the intensity of the signal. This way, relative loudness within a track would remain constant, and its dynamic range would be preserved.
 

unsleepable

New member
Dec 25, 2013
6
0
0
Visit site
steve_1979 said:
Why would there be any need for extra storage space?

Whether you choose to listen to the music raw, normalised or dynamically compressed the same music file would still be used in all three cases.

I just said this as another point why it makes sense that it's the player the one doing the normalisation/compression, rather than the Spotify servers. If it was the Spotify servers doing it—which is not the case—, it would make more sense that they had a cache of preprocessed music rather than processing all of it on the fly.
 

TrevC

Well-known member
unsleepable said:
TrevC said:
The only difference between the two are the time constants used. The volume levelling on Spotify uses a fairly long time constant when raising the gain, slightly shorter in reducing it, which works fine for most tracks but is caught out by longish periods of quiet music with a sudden crescendo, the beginning of Wish you were Here by Pink Floyd sounds pretty bad, for example. It's a bit like the old automatic level circuits in cassette recorders without level adjustment.. Audio compression or dynamic range reduction as used by radio stations like Radio 2 uses the shortest possible time constant that changes the levels instantly squashing the dynamic range to a few dBs. An extreme version of dynamic range crushing is used on AM radio, where audio processing units such as the Optimod reduce dynamic range to almost zero. Certain music sounds better with poor dynamic range IMO, old Motown records for example, but that might be because I always used to hear them that way. :O)

What you describe seems like compression to me. I think the point of steve_1979 is precisely that normalisation could be done without recompressing music, just by modifying the intensity of the signal. This way, relative loudness within a track would remain constant, and its dynamic range would be preserved.

If very long time constants are used there won't be any audible compression, but the problem would be that it would take a fair while to turn up a quiet track after a loud one and vice versa. The volume equalizer that Spotify uses is a reasonable compromise in my opinion.
 

fr0g

New member
Jan 7, 2008
445
0
0
Visit site
unsleepable said:
Your proposition would make the most sense if Spotify decided to make available a premium service with uncompressed and hi-res music, definitely.

I would put big money on more than 99.9% of the population NOT being able to tell apart a track at 320 Kbps and a CD.

I would bet my entire worth on NOBODY being able to tell apart an HD track to a downsampled to CD quality version of the same. HD is a con.

Upshot... IMO, OGG at 320 Kbps is audibly equal to CD quality.
 

steve_1979

Well-known member
Jul 14, 2010
231
10
18,795
Visit site
unsleepable said:
steve_1979 said:
Why would there be any need for extra storage space?

Whether you choose to listen to the music raw, normalised or dynamically compressed the same music file would still be used in all three cases.

I just said this as another point why it makes sense that it's the player the one doing the normalisation/compression, rather than the Spotify servers. If it was the Spotify servers doing it—which is not the case—, it would make more sense that they had a cache of preprocessed music rather than processing all of it on the fly.

Ah I see. I misunderstood your original post. :)
 

Vladimir

New member
Dec 26, 2013
220
7
0
Visit site
fr0g said:
Upshot... IMO, OGG at 320 Kbps is audibly equal to CD quality.

I have trouble telling appart 192kbps VBR from CDs. I ripped most of my music at 192 VBR on my PC back in the days when 20GB HDD was considered big.
 

unsleepable

New member
Dec 25, 2013
6
0
0
Visit site
fr0g said:
unsleepable said:
Your proposition would make the most sense if Spotify decided to make available a premium service with uncompressed and hi-res music, definitely.

I would put big money on more than 99.9% of the population NOT being able to tell apart a track at 320 Kbps and a CD.

I would bet my entire worth on NOBODY being able to tell apart an HD track to a downsampled to CD quality version of the same. HD is a con.

Upshot... IMO, OGG at 320 Kbps is audibly equal to CD quality.

You are probably right—or maybe not; I wouldn't talk for everyone. But that doesn't matter.

The reason that in my opinion the feature that steve_1979 would like to have would make more sense in a audiophile Spotify version is not because of the difference in audio quality, but because the target audience, the intended user of the application, would be different—someone who might understand the differences between compression and normalisation, and may have a system that offers a better dynamic range.
 

steve_1979

Well-known member
Jul 14, 2010
231
10
18,795
Visit site
Vladimir said:
I have trouble telling appart 192kbps VBR from CDs.

Same here. 192kbps is the cut off point where I can't hear any difference between MP3 and lossless. That was a while ago though using the Neutron 5 speakers and the Westone UM3 earphones to do the comparisons.

I might give it another go using the DM5 speakers and the O2 DAC/amp and Senheiser HD700 headphones to see if I can tell any difference with these as they do have a fair bit more clarity than what my previous systems had.
 

steve_1979

Well-known member
Jul 14, 2010
231
10
18,795
Visit site
fr0g said:
I would put big money on more than 99.9% of the population NOT being able to tell apart a track at 320 Kbps and a CD.

I think a lot of people wrongly think they can hear a difference between the 320kbps Spotify stream and a CD because they don't have Spotify set up right to actually play a 320kbps audio stream. They get Spotify Premium and automatically think that they're getting the 320kbps audio stream but often this is not the case as there are a couple of things which need to be done before you get the full 320kbps.

Firstly you have to manually select the 'High quality steaming' tick box in the 'preferences' menu because it won't be checked by default. Secondly you need to delete the Spotify cache that's been saved on your hard drive because if you've previously listened to any music in 160kbps that is the version that will be saved in the cache and that's the version that Spotify will play even if you have the 'High quality streaming' option checked. Clicky
 

steve_1979

Well-known member
Jul 14, 2010
231
10
18,795
Visit site
unsleepable said:
The reason that in my opinion the feature that steve_1979 would like to have would make more sense in a audiophile Spotify version is not because of the difference in audio quality, but because the target audience, the intended user of the application, would be different—someone who might understand the differences between compression and normalisation, and may have a system that offers a better dynamic range.

IMO it stands to reason that anyone who has a hifi system with enough clarity to make it capable of resolving the extra detail that the 320kbps gives over 160kbps it will also be likely to have enough dynamic range playback ability to play the music without the need for any dynamic range compression to be added.

This is why I think it makes sense to use the normalisation method of volume equalisation for the 320kbps stream and the dynamic range compression method of volume equalisation for the 160kbps stream.
 

andyjm

New member
Jul 20, 2012
15
3
0
Visit site
steve_1979 said:
TrevC said:
Auto volume levelling is always going to be a compromise,

Not if the volume levels are set by normalisation rather than dynamic range compression.

Normalisation doesn't have any negative effect the sound quality like dynamic range compression does. That's the whole point of this thread.

Not strictly true. Dynamic range of the system is the ratio of loudest to quietest sound. On a digital linear PCM system that would be full scale (2^16) to 1 = 96dB.

Reducing volume by applying a linear scale factor can't reduce the smallest sound, but does reduce the loudest. Using a trite example, halving the volume would reduce the resolution of the system to 15 bits and the dynamic range by 6dB.
 

steve_1979

Well-known member
Jul 14, 2010
231
10
18,795
Visit site
andyjm said:
Not strictly true. Dynamic range of the system is the ratio of loudest to quietest sound. On a digital linear PCM system that would be full scale (2^16) to 1 = 96dB.

Reducing volume by applying a linear scale factor can't reduce the smallest sound, but does reduce the loudest. Using a trite example, halving the volume would reduce the resolution of the system to 15 bits and the dynamic range by 6dB.

I think you're getting hung up on the technical meaning of dynamic range in a purely engineering sense. Yes the very lowest sound will be lost as the noise floor is raised so yes in that sense the dynamic range is reduced a bit. However that's irrelevent because the very lowest noise is far too quiet to hear anyway so it won't make any difference to what you actually hear (unless you think you can something as quiet as <6dB). So yes I do agree that reducing the volume by using normalisation will raise the noise floor a little bit but it will still be far below what is actually audible.

However unlike with the normalisation method of lowering the maximum volume which will sound identical to the original just quieter, the dynamic range compression method (i.e. compressing the largest peaks down to the level of the medium sized peaks) is very easily noticable and it sounds awful.

Dynamic range compression of the largest peaks lowers the audible sound quality.

Normalisation does not.
 

TrevC

Well-known member
steve_1979 said:
unsleepable said:
The reason that in my opinion the feature that steve_1979 would like to have would make more sense in a audiophile Spotify version is not because of the difference in audio quality, but because the target audience, the intended user of the application, would be different—someone who might understand the differences between compression and normalisation, and may have a system that offers a better dynamic range.

IMO it stands to reason that anyone who has a hifi system with enough clarity to make it capable of resolving the extra detail that the 320kbps gives over 160kbps it will also be likely to have enough dynamic range playback ability to play the music without the need for any dynamic range compression to be added.

This is why I think it makes sense to use the normalisation method of volume equalisation for the 320kbps stream and the dynamic range compression method of volume equalisation for the 160kbps stream.

No, that doesn't make any sense at all, but never mind. :O)
 

fr0g

New member
Jan 7, 2008
445
0
0
Visit site
Vladimir said:
I have trouble telling appart 192kbps VBR from CDs. I ripped most of my music at 192 VBR on my PC back in the days when 20GB HDD was considered big.

Me either. I have ABX'd 128. I have never managed above that, including 160. If we are talking 160 VBR or higher, then there is even less chance. I believe that the 99.9% I mentioned earlier would still apply at 190 Kbps VBR.

(For those who do not know what VBR is, it means Variable Bit Rate - essentially some parts of tracks need more bits than others. Some are easy to compress...long, quiet, few notes/instruments, others...full orchestra at full tilt for example are hard to compress. So VBR at 190 Kbps compresses at an AVERAGE of 190. The quiet bits might be 128 Kbps, the loud complicated bits at 256 or more... A track averaging 190 VBR should be better than one simply encoded at 190...)

unsleepable said:
You are probably right—or maybe not; I wouldn't talk for everyone. But that doesn't matter.

The reason that in my opinion the feature that steve_1979 would like to have would make more sense in a audiophile Spotify version is not because of the difference in audio quality, but because the target audience, the intended user of the application, would be different—someone who might understand the differences between compression and normalisation, and may have a system that offers a better dynamic range.

That's a fair point.

But I guess where I stand, I would like to see the whole sham exposed rather than strengthening widely held but wholly inaccurate beliefs.
 

steve_1979

Well-known member
Jul 14, 2010
231
10
18,795
Visit site
TrevC said:
steve_1979 said:
IMO it stands to reason that anyone who has a hifi system with enough clarity to make it capable of resolving the extra detail that the 320kbps gives over 160kbps it will also be likely to have enough dynamic range playback ability to play the music without the need for any dynamic range compression to be added.

This is why I think it makes sense to use the normalisation method of volume equalisation for the 320kbps stream and the dynamic range compression method of volume equalisation for the 160kbps stream.

No, that doesn't make any sense at all, but never mind. :O)

I know what you mean and agree to a degree.

There are going to be systems that are powerful and loud enough to be able to come with the full dynamic range of music but don't have enough clarity to justify the 320kbps stream (some Logitech 2.1 computer speakers for example). Equally there will be some systems that have very good clarity but are massively underpowered and have very little dynamic range at medium to loud volume levels.

Personally I'd prefer to be able to select volume balancing by being given the choice of either normalisation or dynamic range compression. But as unsleepable said earlier in the thread this it likely to lead to confusion for the average user who wouldn't have a clue what normalisation or dynamic range mean.

That's why I think it may be a good compromise to have Spotify automatically normalise the 320kbps stream and dynamically compress the 160kbps stream whenever the 'Set the same volume for all tracks' is used. Although I do admit that the more I think about this the less I think that it would be a good idea to do it that way.
 

TrevC

Well-known member
steve_1979 said:
TrevC said:
steve_1979 said:
IMO it stands to reason that anyone who has a hifi system with enough clarity to make it capable of resolving the extra detail that the 320kbps gives over 160kbps it will also be likely to have enough dynamic range playback ability to play the music without the need for any dynamic range compression to be added.

This is why I think it makes sense to use the normalisation method of volume equalisation for the 320kbps stream and the dynamic range compression method of volume equalisation for the 160kbps stream.

No, that doesn't make any sense at all, but never mind. :O)

I know what you mean and agree to a degree.

There are going to be systems that are powerful and loud enough to be able to come with the full dynamic range of music but don't have enough clarity to justify the 320kbps stream (some Logitech 2.1 computer speakers for example). Equally there will be some systems that have very good clarity but are massively underpowered and have very little dynamic range at medium to loud volume levels.

Personally I'd prefer to be able to select volume balancing by being given the choice of either normalisation or dynamic range compression. But as unsleepable said earlier in the thread this it likely to lead to confusion for the average user who wouldn't have a clue what normalisation or dynamic range mean.

That's why I think it may be a good compromise to have Spotify automatically normalise the 320kbps stream and dynamically compress the 160kbps stream whenever the 'Set the same volume for all tracks' is used. Although I do admit that the more I think about this the less I think that it would be a good idea to do it that way.

The bitrates aren't really relevant. Whatever the bitrate it's the optimisation of the time constants in order to minimise the audibility of the automatic volume control that is the important thing.
 

drummerman

New member
Jan 18, 2008
540
4
0
Visit site
emperor's new clothes said:
Hmmm. Spotify. Buy a Ferrari then fill it's tank with paraffin.

Really?

For a tenner a month (what can you get for a ten quid these days) you get a huge record catalogue, no adverts, a good interface and very reasonable sound quality ...

Love it
 

emperor's new clothes

Well-known member
May 28, 2013
35
2
18,545
Visit site
I agree, I have tried it and it is excellent within it's limits on sound quality. I listen to internet radio at 192&320kbps streams and they can sound quite good too. But this is a suposedly a "HiFi" forum that endlessly debates often tiny improvements in their hardware, only to feed it a diet of compressed recordings. Regarding the "music" favoured by my daughters, it would make little difference as it has been compressed at source and delivered to the ipod generation with no regard for those who own proper HiFi. A SACD arrived today and I compared the CD layer on the fly. I feel sorry for those on here that insist that they can't hear the difference, because there clearly is one. An endless debate and ulimately futile. If anyone is interested, over on Sterophile.com there is an excellent technical report on the launch of Meridian's MQA. Perhaps renowned digital innovator, Mr Bob Stuart, has been wasting his time developing this exciting new approach to HiFi streaming.
 

TrevC

Well-known member
emperor's new clothes said:
I agree, I have tried it and it is excellent within it's limits on sound quality. I listen to internet radio at 192&320kbps streams and they can sound quite good too. But this is a suposedly a "HiFi" forum that endlessly debates often tiny improvements in their hardware, only to feed it a diet of compressed recordings. Regarding the "music" favoured by my daughters, it would make little difference as it has been compressed at source and delivered to the ipod generation with no regard for those who own proper HiFi. A SACD arrived today and I compared the CD layer on the fly. I feel sorry for those on here that insist that they can't hear the difference, because there clearly is one. An endless debate and ulimately futile. If anyone is interested, over on Sterophile.com there is an excellent technical report on the launch of Meridian's MQA. Perhaps renowned digital innovator, Mr Bob Stuart, has been wasting his time developing this exciting new approach to HiFi streaming.

Can you hear the difference between mains leads?
 

TrevC

Well-known member
steve_1979 said:
TrevC said:
it's the optimisation of the time constants in order to minimise the audibility of the automatic volume control that is the important thing.

Could you expand on that a bit please? :)

I'm talking about the amount of time it takes for the levels to be auto adjusted. For streaming like spotify with no overmodulation issues I favour a long time constant for both increasing and reducing the volume, which would preserve most of the dynamic range in the music. The downside is that a loud track would take a long time to go down and vice versa.
 

TRENDING THREADS

Latest posts