Bug 8763 - Volume widget should have finer control
: Volume widget should have finer control
Status: RESOLVED FIXED
Product: Logitech Media Server
Classification: Unclassified
Component: Web Interface
: unspecified
: All Windows XP
: P3 enhancement with 14 votes (vote)
: 7.6.0
Assigned To: Michael Herger
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2008-07-17 00:20 UTC by Mike Cappella
Modified: 2010-12-02 00:58 UTC (History)
5 users (show)

See Also:
Category: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Mike Cappella 2008-07-17 00:20:57 UTC
feel the volume adjuster just doesn't quite have enough fine control.

I find that the jump between, say 50 and 60 to be too great, and I end up changing the volume manually to somewhere in between (usually about 1/2 way in between - doh!).

I was thinking that either a (pop-up) slider would be nice, or perhaps after clicking on the existing volume adjuster gadget, the arrow keys could move the volume by 1. Or perhaps there are better ways.

I realize there are probably not 100 volume levels, but there certainly are more than the 10 allowed via the web interface.

See also forum thread:
http://forums.slimdevices.com/showthread.php?t=49918
Comment 1 Michael Herger 2008-07-17 01:46:12 UTC
Some UI decision to take here: do we want to stick with the 11 level volume control? Is a popup the way to go? Maybe optional (click the current volume level to get finer control)?
Comment 2 Blackketter Dean 2008-07-17 04:25:19 UTC
We don't need to maintain 11 steps if the number isn't shown. (11 is a good joke but it's too obscure without the digits.)

I'm good with a slider with more control.
Comment 3 Michael Herger 2008-07-17 05:00:36 UTC
C'mon guys! This control has taken me _hours_ to implement the maths calculating the 11 steps :-).

I'll try to come up with a demo patch which will do this, so we can see what artwork we'll need to fit this into our layout.
Comment 4 Jim McAtee 2008-07-17 11:04:18 UTC
*** Bug 8614 has been marked as a duplicate of this bug. ***
Comment 5 Jim McAtee 2008-07-17 17:24:50 UTC
Can the volume level number be shown as a tooltip and on mouseover of the the slider control?

Another suggestion if the volume slider can be implemented: A mute button would be nice, where pressing the mute button a second time restores the previous volume level.
Comment 6 Michael Herger 2008-07-17 23:21:20 UTC
The mute request is covered by bug 562. Brian/Dean - should we consider this to be included with this change? We'd need some layout/artwork change too (at least a button icon).
Comment 7 Blackketter Dean 2008-07-22 05:17:03 UTC
Will consider post-7.2
Comment 8 Ben Klaas 2008-10-03 07:11:38 UTC
FYI, in Touch/Nokia770 there are + - buttons to the right of the volume bars on the Now Playing page that allow you to move the volume up/down by increments of 1. You might give that a look see...
Comment 9 Mike Cappella 2008-10-03 10:01:11 UTC
Thanks Ben.  That will be great.
Comment 10 Moonbase 2009-01-31 07:26:24 UTC
The main complaint I have about the "few" volume steps is that the volume change is very abrupt – it really lets you jump outta the chair if turning too loud :-)

Would there be any chance of somehow "sliding" smoothly to the new volume setting, maybe over .5 or 1 s?
Comment 11 yeswork 2009-06-03 07:56:46 UTC
I want more granular control, too.

egander has a great idea, "If it's not too late to make a suggestion, how about having the "speakers" at either end of the volume bar increment by +/- 1, and leave the bar gradients at 10. I'm hoping that might be a really quick fix / implementation." http://forums.slimdevices.com/showthread.php?t=63895
Comment 12 Sean Echevarria 2009-06-04 23:24:54 UTC
Good idea egander!  Thanks for posting that yeswork.

Here's a mod that fixes this for me:

Edit \Program Files\SqueezeCenter\server\HTML\EN\html\SqueezeJS\Base.js

at line 426 (of my version - a 7.3.3 nightly), is the definition for SetVolume:

		setVolume : function(amount, d){
			amount *= 10;
			if (d)
				amount = d + amount;
			this.playerControl(['mixer', 'volume', amount]);
		},


change it to this:

		setVolume : function(amount, d){
			if (d)
				amount = d + amount;
			else
				amount *= 10;
			this.playerControl(['mixer', 'volume', amount]);
		},


