summaryrefslogtreecommitdiffstats
path: root/src/engine/enginevumeter.cpp
diff options
context:
space:
mode:
authorFerran Pujol Camins <ferranpujolcamins@gmail.com>2015-08-12 23:15:12 +0200
committerFerran Pujol Camins <ferranpujolcamins@gmail.com>2015-08-12 23:15:12 +0200
commit1f8adac3624a49023166d48df652353768969457 (patch)
tree437941f6ab0156045625c7ab5b2abcf720277298 /src/engine/enginevumeter.cpp
parent8c274a88eb8edd7ffb6b6e48f89d95206b48cf17 (diff)
EngineVuMeter: Optimized PeakIndicator CO calculation.
Diffstat (limited to 'src/engine/enginevumeter.cpp')
-rw-r--r--src/engine/enginevumeter.cpp12
1 files changed, 2 insertions, 10 deletions
diff --git a/src/engine/enginevumeter.cpp b/src/engine/enginevumeter.cpp
index 4e34d783a3..847f0bd6be 100644
--- a/src/engine/enginevumeter.cpp
+++ b/src/engine/enginevumeter.cpp
@@ -91,15 +91,6 @@ void EngineVuMeter::process(CSAMPLE* pIn, const int iBufferSize) {
m_fRMSvolumeSumR = 0;
}
- if (clipped) {
- m_ctrlPeakIndicator->set(1.);
- m_peakDuration = PEAK_DURATION * sampleRate / iBufferSize / 2000;
- } else if (m_peakDuration <= 0) {
- m_ctrlPeakIndicator->set(0.);
- } else {
- --m_peakDuration;
- }
-
if (clipped & 1) {
m_ctrlPeakIndicatorL->set(1.);
m_peakDurationL = PEAK_DURATION * sampleRate / iBufferSize / 2000;
@@ -117,6 +108,8 @@ void EngineVuMeter::process(CSAMPLE* pIn, const int iBufferSize) {
} else {
--m_peakDurationR;
}
+
+ m_ctrlPeakIndicator->set(m_ctrlPeakIndicatorR->get() || m_ctrlPeakIndicatorL->get());
}
void EngineVuMeter::collectFeatures(GroupFeatureState* pGroupFeatures) const {
@@ -149,7 +142,6 @@ void EngineVuMeter::reset() {
m_fRMSvolumeSumL = 0;
m_fRMSvolumeR = 0;
m_fRMSvolumeSumR = 0;
- m_peakDuration = 0;
m_peakDurationL = 0;
m_peakDurationR = 0;
}