我用 CoreMIDI 构建了一个虚拟 MIDI 控制器,并希望为 ControlChange 导入制造商预设(即 cc 值、与 cc 编号关联的效果名称、预设名称等)。有没有一种简单的方法可以做到这一点,还是我需要对这些信息进行硬编码?我在 MMA 网站上找到了 MIDI 制造商 ID,这可以用来获取虚拟乐器中的特定数据吗?谢谢。
问问题
155 次
2 回答
1
MIDI 从未提供过一种自我描述的方式。
已经努力标准化 MIDI 参数集,例如General MIDI,以及供应商标准,例如Yamaha XG和Roland GS,但即使在来自同一供应商的乐器中,控制集也不一致。也许并不奇怪,至于这个工作,用于声音的样本数据也需要标准化 - 当然,这是乐器之间的区别。
倾向于发生的情况是,制造商以SYSEX
完全非标准化的方式大量使用控制功能(特别是在他们自己的产品中)。
构建任何类型的通用 MIDI 编辑器都需要您为要控制的每个设备创建一个映射表,以描述控件及其 MIDI 映射。您通常会在每个乐器的用户手册中找到包含数据的大量 MIDI 实现图表。
于 2013-01-11T15:01:58.973 回答
0
截至 2020 年,这可能最好通过 MIDI 能力查询来完成。参数调用可以通过 MIDI-CI 属性交换来完成。
于 2020-04-01T20:08:25.503 回答