


Though Steinberg pioneered VST plug-ins there are certain other plug-in standards such as AU, AXX or ASIO developed by other DAW companies.


A DAW plug-in needs to support the range of standards, e.g. Guitar Rig supports Stand-alone, VST, Audio Units, ASIO, Core Audio, WASAPI, AAX Native (Pro Tools 10 or higher) .


Plug-ins can provide a wide amount of additional software to a DAW environment. Most notably virtual instruments or effects, for a large plug-in forum visit www.kvraudio.com


VST plugins generally run within a digital audio workstation (DAW), to provide additional functionality, though a few standalone plugin hosts exist which support VST. Most VST plugins are either instruments (VSTi) or effects, although other categories exist—for example spectrum analyzers and various meters. VST plugins usually provide a custom graphical user interface that displays controls similar to physical switches and knobs on audio hardware. Some (often older) plugins rely on the host application for their user interface.



Virtual Studio Technology


VST plugins often have many controls, and therefore need a method of managing presets (sets of control settings). Steinberg Cubase VST introduced two file formats for storing presets: an FXP file stores a single preset, while an FXB file stores a whole bank of presets. These formats have since been adopted by many other VST hosts, although Cubase itself switched to a new system of preset management with Cubase 4.0. Many VST plugins have their own method of loading and saving presets, which do not necessarily use the standard FXP/FXB formats.

Programming languages


There are several ports available, such as a Delphi version by Frederic Vanmol, a Java version from the jVSTwRapper project at Sourceforge, and two .NET versions – Noise and VST.NET; this open source project also includes a framework that makes creating VST plugins easier and result in more structured code. VST .NET also provides support for writing managed host applications with a managed class that allows loading an unmanaged Plugin. A notable language supporting VST is Faust considering that it is especially made for making signal processing plugins, often producing code faster than hand-written C++.


A large number of commercial and open-source VST's are written using the Juce C++ framework instead of direct calls to the VST SDK, because this allows multi-format (VST, AudioUnit and Real Time AudioSuite) binaries to be built from a single codebase.