diff yeti/cqtkernel.yeti @ 40:031386846e3c

Return bin frequencies, for reference; some padding
author Chris Cannam <c.cannam@qmul.ac.uk>
date Tue, 19 Nov 2013 14:37:23 +0000
parents 5435f00a4103
children f5bd00c97de3
line wrap: on
line diff
--- a/yeti/cqtkernel.yeti	Mon Nov 18 17:11:47 2013 +0000
+++ b/yeti/cqtkernel.yeti	Tue Nov 19 14:37:23 2013 +0000
@@ -43,6 +43,8 @@
     // function. We can't do that here; we need to generate real and imag
     // parts separately as real = cos(2*pi*x), imag = sin(2*pi*x).
     
+    binFrequencies = array [];
+
     kernels = map do k:
     
         nk = round(bigQ * sampleRate / (minFreq * (pow 2 ((k-1)/binsPerOctave))));
@@ -56,6 +58,8 @@
 
         fk = minFreq * (pow 2 ((k-1)/binsPerOctave));
 
+        push binFrequencies fk;
+
         genKernel f = vec.multiply win
            (vec.fromList
                (map do i: f (2 * pi * fk * i / sampleRate) done [0..nk-1]));
@@ -112,8 +116,9 @@
         atomsPerFrame = winNr,
         atomSpacing = atomHop,
         firstCentre,
-        maxFreq,
-        minFreq,
+        maxFrequency = maxFreq,
+        minFrequency = minFreq,
+        binFrequencies,
         bigQ
     });