Hi,

We have built various AU bundles with multiple components in one binary.

You just keep adding, like this:

#include <AudioUnit/AudioUnit.r>
#include <AudioUnit/AudioUnitCarbonView.r>

#define RES_ID 1100
#define COMP_SUBTYPE 'SMD2'
#define COMP_MANUF 'UHfX'
#define COMP_TYPE 'aumu'
#define VERSION VERSION_ZEBRA2
#define NAME "u-he: Zebra2"
#define DESCRIPTION "AudioModulesMD"
#define ENTRY_POINT "AudioModulesMDEntry"

#include "AUResources.r"

#define RES_ID 1150
#define COMP_SUBTYPE 'SMD3'
#define COMP_MANUF 'UHfX'
#define COMP_TYPE 'aumu'
#define VERSION VERSION_ZEBRA2
#define NAME "u-he: Zebralette"
#define DESCRIPTION "AudioModulesMD"
#define ENTRY_POINT "AudioModulesMDEntry"

#include "AUResources.r"

#define RES_ID 1200
#define COMP_SUBTYPE 'reV0'
#define COMP_MANUF 'UHfX'
#define COMP_TYPE 'aumf'
#define VERSION VERSION_ZEBRA2
#define NAME "u-he: ZRev"
#define DESCRIPTION "AudioModulesAU"
#define ENTRY_POINT "AudioModulesAUEntry"

#include "AUResources.r"

#define RES_ID 1209
#define COMP_SUBTYPE 'SMY2'
#define COMP_MANUF 'UHfX'
#define COMP_TYPE 'aumf'
#define VERSION VERSION_ZEBRA2
#define NAME "u-he: Zebrify"
#define DESCRIPTION "AudioModulesAU"
#define ENTRY_POINT "AudioModulesAUEntry"

#include “AUResources.r"

// ____________________________________________________________________________
// component resources for Audio Unit Carbon View
#define RES_ID 2000
#define COMP_TYPE 'auvw'
#define COMP_SUBTYPE 'SMD2'
#define COMP_MANUF 'UHfX'
#define VERSION VERSION_ZEBRA2
#define NAME "u-he: Zebra2"
#define DESCRIPTION "AudioModulesAUView"
#define ENTRY_POINT "AudioModulesAUViewEntry"

#include “AUResources.r"


Cheers,

- Urs

On 16 Jun 2015, at 09:17, Taylor Holliday <[email protected]> wrote:

Oh, actually it's the same exact class, so my question is really how to set up a bundle with two AUs in it.

Looks like I have to keep using the .r file for compatibility with Ableton Live (possibly others). I tried two .r files (effect and instrument) but that only produced one AU. My .r file looks like:

#include <AudioUnit/AudioUnit.r>

#include "AudulusAUVersion.h"

// Note that resource IDs must be spaced 2 apart for the 'STR ' name and description
#define kAudioUnitResID_Audulus 1000

#define RES_ID kAudioUnitResID_Audulus
#define COMP_TYPE kAudioUnitType_MusicDevice
#define COMP_SUBTYPE Audulus_COMP_SUBTYPE
#define COMP_MANUF Audulus_COMP_MANF

#define VERSION kAudulusAUVersion
#define NAME "Audulus: Audulus"
#define DESCRIPTION "Audulus"
#define ENTRY_POINT "AntimatterAUEntry"

#include "AUResources.r"

How can I add a second AU to the .r file?

thanks!

On Mon, Jun 15, 2015 at 11:40 PM, Jens Alfke <[email protected]> wrote:

On Jun 15, 2015, at 9:53 PM, Taylor Holliday <[email protected]> wrote:

Is there a way I could include both AUs in a single bundle?

You’d have to rename that class in one of the bundles. Objective-C doesn’t allow two classes with the same name to be loaded in the same process.

Usually the easiest way to do this without having to edit a bunch of source code is to use the preprocessor, e.g. in one of the targets use a prefix header that contains
#define AUViewListener AUViewListenerForInstrument

—Jens



--
W. Taylor Holliday
Founder
Audulus LLC


_______________________________________________
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/nobody%40u-he.com

This email sent to [email protected]

Attachment: Zebra2_Resource.r
Description: Binary data

 _______________________________________________
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