Dynamics processor peak release fix

This commit is contained in:
Vesa
2014-02-21 22:46:52 +02:00
parent 987fdc2e01
commit 3f3cde8332

View File

@@ -82,17 +82,22 @@ bool dynProcEffect::processAudioBuffer( sampleFrame * _buf,
{
if( !isEnabled() || !isRunning () )
{
if( currentPeak[0] != 0.0f )
{
currentPeak[0] = qMax ( currentPeak[0] -
(( 1.0f / ( m_dpControls.m_releaseModel.value() / 1000.0f ) ) / engine::mixer()->processingSampleRate()), 0.0f );
if( currentPeak[0] == 0.0f && currentPeak[1] == 0.0f ) return( false );
else
{
if( currentPeak[0] != 0.0f )
{
currentPeak[0] = qMax ( currentPeak[0] -
(( 1.0f / ( m_dpControls.m_releaseModel.value() / 1000.0f ) ) / engine::mixer()->processingSampleRate()), 0.0f );
}
if( currentPeak[1] != 0.0f )
{
currentPeak[1] = qMax ( currentPeak[1] -
(( 1.0f / ( m_dpControls.m_releaseModel.value() / 1000.0f ) ) / engine::mixer()->processingSampleRate()), 0.0f );
}
return( true );
}
if( currentPeak[1] != 0.0f )
{
currentPeak[1] = qMax ( currentPeak[1] -
(( 1.0f / ( m_dpControls.m_releaseModel.value() / 1000.0f ) ) / engine::mixer()->processingSampleRate()), 0.0f );
}
return( false );
}
// variables for effect