Hi all,
I’m facing the exact AUv3 scanning/loading issue many have seen on modern iOS, but with an unusual failure mode. I’m on iOS 26.0 with Xcode 26 (device is an iPad Pro, A17 chip). I’ve verified my Inter-App Audio and App Group entitlements are correct.
My situation:
-
JUCE Scanner Fails:
AudioUnitPluginFormat::findAllTypesForFile()returns 0 plugins, even with correct entitlements. -
Discovery Fixed (Native Scan): I implemented a native Objective-C++ fallback using
AVAudioUnitComponentManagerthat successfully finds all 99+ third-party AUv3s. -
The Block: When I pass the resulting
PluginDescription(which contains the correct component codes in the identifier) topluginFormatManager.createPluginInstanceAsync(), the loading fails instantly with:“Cannot find AudioUnit from description.”
I’ve tried using a permissive format to bypass validation, and I’ve tested every identifier format (Hex IDs, Name, empty string), but JUCE’s internal lookup logic still rejects the description, likely because it didn’t come from the JUCE scanner.
Has anyone who got the JUCE scanner working on iOS 26 (e.g., via the Inter-App Audio entitlement fix) encountered this instantiation failure?
Specifically, how did you ensure the PluginDescription was trusted by the format manager’s loader?
Any help would be hugely appreciated!
