|Type / Tags||MIDI ProcessorJSFXRandomizer|
ReaJS 2.36+ (free from ReaPlugs) / REAPER 5+
The system requirements for either one those products will have to be fulfilled to be able to load this script in them.
Pitchbend Randomizer is a MIDI-only JSFX script that generates smooth random signals to manipulate pitchbends directly with them. The generated internal signals are calculated in the same way as the Random Smooth Signal script, but only done for pitchbends. Then, it adds them to the input pitchbend (or zero, if none). This allows you to change the incoming pitchbend and vary it randomly, but smoothly, in time. The other difference is that it also generates a different signal for each channel — they will not be the same, and each channel will have a different variation.
The purpose of this script is to add some subtle (or not so subtle) variations to pitchbends, or use them as a control signal for some other parameter by linking them. You can even go crazy with it, to simulate some insane pitch effects.
Please see Random Smooth Signal for more information on how the randomized signal is generated and how it looks like. Even though it is similar to it, this script operates fully in the MIDI domain, no audio signals are present whatsoever, not even internally. You don't have to worry about it, but the code can be quite messy because of this fact.
Lastly, please remember that the generated random smooth curve is randomly reset whenever there is a new note from an inactive channel, so there will be a discontinuity there. This is to give each brand new note that activates a given channel a different random variation and not carry over from a former note that already ended. Keeps it more natural and randomized. If you don't want this behavior, filter the notes before sending MIDI to this script, and merge them later with the pitchbends on the MIDI bus (after the script).