Pro Tools: if I remember correctly, when Pro Tools loads a song/session that contains your plug-in, it will do the following:
- Call your setStateInformation() with a default state for your plug-in that PT picked up upon scanning or upon first istantiation of your plug-in.
- Set all your automated parameters to the default values that it obtained at the same time it queried for the default state at point 1.
- Finally call your setStateInformation() with the state that was saved for your plug-in inside the song/session
- In the end, it will set all your automated parameters to the values they had when the song/session was saved.
All of the above calls will arrive from a worked thread that’s not the message thread.
There is a macro in JUCE that you can #define
, to skip steps 1. and 2. above: search for JucePlugin_AAXDisableDefaultSettingsChunks
And the AAX format also provides a native flag to instruct Pro Tools to make all those calls from the message thread like most of the other DAWs, but currently there’s no JUCE way to specify it (for a reason, see: [AAX][PULL REQUEST] Force Protools to do chunk calls in message thread option - #15 by reuk)