Skip to main content

Since I only found posts about this topic from a year ago or older, I wanted to check if there has been any progress for volume normalization when using a third party app (in my case Spotify).

The setting for it in the Spotify app is only applied on the device youre changing it on. Because those settings are not accessible in the Sonos app, there is no way to set it for my brand new Sonos setup (neither through Spotify nor Sonos).

The result is that the volume of the music varies frequently; often just slightly, but regularly its very noticeable. It happens often enough to degrade the user experience considerably.

Spotify offers average track volume information for every music file, that’s how the spotify app can normalise volumes.

Please confirm that the normalisation data is made available to Sonos via the cloud interface to Spotify.

 

It can’t be that hard to build that functionality into the sonos app.

The Sonos app doesn’t touch the stream. It’s a remote control. The functionality that's so ‘easy to build’ would have to go into all of the players.

Wait wait, on the one hand you want to make the claim that the spotify app is just a remote control, and doesn’t touch the stream, but on the other hand you also want to make the claim that the availability of the normalisation data matters to sonos? Have your cake and eat it too, much? So which is it?

Read again before diving into the cake. I said the Sonos app is just a remote control.

The stream interface is between the Sonos player and the service’s servers. That’s where normalisation metadata would have to be available.

 

It’s definitely possible - not sure if this is a new feature from spotify but average volume is available for any track, see https://developer.spotify.com/documentation/web-api/reference/#object-audiofeaturesobject

 

So, ratty, what you’re saying is that the Sonos player devs are not sufficiently talented to have the player use an API to get the loudness data from Spotify, as availability pointed out earlier in this very thread. Nice.


The stream interface is between the Sonos player and the service’s servers. That’s where normalisation metadata would have to be available.

So that means that the Spotify app on the phone can do this when it interfaces with the servers. Why then can Sonos not do the same? Technical or commercial reasons for not doing this?

Because for the Spotify app playing on the phone to do normalisation, the metadata has to be there on the servers? So something comes in the way of Sonos units not being able to use that information...


I have maintained for years that the sound level changes in playlists are far more damaging to the listening experience than any damage caused by lossy codecs. The marginal loss of quality via these codecs is something easily compensated by the human brain. But no amount of brain trickery will overcome sound level changes from one track to the next.

Unfortunately, Sonos has jumped on the bandwagon of the more bits and bytes in Hi Res audio instead of addressing the elephant in the room, especially where multi album playlists  played in shuffle mode are concerned.


All dealt with here: 

Spotify offers average track volume information for every music file, that’s how the spotify app can normalise volumes.

Please confirm that the normalisation data is made available to Sonos via the cloud interface to Spotify.

 

It can’t be that hard to build that functionality into the sonos app.

The Sonos app doesn’t touch the stream. It’s a remote control. The functionality that's so ‘easy to build’ would have to go into all of the players.

Wait wait, on the one hand you want to make the claim that the spotify app is just a remote control, and doesn’t touch the stream, but on the other hand you also want to make the claim that the availability of the normalisation data matters to sonos? Have your cake and eat it too, much? So which is it?

Read again before diving into the cake. I said the Sonos app is just a remote control.

The stream interface is between the Sonos player and the service’s servers. That’s where normalisation metadata would have to be available.

 

It’s definitely possible - not sure if this is a new feature from spotify but average volume is available for any track, see https://developer.spotify.com/documentation/web-api/reference/#object-audiofeaturesobject

 

So, ratty, what you’re saying is that the Sonos player devs are not sufficiently talented to have the player use an API to get the loudness data from Spotify, as availability pointed out earlier in this very thread. Nice.

 

That’s twice you’ve misrepresented my statements.


The stream interface is between the Sonos player and the service’s servers. That’s where normalisation metadata would have to be available.

So that means that the Spotify app on the phone can do this when it interfaces with the servers. Why then can Sonos not do the same? Technical or commercial reasons for not doing this?

 

No idea, but see here:

 


All dealt with here: 

Spotify offers average track volume information for every music file, that’s how the spotify app can normalise volumes.

Please confirm that the normalisation data is made available to Sonos via the cloud interface to Spotify.

 

It can’t be that hard to build that functionality into the sonos app.

The Sonos app doesn’t touch the stream. It’s a remote control. The functionality that's so ‘easy to build’ would have to go into all of the players.

Wait wait, on the one hand you want to make the claim that the spotify app is just a remote control, and doesn’t touch the stream, but on the other hand you also want to make the claim that the availability of the normalisation data matters to sonos? Have your cake and eat it too, much? So which is it?

Read again before diving into the cake. I said the Sonos app is just a remote control.

The stream interface is between the Sonos player and the service’s servers. That’s where normalisation metadata would have to be available.

 

It’s definitely possible - not sure if this is a new feature from spotify but average volume is available for any track, see https://developer.spotify.com/documentation/web-api/reference/#object-audiofeaturesobject

 

So, ratty, what you’re saying is that the Sonos player devs are not sufficiently talented to have the player use an API to get the loudness data from Spotify, as availability pointed out earlier in this very thread. Nice.

 

That’s twice you’ve misrepresented my statements.

To be fair, you haven’t exactly been charitable to the points I’ve been making either. Pointing out that the Sonos ‘app’ is just a remote control so that you can later on dodge what I’m very obviously saying about the player, on a reasonable interpretation, isn’t a great way to treat what I’ve been saying.


The stream interface is between the Sonos player and the service’s servers. That’s where normalisation metadata would have to be available.

