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