Hi All,
I am building a plugin using the AudioProcessorGraph model and running into a bit of an issue.
The plugin for now should only support mono input and output. For the VST3, everything is working well, you can add it to a track in Live and it is added to the track without complaint. The plugin only outputs the left channel of the input, but that is as expected until we get around to fixing that.
If you attempt to add the AU version of the plugin, however, you get the error message:
"Failed to create the Audio Unit "Blah Blah"
This Audio Unit plug-in is not compatible.
Failed to initialize."
Similarly, if I go to Logic and attempt to add it to a track in Mono mode, all good.
Mono->Stereo and Stereo both produce the error text:
Failed to load Audio Unit “Blah Blah”, please contact the manufacturer for an updated version or further assistance.
In terms of the code, we have a few nodes in an AudioProcessorGraph.
The outer shell, as well as each node each implement the following:
// method is called when the AudioProcessor for each node is initialized
AudioProcessor::BusesProperties PannerBlock::BusLayout()
{
BusesProperties buses{};
// Add main buses
bool defaultActivation = true;
buses.addBus(true, "Input", AudioChannelSet::discreteChannels(1), defaultActivation);
buses.addBus(false, "Output", AudioChannelSet::discreteChannels(1), defaultActivation);
return buses;
}
and
bool PannerBlock::isBusesLayoutSupported(const BusesLayout& layouts) const
{
if (layouts.getMainOutputChannelSet() != AudioChannelSet::mono() ||
layouts.getMainInputChannelSet() != AudioChannelSet::mono())
{
return false;
}
return true;
}
It is my understanding that these should ensure the plugin can only be instantiated in Mono mode.
In Live, even if I change the isBusesLayoutSupported and BusLayout to support both mono/mono and stereo/stereo formats, the same error text is displayed, that it Failed to initialize, with no other failure indication in the logs.
The auval passes with no errors, and accurately displays the supported bus layouts, 1-1 or 2-2 depending on the trial I’m doing.
My questions then are:
- Any ideas on what I am doing wrong with the stereo/stereo version of Live? Is there something I’m doing wrong in these calls that I’m not telling Live that I support stereo/stereo?
- How do I prevent my plugin from showing up in Mono-Stereo / Stereo in Logic?
- Note to future users, after building/rebuilding it may be wise to delete the audio units cache for logic to rescan:
rm ~/Library/Caches/AudioUnitCache/com.apple.audiounits.cache
- Note to future users, after building/rebuilding it may be wise to delete the audio units cache for logic to rescan:
- How do I prevent the AU from showing up in Ableton if it isn’t going to work?
Thank you!