On Thu, Jun 6, 2013 at 5:31 PM, Tim E. Real <termtech(a)rogers.com> wrote:
Lacking access to the full midi specs document, I
don't know
if this question is addressed. I've looked at manuals for products
which support them and searched the web but I don't see a clear
answer to my question:
Is it safe to assume that a product or app which allows
binding a *single* HW or GUI control to either 14-bit CC
or 14-bit (N)RPN, would *always* send the value LSB, even if
the LSB did not change but the MSB did, when the control moves?
Do the midi specs address this?
The specs do not address this. It is an error in the MIDI spec in my
opinion, and I discussed it with someone from the MMA several years ago and
they agreed with me. The spec should have ordered things differently OR
required that LSB and MSB are always sent. They did not. The existing spec
design is easy to implement in dedicated hardware but notably harder in
software run on a general purpose machine because you need to pick some
arbitrary timeout.
Every possible ordering/delivery sequence can be found in one or more
devices.