Thanks for the quick response.
I changed my code to use AVAudioUnit.instantiate(with: effectDesc, options: .loadInProcess), and I'm now getting a different exception:
AUNSExtension.mm:100 Failed to open AudioUnit extension: Error Domain=com apple.ViewBridge Code=14 "(null)"
UserInfo={com.apple.ViewBridge.error.hint=-[NSViewServiceMarshal bootstrap:withReply:] caught NSInternalInconsistencyException 'NSDictionaryOfVariableBindings failed because either one of the values is nil, or there's something wrong with the way the macro is being invoked. Cannot assign value nil for key "childView". Keys:(
not assign value nil for key "childView"- Keys: ( angs rated because eatnes
childView
So it seems this new approach tries to load my audio units editor UI, even though the audio unit declares to have no UI. It also tries to load the UI when instantiating the audio unit, even though requestViewController wasn't even called.
Any ideas how to work around this? Are UI-less Audio Units no longer supported in the Audio Unit v3 interface?