我有一个带有 USB MIDI 接口(interface)的声音处理器设备。除了设备的官方应用程序之外,我还想从我的电脑控制设备。但是我没有命令协议(protocol)描述。 在 usbmon 的帮助下,我可以设法将几个 USB 数据包转储到设备上。他们看着像是: 0x0B 0xB0 0x00 0x00 0x0C 0xC0 0x05 0x00
如果我从我的应用程序发送此命令,则设备将激活程序 5。
该协议(protocol)似乎是 MIDI,但如果我遵循它并尝试与设备的其他功能进行交互,我不会得到预期的结果。
因此,我正在寻求任何帮助以使其正常工作。例如,我需要学习如何选择效果或控制音量和其他参数。
问候, 德米特里
最佳答案
您将在 Universal Serial Bus Device Class Definition for MIDI Devices 中找到您需要的内容和 MIDI 规范。
您的示例由两个数据包组成,每个数据包包含一个 MIDI 事件。它们可以按如下方式解码:
cable: 0
event: control change
channel number: 0
controller number: 0 (bank select)
controller value: 0
cable: 0
event: program change
channel number: 0
program number: 5
关于c - USB MIDI协议(protocol)理解,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34383761/