Based upon MIDI Scaler (https://patchstorage.com/midi-scaler-v1-0/).
Used to scale incoming CC or note velocities.
E.g. to fade in or out a MIDI LFO. Or take randomized velocity levels and scale them to a range.
This variant works by setting the “Start” from which the scaled CC or Velocity will grow from. In a lot of situations you would want to have the LFO grow out from a central point, oscillating around that point. Think of increasing an LFO modulating the cutoff of a filter or applying vibrato. Without the LFO you have your static cutoff level or fixed pitch. When the LFO modulations come in, typically you want the LFO oscillating around that start point rather than moving only in one direction away from that point. See the first image above.
Of course there are other situations where you might want to have the LFO grow in a unipolar way. If, for example, you have your sound starting silent and then you want to bring in the level, but with tremolo. See the second image above.
Start – this sets the starting point from where the modulation will grow. E.g. if you’re controlling a filter that’s set to 85 (out of 0-127), you would set the Start to 85 so the modulation will grow out from that point. When the amount is 0, the CC or Velocity will be the same as the Start value.
Amount – this sets the scaling of the incoming modulation from 0 to 100%. This is the control you would mostly be playing with to fade in or out the data stream.
Bias – this sets how the modulation grows from the Start point. At 0 the modulation is bipolar, oscillating around the Start. At -1 it moves down from the Start. At 1 it moves up. Adjusting Bias means you can shift the modulation up or down without changing the amount of modulation.
The final, “Target” knob determines the CC to scale. Fully left turns OFF any scaling. Fully right scales note velocity rather than CC values
To get something like the first image you would set Start to 64, Bias to 0 and Amount to 0 and increase that Amount to 100% over time.
For the second image you would set Start to 0, Bias to 1 and Amount to 0 and increase that to 100% over time.