Here's a little demonstrational Windows program I started in 2002 in order to understand the inner workings of VST plugins - VSTHost.
It's a VST-compatible host that's capable of:
While the program started mainly as an aid in understanding and debugging VST plugins, it has evolved into a quite capable program by now which can be really helpful in a keyboard artist's Live setup.
Since questions do occur from time to time, I've created a discussion forum for them.
Current version: 1.56 - the usual tons of enhancements, bug fixes and internal changes
The following files are available for the current version:
Here you can find some VSTHost add-ons that have been created by ToyleY.
It was just a little question in a forum... "Is there a way to route the output of vsthost to Kristal Audio engine? And without latency?" that triggered the addition of a slave mode to VSTHost. And since I got a rather bad taste of humor, it got the above title.
When started with the parameter /slave, VSTHost goes into Slave Mode and waits for a Master to control it. The first (and currently only) master is a VST(i) plugin that can be embedded into any VST Host program (even another instance of VSTHost), called Legree. It comes as an effect and as a VSTi, since there are hosts that accept only effects, hosts that only accept VSTis, and of course hosts that accept both.
You can download Legree
here (.zip file,
You can download the current documentation for the VSTHost Slavery Suite here (.pdf file, 171K).
Open Source Variant
Originally, I made VSTHost available including the complete source code. Since I had to find out that (parts of) it made their way into other people's programs, and that without even mentioning my contribution, the open source variant has been frozen. I continue to add bug fixes to the existing code base, but new features won't make their way into it any more. Starting with V1.16k, this program is released under the terms of the GNU Lesser GPL.
Anyway - the important part of the program is an implementation of a VST host in form of 2 classes:
This implements the audio callback needed by an effect plugin as a neatly encapsulated VST host class. This is practically platform-independent code. The few platform-specific things are encapsulated in...
This encapsulates a VST effect, as loaded by the VST host. This class isn't fully complete - since I don't have a Mac, I've only included the Windows code. If a kind MacIntosh programmer could fill out the few Mac-specific sections and send it to me it would be great and, of course, publicized here!
You can download the sources for V1.16q
here (.zip file, 285K).