On the current tip of develop you’ll find a new feature which now correctly reports the IDs of parameters to the DAW - previously the index of the parameter would be reported to the DAW and not the ID. This fixes a long standing issue with JUCE, where adding a new parameter to your plug-in would potentially break customer’s projects such as the association of automation data with certain parameters. This also fixes and issue with VST3 bypass when adding parameters to your project.
The new feature will only be used if you are using the managed parameter system and all your parameters derive from
AudioProcessorParameter (such as
AudioParameterInt) or when using the
AudioProcessorValueTreeState. Note that if you have released a plug-in which is already using the managed parameter system, then this build will break your customer’s projects. However, we’ve added a new define to force JUCE to use the legacy param ids (see screenshot below). If this is enabled then JUCE will report parameter indices as IDs just like in older JUCE versions and your customer’s projects will remain in tact.
If you are still using the legacy parameter system (i.e. GetParameter/SetParameter) then everything will be as before and this change also won’t break your user’s projects.
I’m looking forward to your feedback. Please have a go and test this in every DAW possible!!