Automation still disabling itself in Ableton

Hello JUCE team,

We’re still having issues with parameter automation being disabled in Ableton upon session loads. There seems to be a parameter update recursion caused when the audioProcessorParameterChanged callback is triggered which sends the event sendAUEvent (kAudioUnitEvent_ParameterValueChange, index) causing the “Re-Enable Automation” button to light up.

We’re able to reproduce this with the JUCE GainPlugin in AU using JUCE 6.0.1 and Ableton 10.1.17.

There has been multiple iterations of this bug in the past but it doesn’t seem to be related to latency change updates anymore.

Relevant threads:

1 Like

Thanks for the report. I’m able to reproduce this too using the GainPlugin and the latest Live 10 beta (10.1.25b1).

This doesn’t appear to be related to the parameter recursion which was fixed by Tom’s changes a couple of years ago and instead seems to be a difference in how plug-in state restoring is handled in Live for VSTs and AUs. In VST plug-ins it appears that any parameter changes made as a result of the call to IComponent::setState() -> juce::AudioProcessor::setStateInformation() are not treated as “manual” parameter changes and therefore do not cause automation to be disabled. You can verify this by calling AudioProcessorParameter::setValueNotifyingHost() at any other point in the plug-in as it will disable automation. However, it seems that AUBase::RestoreState() -> juce::AudioProcessor::setStateInformation() does not have the same behaviour and any parameter changes are treated as “manual” and therefore disable automation.

I’ve submitted a bug report to Ableton to see if they have any insights and will update this thread when I hear back.


Thanks for looking into this and for the update. We can definitely confirm it’s an AU-specific issue.

I’ve had a reply on the bug report, seems like it is an Ableton bug and they are already looking into it:

I’ve submitted this information to our developers in an already open bug report that has been under investigation for quite some time (this issue affects various AU plugins in Live, but has been quite elusive over the years).

Hopefully your findings and test plugins will allow us to get a bit closer to a solution here.