| What is a VST plugin ? |
From the point of Cubase or any other VST host, a VST
plugin is a dynamic link library (dll) which exports one function called main.
This function creates an effect, represented by a record of type AEffect. The
record gives access to data and functions needed to use the effect.
For the developer of a plugin, it is also a dll which
exports a main function. It is also an AEffect record or an AudioEffect class,
depending on the choice he makes. The AudioEffect class is a wrapper around
the AEffect record. It makes it easier for the developer to add the functionality
he wants to give to the effect, without having to wonder about the things that
are the same for all plugins.
A VST plugin has two main features: it allows the host
to inquire about its parameters and have them
changed by the user, and it accepts audio data from the host, does something
to it and gives back the result. Optionally, it also provides its own editor
to edit its parameters. This way, the user can change the parameters in the
manner which is most appropriate.