juce_VstPluginFormat.cpp / processReplacing


I’m puzzled by this, in juce_VstPluginFormat.cpp:1108

Unless I’m missing something, we are passing the same buffers for inputs and outputs to the plugin ? Somehow this doesn’t feel right…



Why wouldn’t it be right? You don’t want to allocate a new buffer at every callback, do you?

Yes, and besides the allocation, you’d need a buffer copy per plugin (because you want to be able to chain effects)

However, back in the days I was developing VST plug-ins without JUCE, I noticed that some hosts are using the same buffer for input and output samples, whereas others are not. Consequently, what is wrong is doing some processes involving any input sample, if you have given a value to the corresponding output sample yet.