diff --git a/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp b/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp index d958a231cc..6525bb454e 100644 --- a/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp +++ b/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp @@ -1171,6 +1171,8 @@ public: case plugInOpcodeGetSpeakerArrangement: return handleGetSpeakerConfiguration (args); case plugInOpcodeSetNumberOfSamplesToProcess: return handleSetNumberOfSamplesToProcess (args); case plugInOpcodeSetSampleFloatType: return handleSetSampleFloatType (args); + case pluginOpcodeGetNumMidiInputChannels: return handleGetNumMidiInputChannels(); + case pluginOpcodeGetNumMidiOutputChannels: return handleGetNumMidiOutputChannels(); default: return 0; } } @@ -2010,6 +2012,25 @@ private: return 0; } + //============================================================================== + pointer_sized_int handleGetNumMidiInputChannels() + { + #if JucePlugin_WantsMidiInput || JucePlugin_IsMidiEffect + return 16; + #else + return 0; + #endif + } + + pointer_sized_int handleGetNumMidiOutputChannels() + { + #if JucePlugin_ProducesMidiOutput || JucePlugin_IsMidiEffect + return 16; + #else + return 0; + #endif + } + //============================================================================== JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (JuceVSTWrapper) }; diff --git a/modules/juce_audio_processors/format_types/juce_VSTInterface.h b/modules/juce_audio_processors/format_types/juce_VSTInterface.h index f1c52fcb36..4db7271349 100644 --- a/modules/juce_audio_processors/format_types/juce_VSTInterface.h +++ b/modules/juce_audio_processors/format_types/juce_VSTInterface.h @@ -143,7 +143,9 @@ enum VstHostToPlugInOpcodes plugInOpcodeStopProcess, plugInOpcodeSetNumberOfSamplesToProcess, plugInOpcodeSetSampleFloatType = plugInOpcodeSetNumberOfSamplesToProcess + 4, - plugInOpcodeMaximum = plugInOpcodeSetSampleFloatType + pluginOpcodeGetNumMidiInputChannels, + pluginOpcodeGetNumMidiOutputChannels, + plugInOpcodeMaximum = pluginOpcodeGetNumMidiOutputChannels };