Steinberg is promoting VST 3 and deprecating VST 2, and there’s been some unofficial discussion on the forum, but we wanted to let you know what that would mean for your active JUCE projects that use VST 2.
Here’s a summary of what we’re planning to change in JUCE, to give everyone a heads-up how it might affect your projects (spoiler: not very much!)
Step 1: add VST 3 and VST 2 headers to the develop branch (today)
We’ll push a new version of JUCE on the develop branch, in which:
- We remove our implementation of the VST2 interface headers
- We replace them with an embedded copy of the official Steinberg SDK files for VST 2 / VST 3
We believe that this solution will work better than the current situation using our headers. It means that as soon as you’ve pulled a copy of the JUCE repository, it will already contains everything you need to build VST plugins (both v2 and v3) with no other dependencies!
Step 2: push the VST 3 and VST 2 headers to master (27th June 2018)
Once we’ve tested the solution, we’ll push the change to the Master branch of the repository
Step 3: remove the VST 2 headers from the JUCE repo (October 2018)
Our embedded copy of the VST SDK will always be kept up-to-date to follow Steinberg’s changes, and in October we expect them to remove the VST2 sub-folder from it.
This will break “out-of-the-box” building of VST2 targets… However, if you’re a pre-existing VST2 licensee and have your own copy of those old VST2 SDK headers, the JUCE code that uses them will still keep working. It just means that you’ll need to tell your project where to find them so that it can carry on building as before.