AU failing to load in GarageBand after update to High Sierra

Also received a report. Maybe the problem only occurs when reading and writing the “application support” folder?

In my case, the reason turned out to be the fact that the plug-in was still using an ancient Info.plist file, without the AudioComponents section.

Once we added that AudioComponents section to the Info.plist file, GarageBand behaved as expected.
This means that, since my plug-in is not sandboxed, GarageBand showed the expected confirmation dialog where it asks for permission to lower its own security settings in order to load the non-sandboxed plug-in (details about this are here: Garageband X Sandboxing).

But ultimately the plug-in did load as expected.

Sorry to bring back an old thread, but we’re seeing this issue with the default JUCE audio plugin project on macOS 10.13 with GarageBand 10.3. Any updates on this?

Here’s the full message from GarageBand:

Audio Unit plug-in can't be used.
The Audio Unit could not be loaded for your project, and may need to be updated. Contact the manufacturer for an updated version or further assistance.

I’m seeing this exact same issue as well, macOS 10.13.4 and GarageBand 10.3

OK this is odd. I can see that also some non-JUCE AUs are also not loading. But others seem to load just fine. Let me investigate…

OK. It seems that GarageBand won’t load any AUs that are not “sandboxSafe”. This flag must be set in the Info.plist file:

I’ve now updated the Projucer with an option to do this for you:

By default “sandbox safe mode” will be disabled (to remain backward compatible with older plug-ins) - except for PiPs, where it will always be enabled. As the JUCE plug-in demos are all PiPs, they should now load in GarageBand out-of-the-box.

If you want to try this out, you will need to re-build the Projucer. If you are testing one of the example projects, you will need to re-generate the .jucer file from the PiP (File -> Open Example -> …). Also, on my machine, I needed to reboot after the plug-in was built before GarageBand picked up the change.

This change will be available on develop shortly with commit fefbbc8.

2 Likes

Are they seriously doing that ? Shutting down all non sandboxed AU plugins on macOS 10.13 without notice, without even a mention in the Garageband changelog ? I want to believe it is a bug, not a feature removal.

Thanks @fabian. This is working for us.

Best part is that I couldn’t find any official documentation on the sandboxSafe plist flag. Can anybody find some official documentation on this?

Update: official documentation is here: https://developer.apple.com/library/archive/technotes/tn2247/_index.html

Hi,
First of all I apologize for my English caus’ I’m French…
I have exactly the same problem since the last Garageband’s update.
Could you help me and please tell me step by step what can I do especially with sandbox ? Very complicate for me to understand

Just look at my screenshot in the above post. Make sure “Plugin AU is sandbox safe” is set to “Enabled”.

Thanks but where can I find this option in Garageband ? Where can I go to see if it’s enabled ?

This is in the Projucer which is a tool for developers creating plug-ins. If you are having an issue loading a plug-in in GarageBand you will need to contact the developer.

It’s nicer to have sandbox capable plug-in but it will break a lot of capabilities for many plug-ins.

Some plug-in protection vendors out there are relying on IPC for example, meaning you’d break them by default.

It’s more of a workaround.
And that’s only for GarageBand. even not Logic X…

GarageBand requires the sandboxSafe flag now. This is not a JUCE issue. You can build some of Apple’s sample AUs and try removing the sandboxSafe flag from the plist (and don’t forget to reboot after installing) and you will get the exact same error.

Even with a JUCE plug-in, you will find that GarageBand does not even invoke the AUs entry point if the flag is not set.

Update: @ttg is right. This in deed looks like some bug (either in GarageBand or JUCE) and not a change in policy in GarageBand. Therefore the sandboxSafe flag is really just a workaround until the underlying bug is fixed. See posts below.

Is there any changelog or documentation mentioning that?
Did they remove that capability?
image

I only see this (apologies for the printscreen as Apple is making it quite hard to find the changelog in an simple way to copy):
image

Update:
The original link by @yfede sounds more like this is due to upgrading changes some caching or something to blacklist plug-ins instead of providing you with that dialog.

I think it is a bug bby Apple because the issue happens only on macOS 10.13 – on 10.12 all plugins are still loading fine – and if it was a voluntary feature removal, they would have removed or changed the ‘Lower Security Settings’ dialog I guess.

3 Likes

I can still load AUv3 plug-ins without lowering the security settings. But any AUv2 plug-in (except apple’s plug-ins) will still show the above dialog - even if the sandboxSafe flag is set.

This could mean that the dialog now has a different function: basically it warns you when loading AUv2s?

Update: no it also appears on AUv2s which do not have the sandboxFlag set. This means that the dialog has really become useless. Looks like a bug.

Can anybody find an AUv2 that successfully loads but doesn’t have the sandboxFlag set?

OK. Adding the resourceUsage section mentioned here fixes the issue.

I’ll update the Projucer to add this when the sandboxFlag is not set.

1 Like