summaryrefslogtreecommitdiffstats
path: root/src/engine/enginevumeter.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/engine/enginevumeter.cpp')
-rw-r--r--src/engine/enginevumeter.cpp20
1 files changed, 13 insertions, 7 deletions
diff --git a/src/engine/enginevumeter.cpp b/src/engine/enginevumeter.cpp
index 07c761ff09..7826a5cc2f 100644
--- a/src/engine/enginevumeter.cpp
+++ b/src/engine/enginevumeter.cpp
@@ -80,14 +80,17 @@ void EngineVuMeter::process(CSAMPLE* pIn, const int iBufferSize) {
// ControlObject will not prevent us from causing tons of extra
// work. Because of this, we use an epsilon here to be gentle on the GUI
// and MIDI controllers.
- if (fabs(m_fRMSvolumeL - m_ctrlVuMeterL->get()) > epsilon)
+ if (fabs(m_fRMSvolumeL - m_ctrlVuMeterL->get()) > epsilon) {
m_ctrlVuMeterL->set(m_fRMSvolumeL);
- if (fabs(m_fRMSvolumeR - m_ctrlVuMeterR->get()) > epsilon)
+ }
+ if (fabs(m_fRMSvolumeR - m_ctrlVuMeterR->get()) > epsilon) {
m_ctrlVuMeterR->set(m_fRMSvolumeR);
+ }
double fRMSvolume = (m_fRMSvolumeL + m_fRMSvolumeR) / 2.0;
- if (fabs(fRMSvolume - m_ctrlVuMeter->get()) > epsilon)
+ if (fabs(fRMSvolume - m_ctrlVuMeter->get()) > epsilon) {
m_ctrlVuMeter->set(fRMSvolume);
+ }
// Reset calculation:
m_iSamplesCalculated = 0;
@@ -121,14 +124,17 @@ void EngineVuMeter::process(CSAMPLE* pIn, const int iBufferSize) {
void EngineVuMeter::doSmooth(CSAMPLE &currentVolume, CSAMPLE newVolume)
{
- if (currentVolume > newVolume)
+ if (currentVolume > newVolume) {
currentVolume -= kDecaySmoothing * (currentVolume - newVolume);
- else
+ } else {
currentVolume += kAttackSmoothing * (newVolume - currentVolume);
- if (currentVolume < 0)
+ }
+ if (currentVolume < 0) {
currentVolume=0;
- if (currentVolume > 1.0)
+ }
+ if (currentVolume > 1.0) {
currentVolume=1.0;
+ }
}
void EngineVuMeter::reset() {