Mercurial > hg > piper-vamp-js-builds
annotate constant-q-cpp/cqvamp.cpp @ 18:0253f7749493
Add cepstral pitch tracker
author | Chris Cannam |
---|---|
date | Thu, 23 Mar 2017 14:03:38 +0000 |
parents | 87fc2ac1a25a |
children | ac94242cf562 |
rev | line source |
---|---|
Chris@15 | 1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */ |
Chris@15 | 2 |
Chris@15 | 3 #include "PiperExport.h" |
Chris@15 | 4 #include "CQVamp.h" |
Chris@15 | 5 #include "CQChromaVamp.h" |
Chris@15 | 6 |
Chris@15 | 7 static std::string soname("cqvamp"); |
Chris@15 | 8 |
Chris@15 | 9 class CQVampMIDIParamsAdapter : public piper_vamp_js::PiperAdapterBase<CQVamp> |
Chris@15 | 10 { |
Chris@15 | 11 public: |
Chris@15 | 12 CQVampMIDIParamsAdapter() : PiperAdapterBase<CQVamp>(soname) { } |
Chris@15 | 13 virtual Vamp::Plugin *createPlugin(float inputSampleRate) const override { |
Chris@15 | 14 return new CQVamp(inputSampleRate, true); |
Chris@15 | 15 } |
Chris@15 | 16 }; |
Chris@15 | 17 |
Chris@15 | 18 class CQVampHzParamsAdapter : public piper_vamp_js::PiperAdapterBase<CQVamp> |
Chris@15 | 19 { |
Chris@15 | 20 public: |
Chris@15 | 21 CQVampHzParamsAdapter() : PiperAdapterBase<CQVamp>(soname) { } |
Chris@15 | 22 virtual Vamp::Plugin *createPlugin(float inputSampleRate) const override { |
Chris@15 | 23 return new CQVamp(inputSampleRate, false); |
Chris@15 | 24 } |
Chris@15 | 25 }; |
Chris@15 | 26 |
Chris@15 | 27 static CQVampMIDIParamsAdapter cqVampMIDIParamsAdapter; |
Chris@15 | 28 static CQVampHzParamsAdapter cqVampHzParamsAdapter; |
Chris@15 | 29 |
Chris@15 | 30 static piper_vamp_js::PiperAdapter<CQChromaVamp> cqChromaVampAdapter(soname); |
Chris@15 | 31 |
Chris@15 | 32 static piper_vamp_js::PiperPluginLibrary library({ |
Chris@15 | 33 &cqVampMIDIParamsAdapter, |
Chris@15 | 34 &cqVampHzParamsAdapter, |
Chris@15 | 35 &cqChromaVampAdapter |
Chris@15 | 36 }); |
Chris@15 | 37 |
Chris@15 | 38 PIPER_EXPORT_LIBRARY(library); |