mirror of
https://github.com/juce-framework/JUCE.git
synced 2026-01-09 23:34:20 +00:00
AAX Client: Manually declare compatibility with all channel layouts for MIDI FX
Previously, MIDI FX plugins would only load on mono tracks. Now, we add a separate plugin description for each potential track layout. This is the same approach used by the example MIDI FX from the AAX SDK.
This commit is contained in:
parent
fa0ed2801d
commit
aebba3c875
1 changed files with 9 additions and 6 deletions
|
|
@ -2414,9 +2414,6 @@ namespace AAXClasses
|
|||
aaxInputFormat = aaxOutputFormat;
|
||||
#endif
|
||||
|
||||
if (processor.isMidiEffect())
|
||||
aaxInputFormat = aaxOutputFormat = AAX_eStemFormat_Mono;
|
||||
|
||||
check (desc.AddAudioIn (JUCEAlgorithmIDs::inputChannels));
|
||||
check (desc.AddAudioOut (JUCEAlgorithmIDs::outputChannels));
|
||||
|
||||
|
|
@ -2586,10 +2583,16 @@ namespace AAXClasses
|
|||
// MIDI effect plug-ins do not support any audio channels
|
||||
jassert (numInputBuses == 0 && numOutputBuses == 0);
|
||||
|
||||
if (auto* desc = descriptor.NewComponentDescriptor())
|
||||
for (const auto format : aaxFormats)
|
||||
{
|
||||
createDescriptor (*desc, plugin->getBusesLayout(), *plugin, pluginIds, numMeters);
|
||||
check (descriptor.AddComponent (desc));
|
||||
const auto channelSet = channelSetFromStemFormat (format, false);
|
||||
const AudioProcessor::BusesLayout layout { { channelSet }, { channelSet } };
|
||||
|
||||
if (auto* desc = descriptor.NewComponentDescriptor())
|
||||
{
|
||||
createDescriptor (*desc, layout, *plugin, pluginIds, numMeters);
|
||||
check (descriptor.AddComponent (desc));
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue