View Categories

VST Plugin Node

1 min read

The VST Plugin Node loads an external VST plugin to process audio or melody/MIDI, and wraps it within itself. You can also create it by dropping a plugin’s DLL/VST3/SO file into AudioNodes, which will automatically load the plugin within.

The VST Plugin Node can be used for whatever the loaded plugin can do. For example, if the plugin is an audio effect, it will typically have an audio input and an audio output, which will be represented as a regular audio input and output on the Node. For VSTi (VST instruments), it will typically have a MIDI input and an audio output.

The VST Plugin Node supports GUI-less plugins, by creating sliders on the properties panel automatically for each controllable plugin parameter.


Inputs

The VST Plugin Node automatically creates an audio input if the plugin supports it, and automatically creates a melody input if the plugin supports MIDI input.

Additionally, if the plugin has controllable plugin parameters, and you enabled automation on any of them, they’ll show up as control inputs, just like for any other Node.


Settings

If the plugin exposes controllable parameters, they each appear as a slider. You can enable automation on any of these.


Outputs

If the plugin supports audio output, the VST Plugin Node creates an audio output automatically. Most plugins support an audio output.


Technical Details

  • The VST Plugin Node supports 64-bit VST 3 plugins on Windows, MacOS, and Linux; support for 64-bit VST 2.4 plugins is available on Windows only
  • Plugins run in an isolated host process, which adds some latency but contains plugin crashes to that separate process, without bringing AudioNodes down with itself
    • An optional latency output is available if you need to sync with parallel processing lines
  • Paths to plugins are always kept as absolute paths (unlike e.g. audio files, which are referenced based on your project settings)
  • Some plugins define more channels than they actually use, and AudioNodes makes no assumptions about whether these unused channels should be considered or not, they are simply up to the plugin; to work around issues like this, a combination of a Channel Splitter Node and a Channel Merger Node can be used to customize channel layouts

Limitations & Known Issues

  • Some plugins may not load, and some may even crash AudioNodes — please let us know when this happens (note: if you experience load crashes with your project, try restarting AudioNodes with experimental features disabled)
  • Some plugins define programspresets, or banks — switching between these is not supported by Undo/Redo inside AudioNodes, and doing Undo/Redo will only affect plugin parameters