VST Extension
A VST plug-in is an audio processing component that is utilized within a host application.
With VST Extension, Switchboard SDK can act as a VST plug-in host allowing you to process your audio with a wide range of VST3 plug-ins. This extension runs VST3 plugins in a head-less manner and allows you to configure plug-in parameters directly via VSTProcessorNode
The VST Extension provides the following audio nodes for a Switchboard SDK audio graph:
Node | Description |
---|---|
VSTProcessorNode | A processor node that can load a 64-bit VST3 plug-in, configure its parameters and process audio through it. |
Usage
Initialize the extension
VSTExtension::initialize();
Load a plug-in
VSTProcessorNode vstProcessorNode;
vstProcessorNode.loadPlugin(absolutePathToPlugin);
Get list of all parameters of the loaded plug-in
auto parameters = vstProcessorNode.getPluginParameters();
for (const auto& parameter : parameters) {
std::cout <<
"parameter name: " << parameter.name << std::endl <<
"parameter id: " << parameter.id << std::endl <<
"parameter default value: " << parameter.defaultValue << std::endl;
}
Change value of a parameter
VST3 plug-in parameters have float values and range from 0.0 to 1.0. Each plug-in has different names and default values for its parameters set my the VST3 plug-in manufacturer.
We can call setPluginParameter
method to set the values.
Example
To configure OrilRiver reverb plugin
VSTProcessorNode vstProcessorNode;
vstProcessorNode.loadPlugin("/Library/Audio/Plug-Ins/VST3/OrilRiver.vst3");
vstProcessorNode.setPluginParameter("Room size", 1.0);
vstProcessorNode.setPluginParameter("Decay time ", 0.3);
Download SDK Extension
You can download this SDK extension from our Downloads Page.
Visit the page to access the latest version and start integrating it into your project!