Home About AC Updates AC Radio AC Blog AC Courses Forum
 
FAQ Profile Members Register Groups PM's Search Login/Out

Creating a VST Intrument

Last Thread | Next Thread  >


Post new topic Reply to topic

Forum Index > VST Instruments and Virtual Effects

Goto page 1, 2  Next


Author Thread
AUdIoCoUrSeS



Joined: 31 Oct 2002
Posts: 2014
Creating a VST Intrument  Reply with quote  

This thread is to be considered a "workshop" so we can fully explore the concept of building a VST instrument and/or VST effect suitable for plugging into your favourite VST compatible host, such as Cubase.

We will start the workshop off from the starting point of zero, i.e. we know nothing about this concept.

All opinions and suggestions will be very much appreciated and valid, we are seeking all your information sources regarding this topic, we intend to build this up to be a unique and informative resource.

I think to get the ball rolling we could ask the question of what exactly is a VST effect and what is the fundamental environment within which they operate?

Anyone like to get us going here?
_________________
It's all in the ears. - Learn the concepts not the software. Audio Courses is a way into the music business for you
Post Sun Jun 05, 2005 1:44 pm
 View user's profile Send private message Visit poster's website Yahoo Messenger ICQ Number
raykeefe
Newbie


Joined: 16 Sep 2002
Posts: 8
Location: Melbourne, Australia
VST Effects  Reply with quote  

Hi,

I have down some embedded software development before but not a streaming plug in for a PC.

