diff align/Align.cpp @ 768:1b1960009be6 pitch-align

Provide callback for output preprocessing before DTW, use it for freq-pitch conversion; use direct setting of completion on alignment models instead of creating fake outputs for completion only
author Chris Cannam
date Fri, 22 May 2020 17:17:44 +0100
parents dd742e566e60
children 1d6cca5a5621
line wrap: on
line diff
--- a/align/Align.cpp	Thu May 21 16:21:57 2020 +0100
+++ b/align/Align.cpp	Fri May 22 17:17:44 2020 +0100
@@ -24,6 +24,8 @@
 #include "transform/Transform.h"
 #include "transform/TransformFactory.h"
 
+#include "base/Pitch.h"
+
 #include <QSettings>
 #include <QTimer>
 
@@ -151,7 +153,14 @@
                  reference,
                  toAlign,
                  transform,
-                 TransformDTWAligner::RiseFall);
+                 TransformDTWAligner::RiseFall,
+                 [](double freq) {
+                     if (freq < 0.0) {
+                         return 0.0;
+                     } else {
+                         return double(Pitch::getPitchForFrequency(freq));
+                     }
+                 });
             break;
         }