If the number of channels changes but the blocksize and samplerate do not then then buffers don’t get resized.
void HostedAudioDeviceInterface::prepareToPlay (double sampleRate, int blockSize)
{
if (parameters.sampleRate != sampleRate || parameters.blockSize != blockSize)
{
parameters.sampleRate = sampleRate;
parameters.blockSize = blockSize;
if (! parameters.fixedBlockSize)
{
int maxChannels = jmax (parameters.inputChannels, parameters.outputChannels);
inputFifo.setSize (maxChannels, blockSize * 4);
outputFifo.setSize (maxChannels, blockSize * 4);
outputFifo.writeSilence (blockSize);
}
if (deviceType != nullptr)
deviceType->settingsChanged();
}
}
