The original VST 3 sdk can be found on
the Steinberg website, in the Support
> 3rd party developer section. Register there first, so you've got a
valid license to use the sdk.
Take a look at Yvan Grabit's page at ygrabit.steinberg.de
for the original C++ sdk and for the full documentation.
Before you use the VST sdk, you need to read and agree with the license
for the original sdk by Steinberg. It's included in the sdk zip file. If
you don't agree with it, don't make VST plugins!
Toby Fleischer has a Delphi VST template on his website (www.tobybear.de).
Delphi VST sdk 3.5.2 - download
- This is an incomplete translation of the VST 3 sdk. The interfaces are translated, but there are no implementations or examples. Let me know of any bugs
(there are probably a lot).
Delphi VST sdk 2.4.3 - Steinberg have asked me to remove the sdk from my website. Please see their website for the C++ VST 3 sdk instead or use the Delphi translation above.
(example) - DExample 1.16 - download
- This is a simple example of a plugin without an editor. As the version
indicates, it's for any 1.x version of the Delphi VST sdk. This example
is also included with the tutorial. The zip file includes the VST 1 sdk
files necessary to compile.
(example) Doubler 1.16 - download
- This example has it's own editor window. It's meant for any 1.x version
of the Delphi VST sdk and is also included in the tutorial. The zip file
includes the VST 1 sdk files necessary to compile.
(tutorial) - Creating a simple VST plugin - download
- For now, there's just one tutorial. I hope to add more tutorials (VST
2 effects, softsynths). If you have any ideas or would like to contribute,
just let me know. This tutorial tells you step by step how to create a VST
effect plugin (not a softsynth). It's based on the Delphi VST sdk version
1.x, but the explained techniques work for VST 2 plugins as well. There's
still some work to do here, but it should get you going at least. The tutorial
now also contains an explanation of programs.
How to compile a plugin (VST 1 and 2) - For making VST
plugins in C++Builder, first you need the VST sdk by Steinberg. It's available
from the Yvan Grabit's site (the link is at the top of the page).
The next thing you need to do is create a .def file (for example : myplugin.def).
This needs to contain at least the following lines:
EXPORTS main=_main
Borland compilers add an underscore
to function names, and this exports the main() function the way a VST
host expects it. For more information about .def files, see the C++Builder
help files.
This is not enough, though. If you're going to use any VCL element (anything
to do with forms or components), you have to take care your plugin doesn't
crash Cubase (or another VST host, for that matter). Here's how:
1. Include float.h.
2. In the constructor of your effect class, write
_control87(PC_64|MCW_EM,MCW_PC|MCW_EM);
That should do the trick.
There's a more detailed explanation of the problem here
if you want to know exactly why this is necessary.
There are some other issues about compiling plugins in C++Builder to work
with Cubase, but I'll get back to those when I have more time.
(example) VST4Borland - download
- This is an example plugin by Angus Hewlett (www.fxpansion.com).
It doesn't contain any of the VST sdk files, so you'll have to get those
yourself. You can possibly use this as a start for your own projects.