diff --git a/src/core/FxMixer.cpp b/src/core/FxMixer.cpp index 7169a25ee..797463d0d 100644 --- a/src/core/FxMixer.cpp +++ b/src/core/FxMixer.cpp @@ -600,9 +600,6 @@ void FxMixer::masterMix( sampleFrame * _buf ) : m_fxChannels[0]->m_volumeModel.value(); MixHelpers::addSanitizedMultiplied( _buf, m_fxChannels[0]->m_buffer, v, fpp ); - m_fxChannels[0]->m_peakLeft *= Engine::mixer()->masterGain(); - m_fxChannels[0]->m_peakRight *= Engine::mixer()->masterGain(); - // clear all channel buffers and // reset channel process state for( int i = 0; i < numChannels(); ++i) diff --git a/src/gui/FxMixerView.cpp b/src/gui/FxMixerView.cpp index 407c0bd59..90de3d000 100644 --- a/src/gui/FxMixerView.cpp +++ b/src/gui/FxMixerView.cpp @@ -503,6 +503,11 @@ void FxMixerView::clear() void FxMixerView::updateFaders() { FxMixer * m = Engine::fxMixer(); + + // apply master gain + m->m_fxChannels[0]->m_peakLeft *= Engine::mixer()->masterGain(); + m->m_fxChannels[0]->m_peakRight *= Engine::mixer()->masterGain(); + for( int i = 0; i < m_fxChannelViews.size(); ++i ) { const float opl = m_fxChannelViews[i]->m_fader->getPeak_L();