2015-12-19 2 views
3

Мне нужно написать приложение (например, секвенсор шагов или арпеджиатор), который отправляет MIDI-ноту в общий DAW, поэтому я считаю, что единственный способ реализовать такую ​​вещь - создать виртуальное MIDI-устройство который должен быть распознан ОС в качестве интерфейса ввода/вывода MIDI.Как создать виртуальное MIDI-устройство

Мне было интересно, можно ли это разработать с помощью Portmidi или если мне нужно что-то более сложное.

Поддержка OS X - необходимость, поддержка Linux и Windows - это приятно иметь.

ответ

3

Дизайн Portmidi основан на интерфейсе Windows MIDI API, который не позволяет приложениям создавать виртуальные порты (без установки отдельного драйвера).

В OS X вы можете создать виртуальный порт с MIDISourceCreate; на Linux, создав порт с флагами (SUBS_) READ/WRITE.

Если вы хотите использовать переносимую библиотеку, попробуйте RtMidi, которая поддерживает виртуальные порты на всех платформах, имеющих их.

+0

в случае, если кто-то этого не знает, невозможно использовать rtMidi для создания виртуальных портов (я этого не сделал) – laggyluk

0

Для Windows, проверьте virtual MIDI driver written by Tobias Erichsen. Хотя он не опубликовал API, если вы его по электронной почте, он что-то сработает с вами. Это очень просто работать и позволяет создавать MIDI-порты непосредственно из вашего приложения.

Смежные вопросы