After years of VST host development, I have decided to also have a look at the "other side of the VST SDK". I've written my first VST plugin, which is to be included with upcoming versions of OpenMPT. It's a MIDI Input and Output plugin and is supposed to replace VST2MID for OpenMPT users.
(Download link removed, as the plugin is officially part of the OpenMPT download package)
What's the point of making it an Input
and Output plugin?
- Several plugin instances can be opened at once to allow for multiple MIDI inputs.
- The incoming MIDI are only routed to the next chainged plugin.
Combining these two previous points, you can use the plugin to control another instrument plugin exclusively using the MIDI data from the MIDI plugin. Only the selected output plugin of the MIDI plugin will receive this input. At the same time, this also means that the MIDI events captured by this plugin cannot be recorded to the pattern editor.
You can set up plugin chains with several MIDI processing plugins to go crazy: How about sending the MIDI events captured by this plugin to an arpeggiator plugin, and then send the arpeggiated MIDI data generated by that plugin to another instance of the MIDI Input / Output plugin to control external gear that has no built-in arpeggiator? It’s up to you!
MIDI Input only works in recent test versions of OpenMPT, btw.