Automation Tracks Generate Excessive Control Change Messages

Official support for: mutools.com
Post Reply New Topic
RELATED
PRODUCTS

Post

I recently set up some automation sub-tracks to generate control changes for a MIDI device. After drawing a few points and curves, and setting up my USB-to-MIDI cable, I was able to get the results I desired. However, I soon found that my actual MIDI note commands were getting swamped in the control change messages.

What I discovered is that curves and lines with slope (i.e., not horizontal or vertical) generate a ridiculous number of control change messages. I piped the output into a MIDI loopback app, which reported ~5000 bytes/second for 3 control change tracks. This equates to something like 700 updates per second. It explains why the USB-to-MIDI cable was choking.

Worse yet, some of the lines I drew looked horizontal and appeared to have the same value at both ends (within 0.1, which is as many digits as MuLab displays), but still generated hundreds of updates per second.

Since MIDI control change messages only have 127 possible levels (7 bits), it doesn't make sense to output a new control change message unless the output value has actually changed. In some of my tracks, it was the same value every time, for seconds on end.

The problem can be worked around in my application by ensuring that horizontal lines are truly the same value at each endpoint (via numerical entry), and by using a MIDI loopback application to overcome the speed of true electrical MIDI. Somehow, the receiving app (a lighting controller) hasn't balked at receiving 5000+ control changes per second during ramping. However, I'd like to be able to send control changes to actual MIDI devices eventually.

Thoughts?

Post

It's a known issue in M7. This will be improved in M8.

Post Reply

Return to “MuTools”