Библиотека C / C++ для чтения MIDI-сигналов с USB-MIDI-устройства

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

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

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

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

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

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
29
0
26 220
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

Ознакомьтесь с проектом с открытым исходным кодом LMMS. Это музыкальная студия для Linux, которая позволяет использовать MIDI-клавиатуры с программными инструментами. Если вы покопаетесь в исходные файлы с «midi» в названии, вы, вероятно, найдете то, что ищете.

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

Ответ принят как подходящий

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

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

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

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

Только что посмотрел на PortMidi, нужен Java SDK, нет

Mi Po 07.05.2020 21:13

@MiPo Где ты это видишь? Похоже на кроссплатформенный C без каких-либо зависимостей от Java.

sean e 08.05.2020 03:29

Другие вопросы по теме