Browse Source

VST3: Fixed bypass and program parameter indices when JUCE_FORCE_USE_LEGACY_PARAM_IDS=1 and AudioProcessor::getBypassParameter() is implemented

v6.1.6
ed 4 years ago
parent
commit
2ac46c600d
1 changed files with 3 additions and 5 deletions
  1. +3
    -5
      modules/juce_audio_plugin_client/VST3/juce_VST3_Wrapper.cpp

+ 3
- 5
modules/juce_audio_plugin_client/VST3/juce_VST3_Wrapper.cpp View File

@@ -302,7 +302,7 @@ private:
#endif
juceParameters.update (*audioProcessor, forceLegacyParamIDs);
auto additionalLegacyParameterIDIndex = juceParameters.getNumParameters();
auto numParameters = juceParameters.getNumParameters();
bool vst3WrapperProvidedBypassParam = false;
auto* bypassParameter = audioProcessor->getBypassParameter();
@@ -333,8 +333,7 @@ private:
{
// we need to remain backward compatible with the old bypass id
if (vst3WrapperProvidedBypassParam)
vstParamID = static_cast<Vst::ParamID> ((isUsingManagedParameters() && ! forceLegacyParamIDs) ? paramBypass
: additionalLegacyParameterIDIndex++);
vstParamID = static_cast<Vst::ParamID> ((isUsingManagedParameters() && ! forceLegacyParamIDs) ? paramBypass : numParameters);
bypassParamID = vstParamID;
}
@@ -353,8 +352,7 @@ private:
juceParameters.params.add (ownedProgramParameter.get());
programParamID = static_cast<Vst::ParamID> (forceLegacyParamIDs ? additionalLegacyParameterIDIndex++
: paramPreset);
programParamID = static_cast<Vst::ParamID> (forceLegacyParamIDs ? i++ : paramPreset);
vstParamIDs.add (programParamID);
paramMap.set (static_cast<int32> (programParamID), ownedProgramParameter.get());


Loading…
Cancel
Save