Firstly, a VST effect accepts blocks of bytes from a host application, processes them and passes them back. There are different ways of handling this depending on the number of channels being handled (ie. mono, stereo, 5.1 ...). Parameters for the effect are adjusted using a user interface component. Important factors are low latency (doesn't delay the returned data for long) low CPU usage (so the machine doesn't grind to a halt and lose sync) and conformance to the design specifications for VST (so it works with lots of different hosts) and support for automation (so the host can alter parameters in real time (for multichannel automated mixdown).


Having never developed on of these before, I would start by getting the Steinberg VST developers SDK. Go to:
http://www.steinberg.de/Steinberg/Developers8b99.html?Langue_ID=2&loc=lMen1449

You will need to register with them to get the URL to download the developers kit. It provides all the instructions for how the module works and the interfaces (software calls) it must support.

I use Borland C++ Builder for my PC projects so I went to www.borland.com and logged in as a developer. This gave me access to the developer network resources. There wasn't much there on making a VST plug in using Borland C++ Builder.

A google search produced the following useful links:
http://www.u-he.com/vstsource/archive.php?classid=5#36
http://www.kvraudio.com/forum/viewtopic.php?t=30071
http://www.computermusic.co.uk/tutorial/diy1/3.asp

Better get back to work now. But that is a start.

Ray
_________________
Ray
Post Sun Jun 05, 2005 9:23 pm
 View user's profile Send private message

AUdIoCoUrSeS



Joined: 31 Oct 2002
Posts: 2014
Re: VST Effects  Reply with quote  

quote:
Originally posted by raykeefe
Hi,

I have down some embedded software development before but not a streaming plug in for a PC.

Firstly, a VST effect accepts blocks of bytes from a host application, processes them and passes them back. There are different ways of handling this depending on the number of channels being handled (ie. mono, stereo, 5.1 ...). Parameters for the effect are adjusted using a user interface component. Important factors are low latency (doesn't delay the returned data for long) low CPU usage (so the machine doesn't grind to a halt and lose sync) and conformance to the design specifications for VST (so it works with lots of different hosts) and support for automation (so the host can alter parameters in real time (for multichannel automated mixdown).


Having never developed on of these before, I would start by getting the Steinberg VST developers SDK. Go to:
http://www.steinberg.de/Steinberg/Developers8b99.html?Langue_ID=2&loc=lMen1449

You will need to register with them to get the URL to download the developers kit. It provides all the instructions for how the module works and the interfaces (software calls) it must support.

I use Borland C++ Builder for my PC projects so I went to www.borland.com and logged in as a developer. This gave me access to the developer network resources. There wasn't much there on making a VST plug in using Borland C++ Builder.

A google search produced the following useful links:
http://www.u-he.com/vstsource/archive.php?classid=5#36
http://www.kvraudio.com/forum/viewtopic.php?t=30071
http://www.computermusic.co.uk/tutorial/diy1/3.asp

Better get back to work now. But that is a start.

Ray


A cracking start there Ray, many thanks, this is a really good introduction to get us going.

I'm now wondering if we should actually have a pet project for us to follow as it gets built, is that something you would consider? Or anyone?
_________________
It's all in the ears. - Learn the concepts not the software. Audio Courses is a way into the music business for you
Post Mon Jun 06, 2005 1:27 pm
 View user's profile Send private message Visit poster's website Yahoo Messenger ICQ Number
AUdIoCoUrSeS



Joined: 31 Oct 2002
Posts: 2014
VST Categorisation  Reply with quote  

Checking out the Steinberg site reveals that in order to register for a VST licence you have to define your VST as belonging to one of the following categories:

    Effect ( general)
    Analysis ( e.g. phasescope )
    Mastering ( dedicated mastering) processors
    Spacializer ( e.g. panners )
    RoomFx ( e.g. delays and reverbs )
    SurroundFx ( dedicated surround ) processors
    Restoration ( e.g. noise-click removal)
    OfflineProcess ( e.g. resampling)
    Dynamics ( e.g. compressor llimiter)
    CreativeFX ( e.g. filter - ringmodulator - distortion)
    ---------------------------------------------------------
    Synth ( general)
    DrumModules ( synthesis or sampling)
    ClassicalInstruments ( e.g. grand piano physical models)
    Sampler
    CreativeModuls ( e.g. audio processed via MIDI Note On/Off)
    Other


Perhaps we should choose one, or look further into the complexities (construction) involved for each? I guess they will differ radically in the programming?
_________________
It's all in the ears. - Learn the concepts not the software. Audio Courses is a way into the music business for you
Post Mon Jun 06, 2005 1:49 pm
 View user's profile Send private message Visit poster's website Yahoo Messenger ICQ Number

wailingalleycat
Forum Manager


Joined: 07 Oct 2003
Posts: 694
Location: Jersey C.I (UK)
pet VST  Reply with quote  

I think a pet project is a cool idea, screenshots in here or on a seperate page on the site, possibly "beta" versions to download and we could all chip in with ideas.

Firstly someone needs to offer to take on the task, and we need to decide what we want our plug-in to do.

any suggestions?
_________________
If In Doubt...Hit It With a Hammer, If Still In Doubt... Find a Bigger Hammer.
Post Mon Jun 06, 2005 4:00 pm
 View user's profile Send private message Visit poster's website Yahoo Messenger MSN Messenger
AUdIoCoUrSeS



Joined: 31 Oct 2002
Posts: 2014
Re: pet VST  Reply with quote  

quote:
Originally posted by wailingalleycat
I think a pet project is a cool idea, screenshots in here or on a seperate page on the site, possibly "beta" versions to download and we could all chip in with ideas.

Firstly someone needs to offer to take on the task, and we need to decide what we want our plug-in to do.

any suggestions?


Well in terms of what it is to do I'd quite like our own Wah-Wah plug-in, with some interesting parameter tweaks.

I'm fairly keen to get working on this with a programmer.

Anyone else interested?
_________________
It's all in the ears. - Learn the concepts not the software. Audio Courses is a way into the music business for you
Post Wed Jun 22, 2005 8:37 am
 View user's profile Send private message Visit poster's website Yahoo Messenger ICQ Number

wailingalleycat
Forum Manager


Joined: 07 Oct 2003
Posts: 694
Location: Jersey C.I (UK)
pet wahwah  Reply with quote  

yup wah seems like a simple first attempt
_________________
If In Doubt...Hit It With a Hammer, If Still In Doubt... Find a Bigger Hammer.
Post Wed Jun 22, 2005 3:18 pm
 View user's profile Send private message Visit poster's website Yahoo Messenger MSN Messenger
wailingalleycat
Forum Manager


Joined: 07 Oct 2003
Posts: 694
Location: Jersey C.I (UK)
What is Wah-Wah  Reply with quote  

Firstly:
Wah Wah is either a bandpass filter or an overcoupled lowpass filter that exhibits a resonant peak just at its lowpass rolloff frequency. The resonant peak can be moved up and down in frequency by the player, and this makes for a striking emulation of the human voice making a "waaaah" tone, or its tonal inverse, "aaaooow".


_________________
If In Doubt...Hit It With a Hammer, If Still In Doubt... Find a Bigger Hammer.
Post Wed Jun 22, 2005 3:34 pm
 View user's profile Send private message Visit poster's website Yahoo Messenger MSN Messenger

AUdIoCoUrSeS



Joined: 31 Oct 2002
Posts: 2014
VST Registered  Reply with quote  

Good stuff wailing, so we have a moveable low-pass filter to build as a VST.

I popped along to Steinberg and registered the VST idea as the " Funky Humpa Wah " which gives the project an authorised code to use the VST technology for development.

The next step was to download the development pack which provides the following files:

VST_Licensing_Agreement.html
VSTLogoArtwork.sea.hqx
VSTLogoArtwork.zip
VST_Logo_Usage_Guideline.pdf
VST_Licensing_Agreement.rtf
vstsdk2.3.dmg
vstsdk2.3.sit
vstsdk2.3.zip

I'll inform once I have understood these files.
_________________
It's all in the ears. - Learn the concepts not the software. Audio Courses is a way into the music business for you
Post Wed Jun 22, 2005 4:12 pm
 View user's profile Send private message Visit poster's website Yahoo Messenger ICQ Number

Post new topic Reply to topic
Forum Jump:
Jump to:  
Goto page 1, 2  Next
All times are GMT.
The time now is Fri May 16, 2008 11:21 am
  Display posts from previous:      

ACF + topic RSS feed 

Audio School © 2008 Audio Courses