Logic Pro X AU validation sudden failure

Hi everyone,

I was testing a release build of my plugin in Logic Pro X, making sure that everything works as expected in macOS as well with the soon-to-be shipped product. Everything worked properly and I created an installer using this tutorial. The installer also works great and copies the plugin in the correct folders. I then gave the plugin one last go on Logic just to find out that the plugin doesn’t validate any more. The audio unit validation result says:

# # Global Scope Parameters

ERROR: Parameter values are different since last set - probable cause: a Meta Param Flag is NOT set on a parameter that will change values of other parameters.

This doesn’t really make sense because the source code is exactly the same as in the previous working version. I have no idea what the cause of this is, let alone how to fix it. I’ve tried some trickery like deleting the audio unit cache or switching between debug and release builds but the plugin doesn’t seem to validate anymore. I found some discussions on similar topics online but I didn’t get any help from those.

Even though I developed the plugin on Windows, I did some testing on mac many times in the development process and always got my plugin validated. Any insights would be greatly appreciated.

It sounds to me like your earlier testing was never making the AU validation run, but using the installer caused it to be re-validated, and it failed. Doesn’t address the error, but would explain why you didn’t see it before. After making changes, it’s best to force a validation, just to be sure. (I think you can bump the last field of the version number to force that, but I forget.)

this post has a solution that worked for me (essentially just marking all automatable params as meta params) .

Thank you so much. That fixed my problem. I think it’s still kind of weird that Logic decided to validate my plugin only after running the installer. It might be that the plugin only gets validated when it is in the system folder, not the user-specific one.

one weirdness on macos is that an appex registers itself with the system when it’s created on the filesystem. this works fine on ios, but it’s easy to have multiple copies on macos floating around (eg, both build folders). i always double-check by searching for foo.appex in finder and deleting any instances to guarantee i’m testing the correct version of a plugin.

and once you’ve done that there’s still sometimes a bit of buffer time before the system decides the plugin is registered so you have to check with auvaltool as well.