Chris@8: Chris@8: #include "PiperExport.h" Chris@8: Chris@8: #include "NNLSChroma.h" Chris@8: #include "Chordino.h" Chris@8: #include "Tuning.h" Chris@8: Chris@21: using piper_vamp_js::PiperAdapter; Chris@21: using piper_vamp_js::PiperPluginLibrary; Chris@8: Chris@21: static std::string libname("nnls-chroma"); Chris@8: Chris@21: static PiperAdapter Chris@21: nnlsChromaAdapter( Chris@21: libname, Chris@21: { "Visualisation" }, Chris@21: { Chris@21: { "logfreqspec", Chris@21: { "http://purl.org/ontology/af/Spectrogram" } Chris@21: }, Chris@21: { "tunedlogfreqspec", Chris@21: { "http://purl.org/ontology/af/Spectrogram" } Chris@21: }, Chris@21: { "semitonespectrum", Chris@21: { "http://purl.org/ontology/af/Spectrogram" } Chris@21: }, Chris@21: { "chroma", Chris@21: { "http://purl.org/ontology/af/Chromagram" } Chris@21: }, Chris@21: { "basschroma", Chris@21: { "http://purl.org/ontology/af/Chromagram" } Chris@21: }, Chris@21: { "bothchroma", Chris@21: { "http://purl.org/ontology/af/Chromagram" } Chris@21: } Chris@21: } Chris@21: ); Chris@21: Chris@21: static PiperAdapter Chris@21: chordinoAdapter( Chris@21: libname, Chris@21: { "Notes" }, Chris@21: { Chris@21: { "simplechord", Chris@21: { "http://purl.org/ontology/af/ChordSegment" } Chris@21: }, Chris@21: { "chordnotes", Chris@21: { "" } Chris@21: }, Chris@21: { "harmonicchange", Chris@21: { "http://purl.org/ontology/af/TonalChangeDetectionFunction" } Chris@21: }, Chris@21: { "loglikelihood", Chris@21: { "" } Chris@21: } Chris@21: } Chris@21: ); Chris@21: Chris@21: static PiperAdapter Chris@21: tuningAdapter( Chris@21: libname, Chris@21: { "Key and Tonality" }, Chris@21: { Chris@21: { "tuning", Chris@21: { "http://purl.org/ontology/af/MusicSegment" } Chris@21: }, Chris@21: { "localtuning", Chris@21: { "" } Chris@21: } Chris@21: } Chris@21: ); Chris@21: Chris@21: static PiperPluginLibrary library({ Chris@21: &nnlsChromaAdapter, Chris@21: &chordinoAdapter, Chris@21: &tuningAdapter Chris@8: }); Chris@8: Chris@8: PIPER_EXPORT_LIBRARY(library); Chris@8: