Mackie Control 协议

什么是 Mackie Control 协议
Mackie Control 协议是由 Mackie 公司在 MIDI 协议的基础上设计的一套设备控制协议。该协议利用 MIDI 系统保留事件、音符开启/关闭事件、CC 事件、弯音轮事件以及通道压力事件传递控制信息。
不同 DAW 的 Mackie Control 协议实现有细微差别,本文档采用 Logic 标准。

系统保留事件功能对照表



音符事件功能对照表






CC 事件功能对照表


弯音轮事件功能参考
Mackie Control 使用 MIDI 弯音轮事件控制推子音量。
当 MIDI 通道号为 1:8 时,表示推子通道 1-8;当 MIDI 通道号为 9 时,表示主通道推子。
弯音事件值即为推子值。

通道压力事件功能参考
Mackie Control 使用 MIDI 通道压力事件控制电平表值。
电平表通道号 = 通道压力值 / 16 + 1.
当通道压力值 % 16 在 0 到 12 之间时,电平值 = (通道压力值 % 16) / 12 * 100%.
当通道压力值 % 16 等于 14 时,设置电平过载指示。
当通道压力值 % 16 等于 15 时,清除电平过载指示。

参考文档
mackie-control-monitor: https://github.com/tony-had/mackie-control-monitor
V2Mackie: https://github.com/versioduo/V2Mackie
tracktion_engine: https://github.com/Tracktion/tracktion_engine
mc_protocol_mappings: http://www.midibox.org/dokuwiki/doku.php?id=mc_protocol_mappings
Mackie Control MIDI Map: http://www.jjlee.com/qlab/Mackie%20Control%20MIDI%20Map.pdf

Github 仓库
https://github.com/Do-sth-sharp/libMackieControl