Answered

Inconsistent Volume Increments in Android App

  • 28 March 2024
  • 2 replies
  • 24 views

  • Contributor I
  • 1 reply

Howdy folks - Love the Sonos S2 app but it’s had a bug for a while that has gotten on my nerves. 

With the Sonos S2 App open, you can use the physical hardware buttons on the phone to increment the volume. Every press on the up button increases volume of the selected group, every press on the down button decreases the volume of the selected group. This works fine! The trouble is the selection of the volume increment. 

When adjusting the volume from a volume of 1, up will increment by 1. 1 goes to 2, 2 goes to 3, etc.  Once the volume is above 10, it begins to increment by 2. 10 goes to 11, 11 goes to 13, 13 goes to 15, etc. Once the volume is above 20, it begins to increment by 4. 19 goes to 21, 21 goes to 25, 25 goes to 29, etc. 

It also works the same way for decrementing but I don’t think this is ideal behavior. 
It seems the logic is implement like this:
Volume 0-10 → increment is 1
Volume 11-20 → increment is 2
Volume 21+ → increment is 4

But that means the behavior is different for up and down. Example adjusting from volume 8 to 15 here:

Going up in volume:
8 - 9 - 10 - 11 - 13 - 15
Going down in volume:
15 - 13 - 11 - 9 - 8

If you notice, there are 5 presses to go to 15 but only 4 presses to go back to 8. One less press down to get back to 8 as it skips volume 10! Basically the behavior is not consistent at the increment change points. If the volume is set to 11 and the user presses down and then up, the user expects to be back at volume 11. But with the current behavior it would be at 10 instead.

With the current behavior pressing down and then up:
11 - 9 - 10

Suggested fix:
Implement two different increment calculations depending on whether the hardware up or down button was pressed.

Going up:
Current volume 0-11 → increment is 1
Current volume 12-22 → increment is 2
Current volume 23+ → increment is 4

Going down:
Current volume 0-12 → decrement is 1
Current volume 13-25 → decrement is 2
Current volume 26+ → decrement is 4


With this change implemented, the volume change behavior will be much more consistent.

Going up:
9 - 10 - 11 - 12 - 14 - 16 - 18 - 20 - 22 - 24 - 28 - 32
Going down:
32 - 28 - 24 - 22 - 20 - 18 - 16 - 14 - 12 - 11 - 10 - 9

Same number of presses!

Cheers,
ARH

icon

Best answer by Corry P 29 March 2024, 10:53

View original

2 replies

Userlevel 7
Badge +18

Hi @ARH 

Thanks for your post!

I can’t say that I ever noticed this before, but I do see what you’re getting at. It makes sense to have the increments change at different levels, but the behaviour is inconsistent between increasing and decreasing the volume.

I’ll report this as unwanted behaviour, but it may get turned into a feature request.

Thanks for flagging!

Userlevel 7
Badge +18

Hi @ARH 

I’ve been informed that the current behaviour is by design, as the volume ramping is based upon a curve. The inconsistency that you pointed out is a result of how the maths works out.

I've marked this thread as a feature request and it will be seen by the relevant teams for consideration. Keep the ideas coming!

Reply