所以我有一个带有USB midi接口的小(音乐)键盘。我知道你可以编程到这个(许多程序通过USB接口接受来自midi设备的输入)但你在哪里开始编程midi设备?
理想情况下,我正在寻找一个独立于平台的api,通过Python或其他东西。
答案 0 :(得分:3)
如果您想实时与MIDI设备互动,最好的办法是使用现有的库。这项任务比第一次涉及事件的时间安排和日程安排时更复杂。
您可以查看PortMidi(PortMedia项目的一部分:http://portmedia.sourceforge.net/)或MidiShare(http://midishare.sourceforge.net/)。
当然你应该了解MIDI协议本身。网络上有很多简短的描述,您可以从MMA网站(监督MIDI标准的组织)http://www.midi.org/aboutmidi/tut_techomidi.php(或只是google for“midi protocol”)开始。
考虑到这些是非常高级别的描述,您可能想要购买更详细的书,例如“最大MIDI - C ++中的音乐应用程序”(http://www.amazon.com/Maximum-MIDI-Music-Applications-C/dp/1884777449)。这是一本旧书,解释了如何使用标准Windows API创建MIDI应用程序,但概念都在那里。