2008-08-06 229 views
19

我想编写从MIDI设备获取输入的C/C++程序。用于从USB MIDI设备读取MIDI信号的C/C++库

MIDI设备使用USB连接器连接到我的PC。

我正在寻找一个(C/C++实现的)库,我可以使用通过USB端口来读取从MIDI装置中的MIDI信号。

我很高兴操纵MIDI数据,一旦我得到它,我只是不想实施它的捕获代码。

我打算在Windows XP上使用Bloodshed Dev-C++ IDE编写我的代码。

回答

14

PortMidi是另一款开源的跨平台MIDI I/O库,值得一试。另一方面,如果您正在开发sysex类型的应用程序,那么直接使用Win32的工作很容易。

刚刚遇到另一个包含MIDI支持的开源跨平台框架:Juce

另外,我应该注意到,USB连接的MIDI设备没有什么特别之处。它仍将在Windows中作为MIDI设备呈现,您将使用标准MIDI API(mmsystem)与其进行通信。

[2014年7月]我对面RtMidi传来,看起来是一个不错的,简洁的,开源的跨平台的C++库。

1

查看开源项目LMMS。这是一个Linux音乐工作室,包括使用MIDI键盘和软件乐器的能力。如果您在名称中使用'midi'在source files中进行挖掘,则可能会找到您要查找的内容。

1

也许Jack源代码也可以帮助。这是Posix兼容系统的声音驱动程序,具有许多可能性并支持USB和Firewire音频设备。