how to save parametres correctly? VST3

From documentation, get and set state can save parametres in host application. But VST3 have two components and each component can have get and set state. Now question is which controller use for save parametres for host application?

The processor Component should save the model of your plug-in. In the controller part you could save optionally some information related to UI.

the host calls:

  • ProcessorComponent->getState (ProcessorState)
  • ControllerComponent->getState(ControllerState)

these 2 states are saved in the project or preset.


  • ProcessorComponent->setState (ProcessorState)
  • ControllerComponent->setComponentState (ProcessorState) // Here the same than what the processor gets in order to have the possibility to initialize local stuff)
  • ControllerComponent->setState(ControllerState)


Please have a look at mda DX10 example.