Page 2 of 2

Re: Logarithmic Volume Control (dB FS)

PostPosted: Fri May 22, 2015 8:29 am
by Nubeat7
yes, it has the advantage that the knobs itself could be synced and the value only needs to be scaled one time and not 2 times - one time inside the knob and one time before the presetprimitive to keep the range 0..1 for the presets which is required for vst plugins

i think if you want to scale inside the knob, the knob also requires a 0..1 output for the preset primitive and it should support different scaling settings in the properties to keep the knob multifunctional which would make it very comfortable

Re: Logarithmic Volume Control (dB FS)

PostPosted: Fri May 22, 2015 2:52 pm
by tulamide
To not confuse things: This control was meant as a convenience product, just like the stock modules. I wanted to offer a nice looking, scalable volume control that uses dB FS. So the inner workings were based on this. It all starts with angles, since it is a circular control. The angle is converted to a log'd 0-1 which is outputted. Straight forward.
With an external conversion module, I'd need to convert several times and keep the range in sync between both modules. I didn't see any advantage in this for such a convenience control. I can follow the thoughts however, when it comes to your own projects with dozens of knobs.

Also, I like the idea of a multifunctional control. One could go further and add different value displays according to the used value conversion. I see linear and dB FS. But what other would be meaningful? Quadratic and cubic interpolation? And what labels make sense on the display? 0%-100% for linear and dB for log, but what else? What scale label would represent quadratic or cubic?

Ideas and thoughts are very welcome!

Re: Logarithmic Volume Control (dB FS)

PostPosted: Fri May 22, 2015 2:56 pm
by djbrynte
Why not use knobman and make the values there? cant be to hard ;) will also save space in synth.

Re: Logarithmic Volume Control (dB FS)

PostPosted: Fri May 22, 2015 3:22 pm
by Nubeat7
tulamide wrote:Also, I like the idea of a multifunctional control. One could go further and add different value displays according to the used value conversion. I see linear and dB FS. But what other would be meaningful? Quadratic and cubic interpolation? And what labels make sense on the display? 0%-100% for linear and dB for log, but what else? What scale label would represent quadratic or cubic?


i would think about samples, milliseconds, seconds, hz, switchable between linear and useful logs depending on the range.... but this could also become an neverending story!? but maybe to include the most common cases like for volume, delays, filters, lfo's,...

Re: Logarithmic Volume Control (dB FS)

PostPosted: Fri May 22, 2015 4:51 pm
by tulamide
Nubeat7 wrote:i would think about samples, milliseconds, seconds, hz, switchable between linear and useful logs depending on the range.... but this could also become an neverending story!? but maybe to include the most common cases like for volume, delays, filters, lfo's,...

Sounds good. I'll wrap my head around this. Regarding quadratic and cubic: I thought about those, because they make it easy to define one (quadratic) or two (cubic) center values. Example: a smooth curve from 20 to 22050 Hz with the center being 8000 Hz (the curve will be different of course to one with another center frequency). You couldn't achieve this so easily with log or other calculations.

Re: Logarithmic Volume Control (dB FS)

PostPosted: Sat May 23, 2015 8:32 pm
by tulamide
While working on the multifunctional control will take some time, I updated this original to version 1.1, added preset management.

Follow the link in the first post.

Re: Logarithmic Volume Control (dB FS)

PostPosted: Wed May 27, 2015 12:51 pm
by tulamide
New version 1.11 is up. The sweep spot was misbehaving while resizing the view (I wonder why no one noticed it?)

Re: Logarithmic Volume Control (dB FS)

PostPosted: Thu Mar 04, 2021 7:19 pm
by pwesynthmaker
I just found this thread and was quite pleased with the subject matter it deals with and the advice given.
(1) VSTS are most stable when the 'float value' of a preset manager-variable mod is from 0-1 ...
(2) To maintain this prerequisite use 'outside of knob/slider' control scaling of for values =>0 to =<1 ...

Example: 'generic default' audio dB range for a knob is typically -60dB to +3dB ...
Use 'outside of knob/slider' min/max scaling of -60 to 3 (into 'abs prim' where necessary) sent to control output.
This will maintain the 'integrity' of the 0-1 'float readout' for preset management.
Absolutely fantabulous information!

When I downloaded this volume log .fsm and examined it while reading this dialog the above criteria became crystal clear.
I too, was searching for the means of converting from linear to db and vice versa:
x = 20*log10(n)
1/x = 10^(n/20)
I did build my own before I found this, although I am going to add the 'abs prim' ASAP.
Quite amusing is the fact that in the schematic the formula uses a 'divisor' of 0.5 instead of a 'multiplicand' of 20, which is what I did.
So ... when I opened it up it looked very familiar and then ... I pasted mine into the schematic for comparison and ... ha, ha! Potato, potato, tomato, tomato ... same difference? EXACTLY when i tested it for readout.
I also have a version I made which goes from linear to dB.


TIP: I recently modified the preset manager ... I simply made it easier to scale the GUI ... and I extracted the 'total preset' number edit box' so that it is visible and can be used to change preset quantity right on the face of the mod.
Then, after some input from other members (Spogg fired up some of my dormant neurons!) I added a 'range block' mod that prevents anything other than 1-128 from being sent to output ... the box might read whatever typed in to it ... but if is not a 'whole number' integer from 1-128 it will 'auto-switch' to default "1/1" at the output and is exactly what was needed.
Now FlowStoners can feel a little safer about having the preset manager quantum accessible to newbies and unexperienced users :)

P.S. To MyCo and others at the Alpha Slack site the test schematic zip file has two schems' ... one basic and the advanced version has the preset manager with the 'range block' and all superseded MGUI's updated.
The 'range block' mod is very simple with little CPU demand and can be easily inserted in the existing preset manager too. It has one each 'in/out' and the values can be changed for min/max if user desires.