Mercurial > hg > constant-q-cpp
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 });