Kill KRT
Kill KRT

Reputation: 1271

How to create a virtual MIDI device

I have to write an application (like a step sequencer or arpeggiator) that sends MIDI note to a generic DAW , so I think that only way to implement such thing is to create a virtual MIDI device that should be recognised as a MIDI input/output interface by the OS.

I was wondering if this could be developed using Portmidi or if I need something more complicated.

OS X support is a must, Linux and Windows support is a nice to have.

Upvotes: 9

Views: 13746

Answers (2)

Brad
Brad

Reputation: 163622

For Windows, check out the virtual MIDI driver written by Tobias Erichsen. While he hasn't published the API, if you e-mail him he will work something out with you. It's very simple to work with and allows creation of MIDI ports directly from your application.

Upvotes: 0

CL.
CL.

Reputation: 180310

Portmidi's design is based on the Windows MIDI API, which does not allow applications to create virtual ports (without installing a separate driver).

On OS X, you can create a virtual port with MIDISourceCreate; on Linux, by creating a port with the (SUBS_)READ/WRITE flags.

If you want to use a portable library, try RtMidi, which supports virtual ports on all platforms that have them.

Upvotes: 6

Related Questions