changeset 193:8b78ce63f0e1

Docs about building the library
author Chris Cannam <c.cannam@qmul.ac.uk>
date Tue, 28 Nov 2017 09:25:17 +0000
parents 60b34c5c650f
children 705be3bb9472
files README
diffstat 1 files changed, 36 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/README	Wed Jun 21 08:43:59 2017 +0100
+++ b/README	Tue Nov 28 09:25:17 2017 +0000
@@ -12,6 +12,17 @@
 spaced logarithmically in frequency, rather than linearly. The output
 bins are therefore linearly spaced in terms of musical pitch.
 
+This implementation is reasonably fast and is causal, operating
+block-by-block on the input, though with quite high latency depending
+on the frequency range specified. By default it produces output at a
+higher time resolution than some other implementations, using multiple
+kernel atoms per time block. The inverse transform is approximate
+rather than exact (see the paper cited below for details).
+
+
+About this library
+------------------
+
 This library provides:
 
  * Forward transform: time-domain to complex Constant-Q bins
@@ -28,18 +39,36 @@
  * Pitch chromagram obtained by folding a Constant-Q spectrogram
    around into a single-octave range
 
+
+Building the library and plugin
+-------------------------------
+
+To compile this code, use "make -f <file>" where <file> is one of
+Makefile.linux, Makefile.osx, Makefile.mingw32 depending on
+platform. These files set up some flags and include Makefile.inc,
+which defines the input files and so forth. You could equally write
+your own Makefile which does the same.
+
+The Vamp plugin part of the build expects to find a compiled version
+of the Vamp Plugin SDK in a neighbouring folder (../vamp-plugin-sdk).
+The unit tests also require Boost headers to be available.
+
+Note that this code uses the KissFFT library (compiled from source
+bundled here) in its non-default double-precision mode via the use of
+the flag -Dkiss_fft_scalar=double in Makefile.inc. If you want to
+build this code using an external KissFFT library or custom build
+scripts, you may need to do some work to ensure you have the right
+configuration.
+
+
+Credits
+-------
+
 The method is drawn from Christian Schörkhuber and Anssi Klapuri,
 "Constant-Q transform toolbox for music processing", SMC 2010. See the
 file CITATION for details. If you use this code in research work,
 please cite this paper.
 
-The implementation is reasonably fast and is causal, operating
-block-by-block on the input, though with quite high latency
-depending on the frequency range specified. By default it produces
-output at a higher time resolution than some other implementations,
-using multiple kernel atoms per time block. The inverse transform is
-approximate rather than exact (see the paper for details).
-
 The C++ implementation is by Chris Cannam, Copyright 2014-2015 Queen
 Mary, University of London.