From dd65d4831880077ae8c43af2bbd19bc7838830cb Mon Sep 17 00:00:00 2001 From: Vesa Date: Sun, 29 Jun 2014 13:27:29 +0300 Subject: [PATCH] Monstro: improve accuracy of env release --- plugins/monstro/Monstro.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/monstro/Monstro.cpp b/plugins/monstro/Monstro.cpp index e34acc2fe..f3c2a86ac 100644 --- a/plugins/monstro/Monstro.cpp +++ b/plugins/monstro/Monstro.cpp @@ -921,7 +921,7 @@ void MonstroSynth::renderModulators( fpp_t _frames ) // envelope 1 // adjust phase for release - if( m_nph->isReleased() && m_env1_phase < 4.0f ) + if( m_env1_phase < 4.0f && m_nph->isReleased() && f >= m_nph->framesBeforeRelease() ) { if( m_env1_phase < 1.0f ) m_env1_phase = 5.0f; else if( m_env1_phase < 2.0f ) m_env1_phase = 5.0f - fraction( m_env1_phase ); @@ -973,7 +973,7 @@ void MonstroSynth::renderModulators( fpp_t _frames ) // adjust phase for release - if( m_nph->isReleased() && m_env2_phase < 4.0f ) + if( m_env2_phase < 4.0f && m_nph->isReleased() && f >= m_nph->framesBeforeRelease() ) { if( m_env2_phase < 1.0f ) m_env2_phase = 5.0f; else if( m_env2_phase < 2.0f ) m_env2_phase = 5.0f - fraction( m_env2_phase );