Questions tagged [vst]

VST (Virtual Studio Technology) is a standard created by Steinberg for audio plugins, which are libraries that can be loaded by a sequencer for synthesizing or processing audio.

The VST standard was introduced by Steinberg to expand sequencers to include third-party instruments and effects. Although other types of VST plugins exist, these are the two most commonly seen types. Instruments synthesize audio from MIDI events sent to them by the host (like a piano plugin, oscillator-based synthesizer, etc.), and effects process audio from a given input audio signal (like a distortion effect, equalizer, etc.).

VST plugins are dynamic libraries which communicate through the VST protocol with a host. On Windows, VST's are regular DLL's, and on Mac OS X they are dynamic library bundles with a .vst extension.

Programming VST effects is a great way to get started doing DSP work, since all of the complicated audio subsystem is handled by your sequencer, giving the programmer a simple entry point to where they can process data. Audio in VST plugins is floating-point and block-based, meaning that the plugin uses arrays of floating-point numbers, one for each channel.

Although VST's can be written in many languages, C++ is most commonly used, since performance is very important when processing realtime audio.

Unfortunately, the VST SDK is not exactly open-source, though it is free to download. To develop VST plugins (or hosts), one needs to create a developer account at Steinberg's website, and download the VST SDK from them directly. Redistribution of the VST SDK source code is not permitted under Steinberg's license.

There are two major branches of VST plugins commonly found these days: 2.4-compatible plugins, and VST3 plugins. The majority of plugins found in the market today use the 2.4 SDK, as the version 3 SDK is not backwards compatible with 2.4.

230 questions
0
votes
1 answer

How can I create a child window in VST 2.4?

I create ExampleEditor.h and ExampleEditor.cpp ExampleEditor::ExampleEditor(AudioEffect *effect) { effect->setEditor(this); }; bool ExampleEditor::open(void *ptr) { //This is it? return true; }; VST plugin file constructor i…
Sergey
  • 3
  • 2
0
votes
2 answers

Good tutorial available for XCode with VST3?

I am completely new to both the world of XCode and VST. Every tutorial I find deals with VST2.4 or earlier, when I really want to rork with VST3. I also currently have XCode 3.2.1 which doesn't have the Carbon framework which all other tutorials…
Slamice
  • 693
  • 1
  • 9
  • 25
0
votes
1 answer

VST2 interface dll entry points

I am building a VST2 plugin. I want to know when to create a plugin window: on loading the dll (in my case in InitInstance), or some other point (maybe AEffEditor::open)? I have subclassed AEffEditor. I am creating a window in InitInstance and…
user1288043
  • 181
  • 1
  • 3
  • 10
0
votes
2 answers

How to create VST plugin using MFC?

I already have an MFC gui standalone program. What should be done to make it a VST 2.x plugin? (It would a lot of rework if I use VSTGUI/win32/qt/etc - or is it possible/appropriate to use VSTGUI?) Which VST interfaces (gui and others) should I…
user1288043
  • 181
  • 1
  • 3
  • 10
0
votes
1 answer

Audio post-processing with VAMP, VST, or other plugin frameworks

I have an application which I would like to turn into a VAMP plugin for Sonic Visualiser, Audacity, and the like. I need the user to be able to select a section of audio, have the full audio and the selection limits sent to my app, and then have my…
Lukeclh
  • 231
  • 1
  • 5
0
votes
1 answer

Setting up VST Steinberg SDK on Windows

I need to write a basic VST plugin (2.4) in Visual C++. I Googled it, but what I found is lots of deprecated descriptions with dead links. Could anyone recommend me a good step by step guide which helps setting up the environment in Windows 7 (I…
fodma1
  • 3,485
  • 1
  • 29
  • 49
0
votes
0 answers

Statically linking dependencies using Visual Studio 2010

I have a VST plug-in which I have built on Windows using Visual Studio. It depends on two libraries (FFTW and Speex). I am able to link these to the project and it compiles - so far so good. However, the problem is that I cannot get the plug-in to…
Adam Stark
  • 422
  • 1
  • 5
  • 12
0
votes
0 answers

NullReferenceException with VST.NET C#

I've implemented a VST host that allows you to use any VST effect by loading a .dll file. I have a problem with removing of the plugin while running: When I press 'Play' button my ASIO callback function checks if there are active plugins, and if so…
Shafa95
  • 201
  • 2
  • 14
0
votes
0 answers

Naudio AsioOut convert from and to float (VST.NET)

I'm working on a project where i'm trying to get audio from a asio audio driver, convert the audio into the VST.Net float array (2 channel float array with values ranging from -1 to +1). What i'm doing for that is this: void…
MariusR
  • 1,534
  • 2
  • 11
  • 20
0
votes
0 answers

AccessViolationException with VST.NET and NAudio host application in C#

I'm trying to create a VSTstream class based on this thread: http://vstnet.codeplex.com/discussions/228692. To record and playback the sound I'm using the AsioOut object that gives me available to IntPtr[] buffers type in the callback function…
Shafa95
  • 201
  • 2
  • 14
0
votes
0 answers

Float conversion for JVST input/output data

I am trying to process audio using VST plugins load via JVST. Roughly speaking, what I am doing is the following: 1 open an audio input stream that takes a wav file 2 until the file is not finished 2.1 read a block of frames and store them as…
0
votes
1 answer

Compiling Autotalent v2 Issues with Xcode 5.0.1 and Mavericks

I've been struggling to get Auto Talent from Oli Larkin to compile for some time now. I'm pretty new to Xcode and that may be the issue, but either way I figured I'd see if anyone could help me. I'm trying to compile this in order to make a 64 bit…
Rob Sawyer
  • 2,163
  • 1
  • 24
  • 25
0
votes
1 answer

How to make OSX open the same bundle twice?

I have 2 bundles with the exact same contents, just copied them to a different folders and renamed appropriately (these are audio plugins to be specific). A host opens one bundle, that's correct, but then when it should open the second one, it…
Vojtěch Melda Meluzín
  • 1,117
  • 3
  • 11
  • 22
0
votes
1 answer

VST2.4 SDK Instrument click sound when a note ends and another starts

I have been working on my VST instrument in C++ for a while now and I'm having a problem with a loud click when a note ends where another starts. Actually the problem is there when a note ends too, but I've added a "fade out" algorithm eliminating…
Magnus
  • 379
  • 1
  • 15
0
votes
1 answer

iOS VST audio plugin support

As an Objective C developer, is there a library or another smart "easy" way to get VST plugins to run on iOS? (Please improve tagging if you have any suggesions. )
K. Kilian Lindberg
  • 2,918
  • 23
  • 30