I might change it to this though - as ten steps might be too small - this makes it 5 steps intead:

		setVolume : function(amount, d){
			if (d)
				amount = d + (amount * 2);
			else
				amount *= 10;
			this.playerControl(['mixer', 'volume', amount]);
		},
Comment 13 Sean Echevarria 2009-06-04 23:27:57 UTC
yeah, 5 steps is the ticket:

		setVolume : function(amount, d){
			if (d)
				amount = d + (amount * 2);
			else
				amount *= 10;
			this.playerControl(['mixer', 'volume', amount]);
		},
Comment 14 Sean Echevarria 2009-06-04 23:31:39 UTC
I should note that I have not tested it with the controller - just the default web UI.
Comment 15 James Richardson 2009-10-07 12:52:54 UTC
*** Bug 14645 has been marked as a duplicate of this bug. ***
Comment 16 David 2009-10-07 13:06:51 UTC
(In reply to comment #15)
> *** Bug 14645 has been marked as a duplicate of this bug. ***

Will this work with the controller?
Comment 17 David 2009-10-07 15:04:42 UTC
(In reply to comment #15)
> *** Bug 14645 has been marked as a duplicate of this bug. ***

Will this work with the controller?
Comment 18 Sean Echevarria 2009-10-23 18:55:57 UTC
The default location of the file to edit has moved in 7.4.1.  It is now at:
F:\Program Files\Squeezebox\server\HTML\EN\html\SqueezeJS\Base.js

The setVolume function can be modified as before.

The mod has no effect on the controller.  The controller volume already steps one unit at a time (rather than 10 units as the web UI does).
Comment 19 Chris Owens 2010-02-02 15:08:18 UTC
Matt Weldon doesn't work for us any more.
Comment 20 Scott 2010-05-01 11:11:51 UTC
(In reply to comment #19)
> Matt Weldon doesn't work for us any more.

I had the same trouble but got it working.  I had to restart my server (WHS machine) and then purge the browser cache (force refresh even worked fine one time).  Not sure the server restart was needed, but it looks like the jscript will get stored by your browser (Firefox in my case).
Comment 21 Eric Anderson 2010-05-06 06:43:57 UTC
(In reply to comment #12)
> Good idea egander!  Thanks for posting that yeswork.
> 
> Here's a mod that fixes this for me:
> 
> Edit \Program Files\SqueezeCenter\server\HTML\EN\html\SqueezeJS\Base.js
> 
> at line 426 (of my version - a 7.3.3 nightly), is the definition for SetVolume:
> 
>         setVolume : function(amount, d){
>             amount *= 10;
>             if (d)
>                 amount = d + amount;
>             this.playerControl(['mixer', 'volume', amount]);
>         },
> 
> 
> change it to this:
> 
>         setVolume : function(amount, d){
>             if (d)
>                 amount = d + amount;
>             else
>                 amount *= 10;
>             this.playerControl(['mixer', 'volume', amount]);
>         },
> 
> 
> I might change it to this though - as ten steps might be too small - this makes
> it 5 steps intead:
> 
>         setVolume : function(amount, d){
>             if (d)
>                 amount = d + (amount * 2);
>             else
>                 amount *= 10;
>             this.playerControl(['mixer', 'volume', amount]);
>         },


Personally, I prefer the single step increments.  It's all about having more detailed granular control.  Nonetheless, thanks so much for your effort Sean.  Greatly appreciated.
Comment 22 SVN Bot 2010-05-20 07:45:00 UTC
 == Auto-comment from SVN commit #30802 to the slim repo by mherger ==
 == http://svn.slimdevices.com/slim?view=revision&revision=30802 ==

Fixed Bug: 8763
Description: allow finer volume control in the default web UI. Clicking the +/- buttons will use 50 increments, clicking the bar 11.
Comment 23 Jim McAtee 2010-08-01 19:24:50 UTC
Michael, can this enhancement be safely backported to 7.5?
Comment 24 Jim McAtee 2010-12-01 17:12:27 UTC
Since a 7.5.2 release looks eminent I'll ask again: Can this be backported?
Comment 25 SVN Bot 2010-12-02 00:58:32 UTC
 == Auto-comment from SVN commit #31568 to the slim repo by mherger ==
 == http://svn.slimdevices.com/slim?view=revision&revision=31568 ==

Bug: 8763
Description: allow for more granular volume control