2008-08-06 13 views
19

Я хочу написать программы на C/C++, которые берут ввод с MIDI-устройства.Библиотека C/C++ для чтения MIDI-сигналов с USB-устройства MIDI

Устройство MIDI подключается к компьютеру с помощью USB-разъема.

Я ищу (встроенную C/C++) библиотеку, которую я могу использовать для чтения MIDI-сигналов с MIDI-устройства через USB-порт.

Я счастлив манипулировать данными MIDI, как только получаю, я просто не хочу реализовывать код для его захвата.

Я планирую написать свой код с помощью Bloodshed Dev-C++ IDE в Windows XP.

ответ

14

PortMidi - это еще одна кросс-платформенная библиотека ввода-вывода с открытым исходным кодом, которую стоит проверить. С другой стороны, если вы работаете с типом приложения sysex, то прямая Win32 работает достаточно легко.

Просто наткнулся на другую кроссплатформенную платформу с открытым исходным кодом, которая включает поддержку MIDI: Juce.

Кроме того, я должен отметить, что нет ничего особенного в подключенном к USB-устройстве MIDI. Он по-прежнему будет представлен как MIDI-устройство в Windows, и вы будете использовать стандартные MIDI API (mmsystem) для связи с ним.

[July 2014] Я только что наткнулся на RtMidi, который выглядит как хорошая компактная кросс-платформенная библиотека C++ с открытым исходным кодом.

1

Проверьте проект с открытым кодом LMMS. Это музыкальная студия для Linux, которая включает в себя возможность использования MIDI-клавиатур с программными инструментами. Если вы копаете в source files с «midi» в названии, вы, вероятно, найдете то, что ищете.

1

Возможно, исходный код Jack тоже может помочь. Это звуковой драйвер для совместимых с Posix систем с множеством возможностей и поддерживает аудиоустройства USB и Firewire.