[Julien Claassen]
I've got a question about MIDI controller
handling in software. I heard, that
MIDI CCs 32-63 have special meaning, or are used as part of 14-bit controllers
or something. Now I have a synth, which submits those. I'm sure, that other
people might also have such devices and, that some software delas with them as
the maufactureres intended?
To know what the manufacturers intended, I guess you'd have to ask
them, or purchase the official MIDI spec from
midi.org (print copies
only!), hope it answers the question and hope that the manufacturer of
your synth read and implemented the same spec.
Alternatively, a viable approach that seems perfectly in spirit with
MIDI's old-style nature is to assume local state for the LSB/MSB pair
is always valid and casually update it with data right as it is
received, no matter which half.
(A possible refinement might update the LSB along with a freshly
received MSB: if the new MSB is lower than the stored state, set the
LSB to 7f and to 0 otherwise. This way, your complete value will not
jump back and forth if you receive a mix of MSB and LSB. You lose an
LSB worth of adjustment range if no LSB is ever transmitted though, so
to refine it further you might turn on this LSB interpolation only
after you actually receive one.)
Cheers, Tim