-
-
Notifications
You must be signed in to change notification settings - Fork 552
Support for Logarithmic Volume setting #228
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Thanks @yonatan-mitmit, we're trying to figure out behind the scenes if we want this in the core app or as an add-on (which means we need to build up an add-on model). Bear with us. |
|
Sure thing.
An Addon model makes sense, please notice that the plugin model needs to be
pretty robust if you want to add something like this - it modifies the
mechanism that translate the visual slider element with the actual number
fed into the API call.
Best,
Yonatan
…On Sun, Jun 24, 2018 at 9:36 PM Rafael Rivera ***@***.***> wrote:
Thanks @yonatan-mitmit <https://github.com/yonatan-mitmit>, we're trying
to figure out behind the scenes if we want this in the core app or as an
add-on (which means we need to build up an add-on model). Bear with us.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#228 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/Ac6pfNPMm8A2WEWRgmXY4FJSYBwJiTTlks5t_9w7gaJpZM4UshzB>
|
|
Just an update: we reviewed this item and decided against incorporation into the core product. But we do think, as mentioned before, it'd make for a great add-on (as soon as such a framework exists). Thanks! |
|
@riverar |
|
|
|
Will dust off this PR and get it checked in. |
|
@yonatan-mitmit Hey there! Can we reuse your implementation here? |
|
Sure. |
|
@yonatan-mitmit Thanks! Am curious, did you have any similar audio mixer needs on the macOS side? What do you use over there? |
Not really, the need never quite arose again here. |
|
Btw, if you ever do want to integrate, the formulas can be simplified as By changing the base number (1000) you control how "aggressive" is the log curve. |
There's these two that I know of : |
|
Looks cool. Thanks! |
This comment was marked as resolved.
This comment was marked as resolved.
|
Added via fcb166f, thanks @yonatan-mitmit. If any tweaks are needed, feel free to PR or yell at me. To EarTrumpet users, this should light up in dev automatically in a few minutes. |
|
Hi, @riverar ! Thanks for such a lightning response. According to referred article:
Current implementation not fixes the problem but make it even more noticeable: slider make a huge loudness change in 80%-100% range and almost no loudness change in 0%-80% range. Maybe we should invert the formulae? Or have a way to change CURVE_FACTOR? |
|
Oh, sorry. I got it all wrong. By the way should |
|
@mkryuchkov Yeah I struggled with the aggressiveness of the curve too, and even thought it was backwards too. So don't feel bad, haha. I think we're currently using the x4 approximation documented here: I experimented with x3 and didn't see a big improvement so figured my brain is ruined by linear sliders and left it alone. Happy to make any recommended community changes here! EarTrumpet/EarTrumpet/Extensions/FloatExtensions.cs Lines 7 to 27 in fcb166f
|
|
@riverar I assume it depends on how loud my audio device goes. I'm used to "keep neighbors happy" sound level so never go upper 40-50 dB. Formulae presented is for 60 dB range.
Sooo, I guess it would be okay for most of the users. At least I get used to it already. The only thing I would be happy to have is to set scroll to change by 1 percent, not 2. Two percent make significant change for one step using logarithmic curve. P.S. Scroll on hover option is awesome! |
|
Maybe we can switch to the 50dB curve and if folks have louder needs, we can add configurability. |
|
Worth a try. Configurability sounds like perfect solution. // me becomes a fan of your app |
|
@mkryuchkov restart (dev) twice and you should pick up 2.2.2.35 |
Human perception of audio loudness is logarithmic and not linear, but the audio-volume curves in Windows don't sufficiently taper audio.
The result is that the perceived change in volume between 100%-90% is much smaller than 10%-20%. For most people this means that the volume sensitivity doesn't sound right. Motivation is explained here, though the default implementation doesn't sufficiently taper the audio
The patch adds a setting to switch the volume to use a logarithmic curve. Changes primarily in SettingService, AudioDevice, AudioDeviceSession and some Glue code in ViewModels.