git bisect good
6de3af35665206383b47d48038ce0960dc9d509d is the first bad commit
commit 6de3af35665206383b47d48038ce0960dc9d509d
Author: reuk <reuk@users.noreply.github.com>
Date: Thu Nov 4 15:51:21 2021 +0000
AU: Make channel/bus handling more robust
.../juce_audio_plugin_client/AU/juce_AU_Wrapper.mm | 19 +--
.../AU/juce_AUv3_Wrapper.mm | 34 +++--
.../format_types/juce_AU_Shared.h | 152 +++++++++++----------
Could you supply a few more details about the test procedure please? In particular, it would be useful to know which host you’re testing, and what the processBlock function is doing (is it writing or clearing all output channels?).
I tried adjusting the CMake AudioPlugin example so that it has a mono input and stereo output, then adjusted the processBlock to copy the input channel to all output channels like so:
Hi reuk,
I’m testing in Apple Logic Arm Native.
Channelstrip with two mono plugins and then one with mono to stereo. It’s a reverb which creates two different signals L/R.
I have more information tomorrow.
My plugin (unknowingly) relied on the behaviour that unused input-buffers are silenced automatically, so this is clearly my fault. This has changed, so unused input channels may contain garbage.
It was correctly documented, but maybe you should add this to the breaking changes document, or undo the behaviour, other peoples code might rely on it too.