more MTC debugging
[ardour.git] / libs / rubberband / src / SpectralDifferenceAudioCurve.cpp
index 0deec53c87a97e081a93db88ff9fc0a158832caf..7d98828915bd92d5319d3ebcec14310d01f1615a 100644 (file)
@@ -52,7 +52,7 @@ SpectralDifferenceAudioCurve::setWindowSize(size_t newSize)
 }
 
 float
-SpectralDifferenceAudioCurve::process(const float *R__ mag, size_t increment)
+SpectralDifferenceAudioCurve::process(const float *R__ mag, size_t /*increment*/)
 {
     float result = 0.0;
 
@@ -65,5 +65,19 @@ SpectralDifferenceAudioCurve::process(const float *R__ mag, size_t increment)
     return result;
 }
 
+float
+SpectralDifferenceAudioCurve::processDouble(const double *R__ mag, size_t /*increment*/)
+{
+    float result = 0.0;
+
+    for (size_t n = 0; n <= m_windowSize / 2; ++n) {
+        result += sqrtf(fabsf((mag[n] * mag[n]) -
+                              (m_prevMag[n] * m_prevMag[n])));
+        m_prevMag[n] = (float)mag[n];
+    }
+
+    return result;
+}
+
 }