From 088dd14037cb571ba4f08dcf0fd05a1c754ade68 Mon Sep 17 00:00:00 2001 From: ed Date: Mon, 7 Jan 2019 10:27:54 +0000 Subject: [PATCH] Fixed an error in the ADSR::calculateRates() method --- modules/juce_audio_basics/utilities/juce_ADSR.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/modules/juce_audio_basics/utilities/juce_ADSR.h b/modules/juce_audio_basics/utilities/juce_ADSR.h index 41bfb1bfe8..3821333f06 100644 --- a/modules/juce_audio_basics/utilities/juce_ADSR.h +++ b/modules/juce_audio_basics/utilities/juce_ADSR.h @@ -200,9 +200,9 @@ private: // need to call setSampleRate() first! jassert (sr > 0.0); - attackRate = (parameters.attack > 0.0f ? static_cast (1.0f / (parameters.attack * sr)) : -1.0f); - decayRate = (parameters.decay > 0.0f ? static_cast (1.0f / (parameters.decay * sr)) : -1.0f); - releaseRate = (parameters.release > 0.0f ? static_cast (1.0f / (parameters.release * sr)) : -1.0f); + attackRate = (parameters.attack > 0.0f ? static_cast (1.0f / (parameters.attack * sr)) : -1.0f); + decayRate = (parameters.decay > 0.0f ? static_cast ((1.0f - sustainLevel) / (parameters.decay * sr)) : -1.0f); + releaseRate = (parameters.release > 0.0f ? static_cast (sustainLevel / (parameters.release * sr)) : -1.0f); } //==============================================================================