Receiving the ID of the parameter changed in the UI of audio plugins (ultimately used in MIDI/parameter mapping)


I want to be able to tell which parameter is being tweaked by the user in the plugin's editor (formats of interest: VST, VST3 and AU). This will ultimately be used in a midi 'learn mode' feature, part of a host plugin. I am trying to find out which component/method is responsible in each format for handling such events in order to figure the best way to implement a generic interface for this feature.

Having done some research on the VST3 documentation, I understand that it is the IComponentHandler (correct me if I am wrong). I have also noticed that some of the handleCallbacks in juce_VSTPluginFormat.cpp are not implemented yet.

  • It is not entirely clear to me whether this functionality has been implemented in the JUCE API, although I feel it is not (I am stepping into new territories here).
  • Then, I would very much appreciate it if you could point me towards the right direction for figuring where this is being implemented in the SDKs of every different audio plugin format.

I hope I have described the situation adequately.

Kind regards,


Yes, this should be implemented in VST3.

The important class here is AudioProcessorListener, and that gets invoked internally by sendParamChangeMessageToListeners, which does appear to be called in the VST3 code, as well as the other formats.

Indeed it is called in all of them. Thanks for the guidelines, Jules!