BUG: Logic 10.6 issues with automation of discrete parameters

Automation of discrete parameters from JUCE plugin UIs does not work any more since the recent Logic 10.6 update.

All is fine when we turn a knob in the plugin UI and record this as automation in Logic. But when we have discrete values - such as a menu - this cannot be recorded as automation in Logic any more.

We’ve tested this with our plugins Cableguys - HalfTime and ShaperBox (with old and with recent versions of our plugins, also with the latest JUCE master), as well as with other plugins that we believe that are done with JUCE and have the same issues: Audio Damage Discord 4, Tracktion Software - Crusher and Auto Filter, Cytomic - The Drop.

We’ve also tested with D16 - Fazortan 2, which also does not work any more - not sure if this is done with JUCE.

Apple Chromaverb works fine, as do FabFilter - Pro-C 2 and u-he - Diva, which I think are not done with JUCE.

All tested on both macOS Catalina and Big Sur with Logic 10.6.1. All worked fine with Logic X 10.5.

See also this video:

do you use the begin/endParameterChangeGesture() in that case as well ?

Good question. And yes, we do.

So I’ve just disabled begin/endParameterChangeGesture() once for testing, but as expected then neither floating parameters nor discrete parameters can be automated any more.

I remember that for a particular DAW on Windows, it was necessary to issue the begin/endParameterChangeGesture() on the mouseDown/Up events rather than “tightly” around the setParameter call (yeah that was a fun one to debug :unamused: )
Perhaps something similar works as a workaround in this case too?

2 Likes

In Logic 10.6.1, I found that the combo-box controls in the DSPModulePluginDemo don’t record automation if I change their values while recording. However, if I change the demo to use sliders instead of combo boxes, then dragging the sliders records automation successfully.

I also tried some of the demo plugins provided with IPlug2 and saw similar behaviour there: toggle buttons controlled by a single click don’t record automation, but sliders with discrete steps do.

AURogerBeep (an external AU provided by Apple) has a couple of combo boxes which don’t record automation when adjusting them from the custom editor.

My best guess is that the Logic bug reported in this thread has resurfaced.

1 Like

We found out that it works if we call beginParameterChangeGesture and then wait for at least 40ms before sending the parameter value. Uh!

I guess that’s why sliders and knobs work: You normally call beginParameterChangeGesture right on mouseDown, and then send values a bit later while sliding.

We changed code to call beginParameterChangeGesture on buttons on mouseDown, and to send the value on mouseUp - which works, as this normally takes 40ms or longer.

But of course that’s nothing we’d like to be forced to do.

Hurray! Apple just confirmed to us that they are aware of the issue and working on a fix.

9 Likes