Wiki » History » Version 11

Chris Cannam, 2013-05-17 10:07 PM

1 1 Chris Cannam
h1. Wiki
2 1 Chris Cannam
3 10 Chris Cannam
h2. The method
4 10 Chris Cannam
5 1 Chris Cannam
 * The method to be implemented is that from "Anssi's Constant-Q Toolbox page":http://www.eecs.qmul.ac.uk/~anssik/cqt/.
6 1 Chris Cannam
7 1 Chris Cannam
 * The MATLAB toolbox reference implementation is "here":/projects/constant-q-toolbox.
8 1 Chris Cannam
9 11 Chris Cannam
 * The "QM-DSP":/projects/qm-dsp library contains a Constant-Q implementation; there is a Vamp plugin of it in the "QM Vamp Plugins":/projects/qm-vamp-plugins set. I believe it is based on the method of Brown and Puckette. Our version isn't very good. Among other things, we should aim to produce an improved plugin.
10 4 Chris Cannam
11 5 Chris Cannam
*Any pointers to* other existing high-quality C++ constant-Q implementations?
12 5 Chris Cannam
13 8 Chris Cannam
*Has anyone already made one* corresponding directly to the Schörkhuber/Klapuri method? We don't want to duplicate effort. And if someone has, why don't I know about it? -- can we do anything to help make it more universally known?
14 9 Chris Cannam
15 9 Chris Cannam
*What other modern methods* exist in C++?
16 10 Chris Cannam
17 10 Chris Cannam
h2. What we want it for
18 1 Chris Cannam
19 11 Chris Cannam
The immediate requirement is as the first step in implementing Emmanouil Benetos and Simon Dixon's "music transcription":http://www.mitpressjournals.org/doi/abs/10.1162/COMJ_a_00146 method for a Vamp plugin.
20 11 Chris Cannam
21 11 Chris Cannam
But the reason we aren't using the QM-DSP constant-Q implementation is that it simply isn't good enough, and that means it isn't really good enough for the rest of the world either. We should make a better one to improve upon the existing QM Vamp Plugin as well.