diff options
author | pcktm <jakub@kopanko.com> | 2023-06-13 23:14:10 +0200 |
---|---|---|
committer | pcktm <jakub@kopanko.com> | 2023-06-13 23:14:10 +0200 |
commit | 8a5c045b557ebc27882a1538a4a61a1450c526df (patch) | |
tree | 4b45dd95d2a9dd476234cbe73fce7e6f3a52deab | |
parent | 265b5eb132e0441135ad5635eee1a90beda863fd (diff) |
Move maxDelay to a const variable
-rw-r--r-- | src/effects/backends/builtin/glitcheffect.cpp | 6 | ||||
-rw-r--r-- | src/effects/backends/builtin/glitcheffect.h | 4 |
2 files changed, 8 insertions, 2 deletions
diff --git a/src/effects/backends/builtin/glitcheffect.cpp b/src/effects/backends/builtin/glitcheffect.cpp index 29ca12835b..23ec5046e9 100644 --- a/src/effects/backends/builtin/glitcheffect.cpp +++ b/src/effects/backends/builtin/glitcheffect.cpp @@ -34,7 +34,7 @@ EffectManifestPointer GlitchEffect::getManifest() { "1/8 - 2 seconds if no tempo is detected")); delay->setValueScaler(EffectManifestParameter::ValueScaler::Linear); delay->setUnitsHint(EffectManifestParameter::UnitsHint::Beats); - delay->setRange(0.0, 0.5, 2.0); + delay->setRange(0.0, 0.5, kMaxDelay); EffectManifestParameterPointer quantize = pManifest->addParameter(); quantize->setId("quantize"); @@ -106,7 +106,9 @@ void GlitchEffect::processChannel( int delay_samples = delay_frames * engineParameters.channelCount(); pGroupState->sample_count += engineParameters.samplesPerBuffer(); if (pGroupState->sample_count >= delay_samples) { - if (m_pDelayParameter->value() < 2.0) { + // If the delay parameter is at its maximum value, we don't update the `repeat_buf` + // in order to achieve an "audio freeze" effect. + if (m_pDelayParameter->value() < kMaxDelay) { SampleUtil::copy(pGroupState->repeat_buf.data(), pInput, engineParameters.samplesPerBuffer()); diff --git a/src/effects/backends/builtin/glitcheffect.h b/src/effects/backends/builtin/glitcheffect.h index 42ed367f43..f624a3d86a 100644 --- a/src/effects/backends/builtin/glitcheffect.h +++ b/src/effects/backends/builtin/glitcheffect.h @@ -11,6 +11,10 @@ #include "util/sample.h" #include "util/samplebuffer.h" +namespace { +constexpr double kMaxDelay = 2.0; +} + class GlitchGroupState : public EffectState { public: GlitchGroupState(const mixxx::EngineParameters& engineParameters) |