From 7ea5f4611c4d84518a4ec36d4776c9054739475e Mon Sep 17 00:00:00 2001 From: Paul Ferrand Date: Tue, 17 Dec 2019 22:48:06 +0100 Subject: [PATCH] Added a maxBlockSize at 8192 --- src/sfizz/Config.h | 1 + src/sfizz/Synth.cpp | 2 ++ 2 files changed, 3 insertions(+) diff --git a/src/sfizz/Config.h b/src/sfizz/Config.h index 63c66ff2..a0995a5d 100644 --- a/src/sfizz/Config.h +++ b/src/sfizz/Config.h @@ -34,6 +34,7 @@ enum Oversampling { namespace config { constexpr float defaultSampleRate { 48000 }; constexpr int defaultSamplesPerBlock { 1024 }; + constexpr int maxBlockSize { 8192 }; constexpr int preloadSize { 8192 }; constexpr int numChannels { 2 }; constexpr int numBackgroundThreads { 4 }; diff --git a/src/sfizz/Synth.cpp b/src/sfizz/Synth.cpp index 2f8bd9b8..2c46bd2f 100644 --- a/src/sfizz/Synth.cpp +++ b/src/sfizz/Synth.cpp @@ -329,6 +329,8 @@ void sfz::Synth::garbageCollect() noexcept void sfz::Synth::setSamplesPerBlock(int samplesPerBlock) noexcept { + ASSERT(samplesPerBlock < config::maxBlockSize); + AtomicDisabler callbackDisabler { canEnterCallback }; while (inCallback) {