1

我用 CoreMIDI 构建了一个虚拟 MIDI 控制器,并希望为 ControlChange 导入制造商预设(即 cc 值、与 cc 编号关联的效果名称、预设名称等)。有没有一种简单的方法可以做到这一点,还是我需要对这些信息进行硬编码?我在 MMA 网站上找到了 MIDI 制造商 ID,这可以用来获取虚拟乐器中的特定数据吗?谢谢。

4

2 回答 2

1

MIDI 从未提供过一种自我描述的方式。

已经努力标准化 MIDI 参数集,例如General MIDI,以及供应商标准,例如Yamaha XGRoland GS,但即使在来自同一供应商的乐器中,控制集也不一致。也许并不奇怪,至于这个工作,用于声音的样本数据也需要标准化 - 当然,这是乐器之间的区别。

倾向于发生的情况是,制造商以SYSEX完全非标准化的方式大量使用控制功能(特别是在他们自己的产品中)。

构建任何类型的通用 MIDI 编辑器都需要您为要控制的每个设备创建一个映射表,以描述控件及其 MIDI 映射。您通常会在每个乐器的用户手册中找到包含数据的大量 MIDI 实现图表。

于 2013-01-11T15:01:58.973 回答
0

截至 2020 年,这可能最好通过 MIDI 能力查询来完成。参数调用可以通过 MIDI-CI 属性交换来完成。

于 2020-04-01T20:08:25.503 回答