XG MIDI文件格式

Eli*_*lie 5 midi

我有一个Yamaha MIDI吉他,当我播放使用XG MIDI标准编码的MIDI文件时,会导致吉他上的某些灯打开和关闭.我正在尝试确定导致这种情况的MIDI事件,以便我可以在不使用MIDI文件的情况下以编程方式发送相同的事件(我可以发送Note On(144)或Note Off(128)命令).

然而,虽然我能够找到MIDI协议的副本,但我找不到XG MIDI协议.有没有办法,除了尝试将所有可能的命令发送到设备,直到我找到适当的命令,以确定导致灯改变状态的MIDI事件是什么?或者有什么地方可以获得XG MIDI协议的副本?

yxk*_*yxk 3

维基百科:“1999 年,官方 GM [通用 MIDI]标准进行了更新,包括更多控制器、补丁、RPN 和 SysEx 消息,试图协调 Roland GS 和 Yamaha XG 的冲突和专有附加内容。” 这被称为通用 MIDI 2

我建议研究一下 Java ( javax.sound.midi ) 提供的功能(C# 似乎缺乏可靠的 MIDI 库)。阅读MetaMessageShortMessageSysexMessagePatch。据我了解,特殊的系统消息是通过SysexMessage发送的(照明数据可能在这里)。

如果您需要一些示例代码,请查看Java Sound Resources

我发现的其他链接: