diff --git a/src/sfizz/Synth.cpp b/src/sfizz/Synth.cpp index 9196f6f9..01703a93 100644 --- a/src/sfizz/Synth.cpp +++ b/src/sfizz/Synth.cpp @@ -360,8 +360,10 @@ void sfz::Synth::renderBlock(AudioSpan buffer) noexcept auto tempSpan = AudioSpan(tempBuffer).first(buffer.getNumFrames()); for (auto& voice : voices) { - voice->renderBlock(tempSpan); - buffer.add(tempSpan); + if (!voice->isFree()) { + voice->renderBlock(tempSpan); + buffer.add(tempSpan); + } } buffer.applyGain(db2mag(volume));