From fc8ffd9f764d78055db1e48adaf810f5b01ae58d Mon Sep 17 00:00:00 2001 From: hogliux Date: Mon, 15 Feb 2016 11:38:07 +0000 Subject: [PATCH] Fix finding default layout for legacy plug-ins --- .../processors/juce_AudioProcessor.cpp | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/modules/juce_audio_processors/processors/juce_AudioProcessor.cpp b/modules/juce_audio_processors/processors/juce_AudioProcessor.cpp index 4054aa64ba..a777cb2e75 100644 --- a/modules/juce_audio_processors/processors/juce_AudioProcessor.cpp +++ b/modules/juce_audio_processors/processors/juce_AudioProcessor.cpp @@ -52,10 +52,23 @@ AudioProcessor::AudioProcessor() if (numChannelConfigs > 0) { + int defaultLayoutIdx = 0; + + // prefer stereo if available + for (int i = 0; i < numChannelConfigs; ++i) + { + if (channelConfigs[i][0] == 2 || channelConfigs[i][1] == 2) + { + defaultLayoutIdx = i; + break; + } + } + #if ! JucePlugin_IsSynth - busArrangement.inputBuses.add (AudioProcessorBus ("Input", AudioChannelSet::canonicalChannelSet (channelConfigs[0][0]))); + busArrangement.inputBuses.add (AudioProcessorBus ("Input", AudioChannelSet::canonicalChannelSet (channelConfigs[defaultLayoutIdx][0]))); #endif - busArrangement.outputBuses.add (AudioProcessorBus ("Output", AudioChannelSet::canonicalChannelSet (channelConfigs[0][1]))); + + busArrangement.outputBuses.add (AudioProcessorBus ("Output", AudioChannelSet::canonicalChannelSet (channelConfigs[defaultLayoutIdx][1]))); } #endif