VSTHost
Nach oben / Up GMKbd MidiTrix MultiMID MIDIJoy VSTHost SAVIHost WBMan

 

Skins

VSTHost

Here's a little demonstrational Windows program I started in 2002 in order to understand the inner workings of VST plugins - VSTHost.

VSTHost - click for larger view!

It's a VST-compatible host that's capable of:

bulletloading VST effects (aka "plugins")
bulletparameterizing / editing them
bulletsound output for VSTis
bulletMIDI-input and -output
bulletloading / saving .fxb / .fxp files
bulletI/O through either Windows MME or ASIO drivers
bulletWave Player / Recorder
bulletMIDI Player

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.

Downloads

Current version: 1.57 - the usual tons of enhancements, bug fixes and internal changes
Attention: if you're upgrading from an earlier version, by all means read the documentation!

The following files are available for the current version:

  vsthostx86.zip the current VSTHost version for x86 (i.e., 32-bit code)
Runs on 32- and 64-bit-Windows versions from Windows 2000 up.
  vsthostw98.zip the current VSTHost version for Windows 98/ME/NT4.
Also runs on all later Windows versions, with slightly restricted capabilities.
dvsthostx86.zip Replacement package for VSTHost x86. This package contains only the main program for the current double-precision version of VSTHost.
This is the same program as above, just with the difference that all internal audio processing is realized with 64-bit double precision instead of 32-bit floating point variables; in my opinion this doesn't make much of a difference in quality (but hey, I'm no sales guy) and just reduces the throughput a bit, but if you use many double-precision capable PlugIns, it may be useful, since conversions from and to single precision format can be avoided.
  tvsthostx86.zip the current tracing VSTHost version for x86 (i.e., 32-bit code) - for debugging purposes only!
Runs on 32- and 64-bit-Windows versions from Windows 2000 up.
vsthostx64.zip the current VSTHost version for x64 (i.e., 64-bit code)
Attention: only runs on 64-bit Windows versions!
dvsthostx64.zip Replacement package for VSTHost x64. This package contains only the main program for the current double-precision version of VSTHost.
See dvsthostx86.zip above for details.
Attention: only runs on 64-bit Windows versions!
tvsthostx64.zip the current tracing VSTHost version for x64 (i.e., 64-bit code) - for debugging purposes only!
Attention: only runs on 64-bit Windows versions!
vsthost.pdf The current documentation for VSTHost
(included in all the above packets since V1.54)

Here you can find some VSTHost add-ons that have been created by ToyleY.

VSTHost Slavery Suite

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, 209K).
Current version: 1.07
new.gif (860 Byte) Comes in 32- and 64-bit versions

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:

CVSTHost

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...

CEffect

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.16r here.
Current version: VST 2.4 rev2 + ASIO 2.0 support, ASIO Channel selection, bug fix from V1.19-1.46

Since I've already been asked multiple times whether it's possible to donate for VSTHost, I've upgraded my PayPal-Account to make it possible. I don't insist on it... but, of course, it would be a pleasure for me :-)
Alternatively, very modern, there's also the possibility to send cryptocoins to the following addresses:
Bitcoin BTC: 3NWiREh5ZfDtE97QYHXvsmb2c9e7fwyXa3
Ethereum ETH: 0xA801aEa636735972236B4B6051C391ba9a5Aa6AB
Ripple XRP: rBUc3R5iATkbm7bzK3GCxGmDeffrbPWCnn
Verge XVG: D7SBKeVcb6NUSCcxwdyDT5S1N6rPVVYLAA
Auch in Deutsch erhältlich!

Last update: 04/03/21