Hi I got a suggestion, make the volume controls be decibels. Use the same scrollbars, the maximum value should be 0 decibels, meaning that the voice comes out unaltered. The minimum value should be something like -100 decibels. This is the way that real world audio programs work, why not make audio control properly? I'v made a program to watch multiple videos with and i used this approach. My customer liked it very much. It's worth a try I think, it's not too hard to do. If needed I can provide the math to convert decibels to raw multipliers, I doubt it's needed though?
1% to 100% of your current speaker setting... which should tell you in decibels. PA has no control over how loud your speakers are set.
Because non-audio people don't think in decibels, and setting audio to zero as a maximum is unintuitive. The audio system (FMOD) controls audio volumes internally with decibel increments, so it is possible to do, but we certainly don't plan to.
1% to 100% So the first 100 -> 50 values are all wasted because your standard human can't sense a difference between them? Stereos have decibel controls and i don't hear people complaining that they can't make sense out of them. But if you think it's a bad idea, then don't do it. 1% to 100% makes no sense to me.
I can EASILY tell the difference between my music played through Windows MediaPlayer at 10% and 20%. I can also tell the difference between 80% and 90% What makes no sense to me is that you cannot. --- Percentage based volume control has been in so many games it boggles the mind that you'd have an issue with it.
What you said leads me to believe that there has been some misunderstanding, no human can tell if a sound volume is lowered by 1 db, not even you. Everyone hears it at 6, some might hear it a bit lower, but never 1 db. 90% -> 80% is 1 db 10% -> 20% is 6 db I don't doubt for a second that you can hear the later one. But I don't think that 90% is Sound pressure here, that would make these numbers not matter. Rather than using these irregular numbers, i would much rather see decibels. But that's just me. Maybe most people cannot make sense of decibels and such a slider from 1 to 100 is better. And with that I can agree. When I made my software, I offered both to the customer, he liked decibels as did I.
Why would you invent something new, deviating fom the standard set by 90% of computer applications or more? I get your point, but the vast majority of computer apps use a 0 to 100 scale, and the vast majority of users is used to it. Changing that doesnt provide any benefit under these circumstances.
That I think confirms it, it's not the output sound pressure level percentage you are controlling. But yeah, people have different preferences, mine seems to be of the minority in this case. When I made the two different versions to control the volume level, it was an additional 20 minutes of work. Figuring out which one is better takes more time. Having had a look at how people used my software, your standard user just looks for the volume control scrollbar and adjusts it. He really doesn't pay that much attention to what's going on with the numbers. The really important thing is that he can hear the change immediately. Which is missing from the menu, but I guess it will be implemented soon. Decibel based sound adjustment makes the whole length of the scrollbar meaningful, and thus is better in my opinion since it makes better use of screen space.
You seem to have some wrong information here. The sound pressure is not scaled linear internally. If so, you would have been right, but it's not. You can CLEARLY hear the difference if you set you volume slider from 100% to 90%.
I think these got resolved already. Try sliding the slider around an area of 30 units, back and forth from 0 -> 30 then 5 -> 35 then 10 -> 40 at lastly 70 -> 100 Notice how much bigger the difference between the lowest and loudest volume is. The difference decreases as the values get bigger, at least on my machine. My AKG 273 pro might not be top notch, but for this they should be sufficient. To have any sense, the difference should be the same. This can be achieved by using decibels behind the scenes. Doing things the same way always never improves anything.
I'd really like if someone from Uber would take a look at my suggestion here. What I suggest: Keep the visual as it is now, but use this to set the value to the sound system: const int c_min_dB_value = -100; const int c_ui_max_value = 100; const int c_ui_min_value = 1; float convertToRawMultiplier(int p_valueOnScreen) { if(p_valueOnScreen == c_ui_min_value) { // smallest value means off, decibels don't have off so this is a special case. return 0; } int decibels = (c_ui_max_value - p_valueOnScreen) / c_ui_max_value * c_min_dB_value; return pow(10, (decibels/20)); } Now what this does is illustrated in this graph, note that human hearing is linear to decibel values. https://dl.dropboxusercontent.com/u/18631661/graph.png Here's the spreadsheet: https://dl.dropboxusercontent.com/u/18631661/volume.ods