Browse Source

VST3 Client: Avoid AudioBuffer assertion when plugin has no audio channels

pull/22/head
attila Attila Szarvas 3 years ago
parent
commit
c2ec851c2c
1 changed files with 6 additions and 1 deletions
  1. +6
    -1
      modules/juce_audio_processors/format_types/juce_VST3Common.h

+ 6
- 1
modules/juce_audio_processors/format_types/juce_VST3Common.h View File

@@ -597,6 +597,8 @@ public:
auto* getNextChannelBuffer() { return buffer.getWritePointer (channelCounter++); }
auto getArrayOfWritePointers() { return buffer.getArrayOfWritePointers(); }
private:
AudioBuffer<FloatType> buffer;
int channelCounter = 0;
@@ -673,7 +675,10 @@ public:
setUpInputChannels (data, (size_t) vstInputs, scratchBuffer, inputMap, channels);
setUpOutputChannels (scratchBuffer, outputMap, channels);
return { channels.data(), (int) channels.size(), (int) data.numSamples };
const auto channelPtr = channels.empty() ? scratchBuffer.getArrayOfWritePointers()
: channels.data();
return { channelPtr, (int) channels.size(), (int) data.numSamples };
}
private:


Loading…
Cancel
Save