Just FYI, this isn’t true in all DAWs. For instance, in some configurations, Bitwig and Reaper run the VST in a separate process space altogether; or a separate process space with other VSTs with the same plugin ID; or a separate process space with other VSTs of the same manufacturer. Don’t know if that changes your plans at all, but figured I’d share (since I’ve just been through the experience of trying to get a single open source plugin running VST2, VST3, AU and (with help from the #lad folks) LV2 on mac, windows and linux in many daws).
Also, VST2 support for window resize is inconsistent, charitably, across DAWs. But each of AU and VST3 have their own problems too, I found. It’s all a bit messy to be honest…
Will the plugin-enablement code be GPL3 mixed license also?
Heya folks. FWIW, some brief thoughts relating to some of the points raised about JACK above;
The de facto method of session management for managing files relating to a project, given the “inverted DAW” nature of JACK, is (these days) the NSM API. I’d recommend the RaySession implementation as it’s robust and actively developed.
“CV” patching for parameter automation (formerly an LV2 feature) is now available in JACK2 via the port metadata feature, and there has been some adoption of the technology. More information can be found on this linuxmusicians.com post. There are certainly rough edges and gaps in the ecosystem as it stands (i.e., sequencing & recording), but it’s worth a mention.
JACK port metadata has also allowed for MIDNAM information to be presented on MIDI ports (formerly possible with just LV2), with Carla adding this recently. Not a full system for passing parameter names between apps yet, but a start.