diff --git a/src/sfizz/Synth.cpp b/src/sfizz/Synth.cpp index 63101517..cf414774 100644 --- a/src/sfizz/Synth.cpp +++ b/src/sfizz/Synth.cpp @@ -382,7 +382,7 @@ void sfz::Synth::renderBlock(AudioSpan buffer) noexcept const auto callbackStartTime = std::chrono::high_resolution_clock::now(); buffer.fill(0.0f); - + resources.filePool.cleanupPromises(); if (freeWheeling) @@ -490,7 +490,7 @@ void sfz::Synth::cc(int delay, int ccNumber, uint8_t ccValue) noexcept resetAllControllers(delay); return; } - + midiState.ccEvent(ccNumber, ccValue); for (auto& voice : voices) voice->registerCC(delay, ccNumber, ccValue); @@ -512,6 +512,11 @@ void sfz::Synth::pitchWheel(int delay, int pitch) noexcept ASSERT(pitch >= -8192); midiState.pitchBendEvent(pitch); + + for (auto& region: regions) { + region->registerPitchWheel(pitch); + } + for (auto& voice: voices) { voice->registerPitchWheel(delay, pitch); }