Chris@15
|
1
|
Chris@15
|
2 #include "PiperExport.h"
|
Chris@21
|
3
|
Chris@15
|
4 #include "CQVamp.h"
|
Chris@15
|
5 #include "CQChromaVamp.h"
|
Chris@15
|
6
|
Chris@21
|
7 using piper_vamp_js::PiperAdapter;
|
Chris@21
|
8 using piper_vamp_js::PiperAdapterBase;
|
Chris@21
|
9 using piper_vamp_js::PiperPluginLibrary;
|
Chris@15
|
10
|
Chris@21
|
11 static std::string libname("cqvamp");
|
Chris@21
|
12
|
Chris@21
|
13 piper_vamp::StaticOutputInfo cqStaticOutputInfo {
|
Chris@21
|
14 { "constantq",
|
Chris@21
|
15 { "http://purl.org/ontology/af/Spectrogram" }
|
Chris@21
|
16 }
|
Chris@21
|
17 };
|
Chris@21
|
18
|
Chris@21
|
19 class CQVampMIDIParamsAdapter : public PiperAdapterBase<CQVamp>
|
Chris@15
|
20 {
|
Chris@15
|
21 public:
|
Chris@21
|
22 CQVampMIDIParamsAdapter() : PiperAdapterBase<CQVamp>(libname,
|
Chris@21
|
23 { "Visualisation" },
|
Chris@21
|
24 cqStaticOutputInfo) { }
|
Chris@15
|
25 virtual Vamp::Plugin *createPlugin(float inputSampleRate) const override {
|
Chris@15
|
26 return new CQVamp(inputSampleRate, true);
|
Chris@15
|
27 }
|
Chris@15
|
28 };
|
Chris@15
|
29
|
Chris@21
|
30 class CQVampHzParamsAdapter : public PiperAdapterBase<CQVamp>
|
Chris@15
|
31 {
|
Chris@15
|
32 public:
|
Chris@21
|
33 CQVampHzParamsAdapter() : PiperAdapterBase<CQVamp>(libname,
|
Chris@21
|
34 { "Visualisation" },
|
Chris@21
|
35 cqStaticOutputInfo) { }
|
Chris@15
|
36 virtual Vamp::Plugin *createPlugin(float inputSampleRate) const override {
|
Chris@15
|
37 return new CQVamp(inputSampleRate, false);
|
Chris@15
|
38 }
|
Chris@15
|
39 };
|
Chris@15
|
40
|
Chris@15
|
41 static CQVampMIDIParamsAdapter cqVampMIDIParamsAdapter;
|
Chris@15
|
42 static CQVampHzParamsAdapter cqVampHzParamsAdapter;
|
Chris@15
|
43
|
Chris@21
|
44 static PiperAdapter<CQChromaVamp>
|
Chris@21
|
45 cqChromaVampAdapter(
|
Chris@21
|
46 libname,
|
Chris@21
|
47 { "Visualisation" },
|
Chris@21
|
48 {
|
Chris@21
|
49 { "chromagram",
|
Chris@21
|
50 { "http://purl.org/ontology/af/Chromagram" }
|
Chris@21
|
51 }
|
Chris@21
|
52 }
|
Chris@21
|
53 );
|
Chris@15
|
54
|
Chris@21
|
55 static PiperPluginLibrary library({
|
Chris@21
|
56 &cqVampMIDIParamsAdapter,
|
Chris@21
|
57 &cqVampHzParamsAdapter,
|
Chris@21
|
58 &cqChromaVampAdapter
|
Chris@21
|
59 });
|
Chris@15
|
60
|
Chris@15
|
61 PIPER_EXPORT_LIBRARY(library);
|
Chris@21
|
62
|