• Welcome to ASR. There are many reviews of audio hardware and expert members to help answer your questions. Click here to have your audio equipment measured for free!

Software volume control

westonlast

Member
Joined
Dec 23, 2024
Messages
7
Likes
2
I'm looking for a software volume control. Ideally I could adjust the volume of my Windows system by holding a key and using the mouse wheel. I'm looking for a software volume control that can smoothly change the volume without ladder effects.

Here's what I've tried:

Looks pretty:
1742160454299.png

In theory that one would be great. Problem is, at least with my VST host, foobar2000, the VST crashes when it gets too many inputs in a short time. Like holding the arrow keys to adjust the volume.

The second thing I've tried:

Couldn't get it to work at all. Tried all sorts of device settings and combinations. Just didn't do anything.

There's also this:

And this:

Come on... there's gotta be a better option for Equalizer APO or something. Before you ask, the volume control in Windows exhibits ladder effects when changing the volume.
 
ladder effects when changing the volume
Can you please elaborate? IMHO the images you showed don't make much sense. From a software point of view a volume change is a trivial multiplication operation: take the value of the sample, one sample, and multiple it by the volume level (0.0-1.0). Do this for each and every sample.
 
Since you're using foobar2000, why not use foobar2000 volume control?

I have been using foobar2000 builtin volume control for ages, works perfectly. (It's internal processing is in floating point.)

To have the tactile feel, I bought the FIIO KB1K (3 buttons & 1 knob) and it was very easy to integrate it with foobar2000 (using global keyboard shortcuts).
 
I think the problem is nobody understands what you want. What do you mean by "ladder effect"? Do you mean discrete volume steps, as in 61%, 62%, 63% ... and you want something in between like 61.1516%? If that is what you are after, I am not aware of such a volume control.
 
I think the problem is nobody understands what you want. What do you mean by "ladder effect"? Do you mean discrete volume steps, as in 61%, 62%, 63% ... and you want something in between like 61.1516%? If that is what you are after, I am not aware of such a volume control.
Looks like OP reads too much BS from snake oil salesmen.
 
Go foobar > Preferences > Keyboard Shortcuts and set whatever combination you like, wherever you like.
I don't use SW VC but I have set the mouse buttons to go forward, back, play, pause, whatever (my mouse has many buttons)

Don't need to load unneeded stuff, think of the pain of crashes, latency, etc.
 
You can also go to Advanced settings to set the volume steps at any value you like (1dB, 0.5dB, 0.05dB or any crazy value you want)
 

Attachments

  • zipper_gain_clicks.pdf
    60.6 KB · Views: 14
Guys, there is nothing weird or snake oil-y about this request, OP just gets bothered by this artifact.

I get what you're asking for and why (instantaneous changes in digital gain make clicking sounds) but unfortunately I'm not aware of a tool other than a full DAW that can bind a VST parameter to mouse wheel inside a host.

Well, this probably isn't the right solution, but FL Studio has mouse input and the ability to smooth inputs, so you could route all your audio through that. But this seems like using a bulldozer to shovel your sidewalk.
 
Guys, there is nothing weird or snake oil-y about this request, OP just gets bothered by this artifact.
1) The only "evidence" of this "artifact" is on that marketing page from the plugin's vendor. The OP had not demonstrated that their system indeed suffers from that phenomenon.
2) Even at that page, the description implies that the "artifact" in question might be observed when applying a fadeout effect to a recorded track in a DAW, and it does not say that the described behavior is invariably present when adjusting volume digitally during playback.
 
1) The only "evidence" of this "artifact" is on that marketing page from the plugin's vendor. The OP had not demonstrated that their system indeed suffers from that phenomenon.
2) Even at that page, the description implies that the "artifact" in question might be observed when applying a fadeout effect to a recorded track in a DAW, and it does not say that the described behavior is invariably present when adjusting volume digitally during playback.
I'm not sure if OP is actually bothered by this sound or just theoretically bothered, but there's nothing doubtful about the theory. Any instantaneous change in gain must create a burst of harmonics, because it creates a discontinuity in the waveform. It's not complicated to replicate the effect if you want to hear it yourself.

I think trying to solve this is interesting for its own sake, and I don't see OP proving hardship as a necessary step before thinking about solutions. I agree it's not something that bothers me or most people, nor do I personally think it's a serious issue, but different artifacts bother different people.
 
All gain changes in digital audio are "instantaneous". Some happen 44100 times per second, other 48000/s etc. :)
 
All gain changes in digital audio are "instantaneous". Some happen 44100 times per second, other 48000/s etc. :)
Indeed, but it's almost like those changes are fast enough and also filtered so as to not create unwanted artifacts in the audible band...
 
There's not much you can't do with AutoHotkey, I've been using it to mouse control volume on my PCs for years.

This script will control Windows master volume when scrolling your wheel over the taskbar. Just save it somewhere with ahk extension (i.e. mousevolume.ahk) and doubleclick after installing AHK, if needed create a shortcut in your startup folder. You can change stuff in the code, ChangeVolume does smaller increments when volume is below 20%, MouseIsOverBottom adjusts bottom area for wheeling (40 pixels) etc.

Note that this is for AHK v1.1 version, probably won't work with v2.0.

Code:
#SingleInstance
#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
#Warn  ; Enable warnings to assist with detecting common errors.
SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.

CoordMode, Mouse, Screen

BarX := ((A_ScreenWidth / 20) * 19) - 260
BarY := (A_ScreenHeight / 20) + 52
Volume_ProgressbarOpts = CW000000 CTFFFFFF CBAAAAAA x%BarX% y%BarY% w260 h52 B1 FS8 WM700 WS700 FM8 ZH12 ZY3 C11
Progress Hide %Volume_ProgressbarOpts%,,Volume,,Tahoma

#If MouseIsOverBottom()
   WheelUp::
      ChangeVolume("+")
      gosub, Volume_Show_OSD
      return
   WheelDown::
      ChangeVolume("-")
      gosub, Volume_Show_OSD
      return
#If

ChangeVolume(x)
{  SoundGet, vol, Master, Volume
   if (x = "+")
     nd := Round(vol) < 20 ? 2 : 5
   else
     nd := Round(vol) <= 20 ? 2 : 5
   nv = %x%%nd%
   SoundSet, nv, Master, Volume
   SoundSet, 0, Master, Mute
}

MouseIsOverBottom()
{  MouseGetPos,,y
   Return y > A_ScreenHeight - 40
}

Volume_Show_OSD:
  SoundGet, Volume, Master, Volume
  Progress % Volume := Round(Volume), %Volume% `%
  Progress Show
  SetTimer, Remove_Show_OSD, 500
return

Remove_Show_OSD:
  SetTimer, Remove_Show_OSD, Off
  Progress Hide %Volume_ProgressbarOpts%,,Volume,,Tahoma
return
 
Honestly, I didn't understand what this plugin does.
What would be the mechanism for generating distortions or noises during volume change?
Also, is it really a problem?
 
Back
Top Bottom