Hi All,

I've written a wrapper to host my (non-AU) plugins in Audio Units.

How it works is I built a single AU component (the "wrapper"), each target 
plugin is placed in a copy of the AU wrapper bundle, and I edit the wrappers 
"Info.plist" file to create (what looks like) a unique AU. My wrapper then 
forwards all AU function calls to the target plugin ("wraps" it).

This all works pretty well until I load two different wrapped plugins into 
Ableton Live. Both plugins pass auval, both function OK as far as audio 
processing, but I can only open the view of the first plugin loaded. The other 
plugin refuses to show its view.

Now, I realize Carbon has a "flat namespace" and auval warns me that "Class 
'SynthEditPluginCocoaView_1344' is implemented in (both components). One of the 
two will be used. Which one is undefined."

Correct me if I'm wrong, but I figured since both binaries are identical, then 
both View classes are identical and it doesn’t matter that Cocoa will use the 
same view class for both AUs.

I placed breakpoints in the plugins, in the first plugin instance, Live calls 
GetProperty(kAudioUnitProperty_CocoaUI) and displays the view, in the second 
plugin, Live does not call this method, and does not instantiate the view class 
nor hit any breakpoints in the [uiViewForAudioUnit: withsize] creation 
function. It's like Live simply does not try to open the view.

If I change my view class's name to make it unique, then rebuild and apply the 
new wrapper to one of the two plugins, then both plugin views open OK. So 
clearly there is some problem with having the same Cocoa class name in two 
plugins. I just don't understand why this is a problem? (when the classes are 
identical).

Note: This wrapper is intended for non-techical end-users, I wish to avoid 
having to rebuild the wrapper for each target "wrapped" plugin.

Any hints appreciated.

Jeff McClintock



 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Coreaudio-api mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/coreaudio-api/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to