So that means that the Spotify app on the phone can do this when it interfaces with the servers. Why then can Sonos not do the same? Technical or commercial reasons for not doing this?

 

No idea, but see here:

 

I just read that. What I still don't understand that if that be the case - that the data isn't available - how does the Spotify app on the phone pull off this trick when played on the phone...why would Spotify want to hide this data from others, if that is what they are doing.


I just read that. What I still don't understand that if that be the case - that the data isn't available - how does the Spotify app on the phone pull off this trick when played on the phone...why would Spotify want to hide this data from others, if that is what they are doing.

Should this question, and some of the others mentioned here too, perhaps be put to Spotify, rather than posted, in the hope that Sonos Staff will respond to them?

I think it’s highly unlikely that Sonos will mention what data/information their partners choose to supply them ..and Spotify are ‘perhaps’ slightly more likely to respond to these questions as it is their data source after all.

Sonos rarely, if ever, comment about something that is ‘owned/controlled’ by their partners.


 

Sonos rarely, if ever, comment about something that is ‘owned/controlled’ by their partners.

I call that passing on the buck every chance they get, under a convenient cover story.


 

Sonos rarely, if ever, comment about something that is ‘owned/controlled’ by their partners.

I call that passing on the buck every chance they get, under a convenient cover story.

Then we will perhaps have to ‘politely’ disagree, as the information/data needed to do this is clearly ‘owned’ by Spotify. It’s certainly the place to start at the very least to get the answers to these questions. Only if they do share the information required, do I see it relevant to begin to ask such questions here.

As @ratty said earlier “…Confirm that the normalisation data is made available to Sonos”. 


If the Sonos approach is to sit back and let the ownership of the quality of the listening experience of their customers pass to some one else…there is little more to say, unless one is a dyed in the wool defender of all that Sonos does.

And unlike Apple, it isn't as if Spotify has aspirations of selling hardware. 


If the Sonos approach is to sit back and let the ownership of the quality of the listening experience of their customers pass to some one else…there is little more to say, unless one is a dyed in the wool defender of all that Sonos does.

And unlike Apple, it isn't as if Spotify has aspirations of selling hardware. 

I don’t see how you can conclude a lack of updates from Sonos staff on a particular issue to mean that Sonos has no concern about the issue whatsoever.  Sonos certainly has a history of keeping things quite when they don’t have anything new to announce, don’t want to make a promise they can’t guarantee, or potentially risk throwing a partner company under the bus.   Of course, people will continue to assume silence = “don’t care” as that’s the default position when you don’t have better information to work on, and that’s a downside that Sonos communication strategy.  

Regardless of that, we do   know that Sonos has their own API they use for integrating streaming services with the Sonos player.  That has the benefit of presenting more consistent functionality on the speakers, a smaller footprint for API code, and streaming services don’t need to build out their own API. It also means that streaming vendors need to do the majority of the work for getting a stream working with features they want implemented, or that some unique features for a service can’t be implemented on Sonos (until they update the API, which could be a large undertaking, particularly if they need to build the logic to normalize the audio).  I am not saying normalization is a unique feature, just that it seems it’s not part of the Sonos API, and we don’t know of Spotify would send the data anyway.

Of course, Spotify could be an exception that uses the Spotify API instead of Sonos API, I don’t know.

The easy answer seems to me that Spotify could simply make the decision to add a setting with your Spotify account for normalized audio, to all players or just Sonos, and then only send normalized audio to Sonos speakers when a request is made.


If the Sonos approach is to sit back and let the ownership of the quality of the listening experience of their customers pass to some one else…there is little more to say, unless one is a dyed in the wool defender of all that Sonos does.

And unlike Apple, it isn't as if Spotify has aspirations of selling hardware. 

I’m not sure from a Sonos perspective it would help to drive hardware sales higher, so maybe from their viewpoint it’s a matter of priorities. I can’t say I’ve seen a huge demand for this feature online, in a similar vein to requests to enhance the Sonos EQ settings, perhaps? - I’m certainly not against this (or the EQ) feature request by the way, but I don’t see them as something that would make me want to perhaps buy more Sonos hardware… I’m sure it won’t affect those users like yourself on S1 systems anyway @Kumar, as such new features would likely be destined just for S2 hardware.


I’m sure it won’t affect those users like yourself on S1 systems anyway @Kumar, as such new features would likely be destined just for S2 hardware.

I don’t make a point of writing here only on what will benefit me; to my mind, that is a puerile approach.

But I take the point that people are more interested in the unscientific benefits of Hi Res audio, so this aspect almost certainly won’t get the attention it deserves, a loss to all Sonos users that care about the listening experience as opposed to those that chase bits and bytes.

I opened a thread here on this topic four years ago, and there was not one response:-). Had it been a thread on Hi Res, it would have been like a flower to bees.

https://en.community.sonos.com/wireless-speakers-228992/volume-normalisation-across-albums-sources-for-consistently-high-quality-sound-6764671

I am just as annoyed with Amazon on this subject - they do not offer this via Spotify Connect/Amazon Music Cast when it transfers the music stream to Echo devices. But at least one can give a volume up/down command quickly via voice as needed, although this is also an irritating thing to have to do. Instead, Amazon is chasing the HD nonsense, even by pulling the cheap stunt of calling CD format as HD. And which, I suspect, Sonos is copying.

But hopefully sometime in the future Amazon will equip Echo devices with this feature and it will be a simple and cheap matter then for me to get it on my Sonos set up by replacing the Echos that are wired in to it.

Without going to S2..:laughing: