Mercurial > hg > constant-q-cpp
comparison cq/Chromagram.h @ 171:a12642e36167
Expose a few more parameters, adjust some names for better consistency with spectrogram class
author | Chris Cannam <c.cannam@qmul.ac.uk> |
---|---|
date | Thu, 05 Feb 2015 09:52:49 +0000 |
parents | b96b0addbca7 |
children | 223f2a8c4f65 |
comparison
equal
deleted
inserted
replaced
170:b96b0addbca7 | 171:a12642e36167 |
---|---|
31 | 31 |
32 #ifndef CQCHROMAGRAM_H | 32 #ifndef CQCHROMAGRAM_H |
33 #define CQCHROMAGRAM_H | 33 #define CQCHROMAGRAM_H |
34 | 34 |
35 #include "CQBase.h" | 35 #include "CQBase.h" |
36 #include "CQParameters.h" | |
36 | 37 |
37 class CQSpectrogram; | 38 class CQSpectrogram; |
38 | 39 |
39 class Chromagram | 40 class Chromagram |
40 { | 41 { |
41 public: | 42 public: |
42 struct Parameters { | 43 struct Parameters { |
43 Parameters(double sr) : | 44 Parameters(double sr) : |
44 sampleRate(sr), | 45 sampleRate(sr), |
45 lowestOctave(0), | 46 lowestOctave(0), |
46 octaves(7), | 47 octaveCount(7), |
47 bpo(36), | 48 binsPerOctave(36), |
48 tuningFrequency(440.) { } | 49 tuningFrequency(440.), |
50 q(1.0), // Q scaling factor | |
51 atomHopFactor(0.25), // hop size of shortest temporal atom | |
52 threshold(0.0005), // sparsity threshold for resulting kernel | |
53 window(CQParameters::SqrtBlackmanHarris) // window shape | |
54 { } | |
55 | |
49 double sampleRate; | 56 double sampleRate; |
50 int lowestOctave; | 57 int lowestOctave; |
51 int octaves; | 58 int octaveCount; |
52 int bpo; | 59 int binsPerOctave; |
60 | |
53 double tuningFrequency; | 61 double tuningFrequency; |
62 double q; | |
63 double atomHopFactor; | |
64 double threshold; | |
65 CQParameters::WindowType window; | |
54 }; | 66 }; |
55 | 67 |
56 Chromagram(Parameters params); | 68 Chromagram(Parameters params); |
57 virtual ~Chromagram(); | 69 virtual ~Chromagram(); |
58 | 70 |