Unique identifier of plugin parameter (as a host)

On the plugin host side, I want to map plugin parameters to internal parameters.
I’m looking for a way to uniquely identify parameters, that would be robust to plugin parameter info changes.

Currently, the AudioProcessorParameters that can be accessed through AudioPluginInstance (AudioProcessor) only provide a getParameterIndex accessor. If I understand correctly, the underlying parameter index could potentially change under some circumstances, like changing preset etc.

VST3 provides a paramID, that is completely inaccessible through the Juce API. I know AUs also provide IDs.

How can I access a 100% reliable ID for a given parameter?

I’ve been working on a solution to this problem recently. It’s currently awaiting review, but hopefully it will go on develop shortly after the next bugfix release.

1 Like

That’s amazing news. Thanks @reuk !

@reuk is it part of 6.1.1?
And if yes, can you please point me to how to get a unique id for each param (or another strategy)?

This has not been released yet. Hopefully we’ll release this next week or shortly afterwards, depending on review feedback from the rest of the team.

1 Like

Thanks for your patience. This functionality is now available on develop:

If you discover any issues with the new API, please let us know. It’s much less disruptive to change new APIs than old, entrenched ones!

1 Like

Thanks a lot @reuk ! Good way to start the week.
I’ll try it asap