cannam@30
|
1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
|
cannam@30
|
2
|
cannam@30
|
3 /*
|
cannam@30
|
4 Vamp feature extraction plugins using Paul Brossier's Aubio library.
|
cannam@30
|
5
|
cannam@30
|
6 Centre for Digital Music, Queen Mary, University of London.
|
cannam@30
|
7 This file copyright 2012 Queen Mary, University of London.
|
piem@145
|
8
|
piem@112
|
9 This file is part of vamp-aubio-plugins.
|
piem@112
|
10
|
piem@112
|
11 vamp-aubio is free software: you can redistribute it and/or modify
|
piem@112
|
12 it under the terms of the GNU General Public License as published by
|
piem@112
|
13 the Free Software Foundation, either version 3 of the License, or
|
piem@112
|
14 (at your option) any later version.
|
piem@112
|
15
|
piem@112
|
16 vamp-aubio is distributed in the hope that it will be useful,
|
piem@112
|
17 but WITHOUT ANY WARRANTY; without even the implied warranty of
|
piem@112
|
18 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
piem@112
|
19 GNU General Public License for more details.
|
piem@112
|
20
|
piem@112
|
21 You should have received a copy of the GNU General Public License
|
piem@112
|
22 along with aubio. If not, see <http://www.gnu.org/licenses/>.
|
cannam@30
|
23
|
cannam@30
|
24 */
|
cannam@30
|
25
|
cannam@30
|
26 #ifndef _ONSET_TYPE_H_
|
cannam@30
|
27 #define _ONSET_TYPE_H_
|
cannam@30
|
28
|
piem@134
|
29 /** silence unused parameter warning by adding an attribute */
|
piem@134
|
30 #if defined(__GNUC__)
|
piem@134
|
31 #define UNUSED __attribute__((unused))
|
piem@134
|
32 #else
|
piem@134
|
33 #define UNUSED
|
piem@134
|
34 #endif
|
piem@134
|
35
|
cannam@30
|
36 // Note: the enum values in this header are ordered to match the Vamp
|
cannam@30
|
37 // plugin parameter values in earlier versions of this plugin set, to
|
cannam@30
|
38 // avoid breaking stored parameter settings that use the parameter's
|
cannam@30
|
39 // numerical value. Any additional values must be added after all
|
cannam@30
|
40 // existing ones.
|
cannam@30
|
41
|
cannam@30
|
42 enum OnsetType {
|
cannam@30
|
43 OnsetEnergy,
|
cannam@30
|
44 OnsetSpecDiff,
|
cannam@30
|
45 OnsetHFC,
|
cannam@30
|
46 OnsetComplex,
|
cannam@30
|
47 OnsetPhase,
|
cannam@30
|
48 OnsetKL,
|
cannam@30
|
49 OnsetMKL,
|
piem@145
|
50 OnsetSpecFlux, // new in 0.4!
|
piem@145
|
51 OnsetDefault // new in 0.5
|
cannam@30
|
52 };
|
cannam@30
|
53
|
cannam@30
|
54 extern const char *getAubioNameForOnsetType(OnsetType t);
|
cannam@30
|
55
|
piem@89
|
56 enum SpecDescType {
|
piem@89
|
57 SpecDescFlux,
|
piem@89
|
58 SpecDescCentroid,
|
piem@89
|
59 SpecDescSpread,
|
piem@89
|
60 SpecDescSkeweness,
|
piem@89
|
61 SpecDescKurtosis,
|
piem@89
|
62 SpecDescSlope,
|
piem@89
|
63 SpecDescDecrease,
|
piem@89
|
64 SpecDescRolloff
|
piem@89
|
65 };
|
piem@89
|
66
|
piem@89
|
67 extern const char *getAubioNameForSpecDescType(SpecDescType t);
|
piem@89
|
68
|
cannam@30
|
69 enum PitchType {
|
cannam@30
|
70 PitchYin,
|
cannam@30
|
71 PitchMComb,
|
cannam@30
|
72 PitchSchmitt,
|
cannam@30
|
73 PitchFComb,
|
cannam@30
|
74 PitchYinFFT
|
cannam@30
|
75 };
|
cannam@30
|
76
|
cannam@30
|
77 extern const char *getAubioNameForPitchType(PitchType t);
|
cannam@30
|
78
|
cannam@30
|
79 #endif
|
cannam@30
|
80
|