diff --git a/plugins/Amplifier/Amplifier.cpp b/plugins/Amplifier/Amplifier.cpp index b6d4a3ecf..e26caecaa 100644 --- a/plugins/Amplifier/Amplifier.cpp +++ b/plugins/Amplifier/Amplifier.cpp @@ -77,30 +77,30 @@ bool AmplifierEffect::processAudioBuffer( sampleFrame* buf, const fpp_t frames ) for( fpp_t f = 0; f < frames; ++f ) { // qDebug( "offset %d, value %f", f, m_ampControls.m_volumeModel.value( f ) ); - + outSum += buf[f][0]*buf[f][0] + buf[f][1]*buf[f][1]; + sample_t s[2] = { buf[f][0], buf[f][1] }; // convert vol/pan values to left/right values - const float left1 = m_ampControls.m_volumeModel.value( f ) * - ( m_ampControls.m_panModel.value( f ) <= 0 + const float left1 = m_ampControls.m_volumeModel.value() * + ( m_ampControls.m_panModel.value() <= 0 ? 1.0 : 1.0 - m_ampControls.m_panModel.value( f ) / 100.0 ); - const float right1 = m_ampControls.m_volumeModel.value( f ) * - ( m_ampControls.m_panModel.value( f ) >= 0 + const float right1 = m_ampControls.m_volumeModel.value() * + ( m_ampControls.m_panModel.value() >= 0 ? 1.0 - : 1.0 + m_ampControls.m_panModel.value( f ) / 100.0 ); + : 1.0 + m_ampControls.m_panModel.value() / 100.0 ); // first stage amplification s[0] *= ( left1 / 100.0 ); s[1] *= ( right1 / 100.0 ); // second stage amplification - s[0] *= ( m_ampControls.m_leftModel.value( f ) / 100.0 ); - s[1] *= ( m_ampControls.m_rightModel.value( f ) / 100.0 ); + s[0] *= ( m_ampControls.m_leftModel.value() / 100.0 ); + s[1] *= ( m_ampControls.m_rightModel.value() / 100.0 ); buf[f][0] = d * buf[f][0] + w * s[0]; buf[f][1] = d * buf[f][1] + w * s[1]; - outSum += buf[f][0]*buf[f][0] + buf[f][1]*buf[f][1]; } checkGate( outSum / frames ); diff --git a/plugins/BassBooster/BassBooster.cpp b/plugins/BassBooster/BassBooster.cpp index 60c31ab1a..e50224163 100644 --- a/plugins/BassBooster/BassBooster.cpp +++ b/plugins/BassBooster/BassBooster.cpp @@ -88,13 +88,13 @@ bool BassBoosterEffect::processAudioBuffer( sampleFrame* buf, const fpp_t frames const float w = wetLevel(); for( fpp_t f = 0; f < frames; ++f ) { + outSum += buf[f][0]*buf[f][0] + buf[f][1]*buf[f][1]; + sample_t s[2] = { buf[f][0], buf[f][1] }; m_bbFX.nextSample( s[0], s[1] ); buf[f][0] = d * buf[f][0] + w * s[0]; buf[f][1] = d * buf[f][1] + w * s[1]; - - outSum += buf[f][0]*buf[f][0] + buf[f][1]*buf[f][1]; } checkGate( outSum / frames ); diff --git a/plugins/DualFilter/DualFilter.cpp b/plugins/DualFilter/DualFilter.cpp index d20f3374b..9e42e978a 100644 --- a/plugins/DualFilter/DualFilter.cpp +++ b/plugins/DualFilter/DualFilter.cpp @@ -155,11 +155,11 @@ bool DualFilterEffect::processAudioBuffer( sampleFrame* buf, const fpp_t frames s[0] += ( s2[0] * mix2 ); s[1] += ( s2[1] * mix2 ); } + outSum += buf[f][0]*buf[f][0] + buf[f][1]*buf[f][1]; // do another mix with dry signal buf[f][0] = d * buf[f][0] + w * s[0]; buf[f][1] = d * buf[f][1] + w * s[1]; - outSum += buf[f][0]*buf[f][0] + buf[f][1]*buf[f][1]; } checkGate( outSum / frames ); diff --git a/plugins/dynamics_processor/dynamics_processor.cpp b/plugins/dynamics_processor/dynamics_processor.cpp index fa7973dd1..6dcd357c1 100644 --- a/plugins/dynamics_processor/dynamics_processor.cpp +++ b/plugins/dynamics_processor/dynamics_processor.cpp @@ -214,11 +214,10 @@ bool dynProcEffect::processAudioBuffer( sampleFrame * _buf, s[0] *= outputGain; s[1] *= outputGain; + out_sum += _buf[f][0]*_buf[f][0] + _buf[f][1]*_buf[f][1]; // mix wet/dry signals _buf[f][0] = d * _buf[f][0] + w * s[0]; _buf[f][1] = d * _buf[f][1] + w * s[1]; - - out_sum += _buf[f][0]*_buf[f][0] + _buf[f][1]*_buf[f][1]; } checkGate( out_sum / _frames ); diff --git a/plugins/waveshaper/waveshaper.cpp b/plugins/waveshaper/waveshaper.cpp index ab379d8d1..7389e27e1 100644 --- a/plugins/waveshaper/waveshaper.cpp +++ b/plugins/waveshaper/waveshaper.cpp @@ -130,11 +130,10 @@ bool waveShaperEffect::processAudioBuffer( sampleFrame * _buf, s[0] *= output; s[1] *= output; + out_sum += _buf[f][0]*_buf[f][0] + _buf[f][1]*_buf[f][1]; // mix wet/dry signals _buf[f][0] = d * _buf[f][0] + w * s[0]; _buf[f][1] = d * _buf[f][1] + w * s[1]; - - out_sum += _buf[f][0]*_buf[f][0] + _buf[f][1]*_buf[f][1]; } checkGate( out_sum / _frames );