slider16f — Creates a bank of 16 different MIDI control message numbers, filtered before output.
k1,...,k16 slider16f ichan, ictlnum1, imin1, imax1, init1, ifn1, \
icutoff1,..., ictlnum16, imin16, imax16, init16, ifn16, icutoff16
ichan -- MIDI channel (1-16)
ictlnum1 ... ictlnum16 -- MIDI control number (0-127)
imin1 ... imin16 -- minimum values for each controller
imax1 ... imax16 -- maximum values for each controller
init1 ... init16 -- initial value for each controller
ifn1 ... ifn16 -- function table for conversion for each controller
icutoff1 ... icutoff16 -- low-pass filter cutoff frequency for each controller
k1 ... k16 -- output values
slider16f is a bank of MIDI controllers, useful when using MIDI mixer such as Kawai MM-16 or others for changing whatever sound parameter in real-time. The raw MIDI control messages at the input port are converted to agree with iminN and imaxN, and an initial value can be set. Also, an optional non-interpolated function table with a custom translation curve is allowed, useful for enabling exponential response curves.
When no function table translation is required, set the ifnN value to 0, else set ifnN to a valid function table number. When table translation is enabled (i.e. setting ifnN value to a non-zero number referring to an already allocated function table), initN value should be set equal to iminN or imaxN value, else the initial output value will not be the same as specified in initN argument.
slider16f allows a bank of 16 different MIDI control message numbers. It filters the signal before output. This eliminates discontinuities due to the low resolution of the MIDI (7 bit). The cutoff frequency can be set separately for each controller (suggested range: .1 to 5 Hz).
As the input and output arguments are many, you can split the line using '\' (backslash) character (new in 3.47 version) to improve the readability. Using these opcodes is considerably more efficient than using the separate ones (ctrl7 and tonek) when more controllers are required.
Warning | |
---|---|
slider16f does not output the required initial value immediately, but only after some k-cycles because the filter slightly delays the output. |