plugins/{MelEnergy,Mfcc,SpecDesc}.{cpp,h}: change package name to vamp-aubio-plugins
[vamp-aubio-plugins.git] / plugins / Types.h
1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*-  vi:set ts=8 sts=4 sw=4: */
2
3 /*
4     Vamp feature extraction plugins using Paul Brossier's Aubio library.
5
6     Centre for Digital Music, Queen Mary, University of London.
7     This file copyright 2012 Queen Mary, University of London.
8     
9     This program is free software; you can redistribute it and/or
10     modify it under the terms of the GNU General Public License as
11     published by the Free Software Foundation; either version 2 of the
12     License, or (at your option) any later version.  See the file
13     COPYING included with this distribution for more information.
14
15 */
16
17 #ifndef _ONSET_TYPE_H_
18 #define _ONSET_TYPE_H_
19
20 // Note: the enum values in this header are ordered to match the Vamp
21 // plugin parameter values in earlier versions of this plugin set, to
22 // avoid breaking stored parameter settings that use the parameter's
23 // numerical value. Any additional values must be added after all
24 // existing ones.
25
26 enum OnsetType {
27     OnsetEnergy,
28     OnsetSpecDiff,
29     OnsetHFC,
30     OnsetComplex,
31     OnsetPhase,
32     OnsetKL,
33     OnsetMKL,
34     OnsetSpecFlux // new in 0.4!
35 };
36
37 extern const char *getAubioNameForOnsetType(OnsetType t);
38
39 enum SpecDescType {
40     SpecDescFlux,
41     SpecDescCentroid,
42     SpecDescSpread,
43     SpecDescSkeweness,
44     SpecDescKurtosis,
45     SpecDescSlope,
46     SpecDescDecrease,
47     SpecDescRolloff
48 };
49
50 extern const char *getAubioNameForSpecDescType(SpecDescType t);
51
52 enum PitchType {
53     PitchYin,
54     PitchMComb,
55     PitchSchmitt,
56     PitchFComb,
57     PitchYinFFT
58 };
59
60 extern const char *getAubioNameForPitchType(PitchType t);
61     
62
63 #endif
64
65