Binary of default JUCE VST3 plugin template fails to load on Windows 10


I am working on developing a VST3 plugin on Windows 10 using the JUCE framework. Everything is 64 bit. The default plugin template project’s VST3 output fails to load in Renoise 3.3.2 when placed inside of C:\Program Files\Common Files\VST3. My plugin also fails to load (which is why I’ve tested the basic JUCE template as well).

The plugins load successfully in all other DAWs I was able to test with:

  • JUCE’s AudioPluginHost
  • Ableton 10
  • Reaper 6.19
  • Tracktion Waveform 11.5

Steps to reproduce:

  1. Using JUCE’s Projucer create a new Project and choose Plugin → Basic
  2. Configure desired names, etc., but otherwise use default project values
  3. Open project and build in either Debug or Release mode
  4. Copy the binary .vst3 file to C:\Program Files\Common Files\VST3
  5. Open Renoise and ensure VST3 plugins are enabled; rescan as necessary

Expected results:
Plugin should appear in Renoise’s VST3 plugin list.

Actual results:
Plugin fails to load.

I looked at the log file and this seemed to be the relevant failure information during instantiation of the plugin:

Vst3Plugs: Failed to apply initial controller state to controller (not critical)

It says ‘not critical’ and then releases the plugin according to the log file. What is the controller state requirement Renoise is looking for to allow instantiation and consider the plugin valid?

Final thoughts:

So far, statistically speaking, the majority of other DAWs don’t seem to impose whatever this requirement is on a plugin before allowing it to load. This is an undesirable experience as a plugin developer, at least not knowing yet why such a basic plugin build should fail to load.

Thanks for any attention or help with this.

1 Like

This just means that the initial “Steinberg::Vst::IEditController::setComponentState” call fails, which may happen when there is no separate ComponentState class present (the controller and component interfaces are implemented in one object). Juce’s VST3 wrapper has no separate controller class so this is expected and quite likely isn’t the cause of an error.

I’ve quickly tested this here and the default “basic VST3 plugin” created by the Projucer loads up fine here (Windows 10, Juce 6.0.8). The template file I’ve tested is attached.

Please note that there are two places in Renoise where plugins can be loaded:

The default Juce plugin is an effect, so it can be loaded/found in the FX section only. Maybe you’ve looked in the wrong place for your plugin?

If this isn’t the problem, could you please attach the full Renoise log file as well? (961 Bytes)