VST Plugin Synth and Efffect in one


#1

Several of my customers have asked to route host audio through my instrument plugin so they can use the effects without the oscillators.

I’m sure this question gets asked regularly but I could not find it using the search bar.

Is it possible for the VST format using the Projucer settings to function both as a instrument generating audio and at the same time an effect processing audio input, using the same compiled build of the plugin? Or does it have to be one or the other based on the “Is a Synth” checkbox.


#2

It really doesn’t depend on Projucer or even the VST SDK but of how DAWs interpret it. If “Is a Synth” is marked, some DAWs won’t show the plugin in the FX rack and if “Is a Synth” is not marked, some DAWs won’t show it in the Instrument List, so I’m afraid you will have to compile the same plugin twice with and without this flag with a different plugin ID and name.
And yes, this is one of the many things that make you feel stupid when you develop plugins, so you may want to start adding to your prayers “Oh DAW developers! Oh SDK lords! please have mercy on us…”


#3

If your code is decoupled enough you should be able to just make a plug-in with the effects lone, like NI does with FM8.


#4

Audiocat, Holy_City, thanks so much for responding so quickly. Ok, good to hear its not refused at the VST level.

I’ve had time to think about this since the original post and it really just depends on whether or not the host allows you to drag the plugin after another instrument in the chain.

Should be easy to try this and simply see if processBlock(buffer) contains audio, if so we’re home free.

I’ll report back so if others have the same question they will know.


#5

Given that you will compile the plugin twice already with or without the “is Synth” flag, I recommend you to use:

#ifndef JucePlugin_IsSynth
#define JucePlugin_IsSynth 0
#endif
#if JucePlugin_IsSynth== 0
//audio FX
#elseif
//instrument
#endif