# HG changeset patch # User Chris Cannam # Date 1413468573 -3600 # Node ID c4fa11b37744ccc2de93c7200caeca316261c73f # Parent fd21a6ab99dfa540891b45d5826f964add1ae433 Add tempogram diff -r fd21a6ab99df -r c4fa11b37744 plugins/availability.n3 --- a/plugins/availability.n3 Mon Sep 22 17:12:23 2014 +0100 +++ b/plugins/availability.n3 Thu Oct 16 15:09:33 2014 +0100 @@ -87,3 +87,13 @@ vamp:has_binary "linux64" ; vamp:has_binary "win32" ; . + +@prefix tempogram: . + +tempogram:library + vamp:has_source true ; + vamp:has_binary "osx" ; + vamp:has_binary "linux32" ; + vamp:has_binary "linux64" ; + vamp:has_binary "win32" ; + . diff -r fd21a6ab99df -r c4fa11b37744 plugins/featured.n3 --- a/plugins/featured.n3 Mon Sep 22 17:12:23 2014 +0100 +++ b/plugins/featured.n3 Thu Oct 16 15:09:33 2014 +0100 @@ -9,5 +9,6 @@ # vamp:has_featured_plugin "qm-vamp-plugins:qm-barbeattracker" ; vamp:has_featured_plugin "segmentino:segmentino" ; vamp:has_featured_plugin "ua-vamp-plugins:mf0ua" ; + vamp:has_featured_plugin "tempogram:tempogram" ; . diff -r fd21a6ab99df -r c4fa11b37744 plugins/index.txt --- a/plugins/index.txt Mon Sep 22 17:12:23 2014 +0100 +++ b/plugins/index.txt Thu Oct 16 15:09:33 2014 +0100 @@ -21,3 +21,5 @@ http://www.vamp-plugins.org/rdf/plugins/cqvamp http://www.vamp-plugins.org/rdf/plugins/ua-vamp-plugins http://www.vamp-plugins.org/rdf/plugins/mfs +http://www.vamp-plugins.org/rdf/plugins/tempogram + diff -r fd21a6ab99df -r c4fa11b37744 plugins/tempogram.n3 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/plugins/tempogram.n3 Thu Oct 16 15:09:33 2014 +0100 @@ -0,0 +1,203 @@ +@prefix rdfs: . +@prefix xsd: . +@prefix vamp: . +@prefix plugbase: . +@prefix owl: . +@prefix dc: . +@prefix af: . +@prefix foaf: . +@prefix doap: . +@prefix cc: . +@prefix : <#> . + + +## Properties of this document + +<> a vamp:PluginDescription ; + foaf:maker ; + foaf:primaryTopic . + + +## Maker of the whole plugin library + +:library_maker + foaf:name "Carl Bussey" ; + foaf:logo ; + foaf:page . + . + + +## Properties of the plugin library, and references to the plugins it contains + +plugbase:library a vamp:PluginLibrary ; + vamp:identifier "tempogram" ; + foaf:maker :library_maker ; + vamp:available_plugin plugbase:tempogram ; + dc:title "Tempogram" ; + dc:description "A Vamp plugin implementation of the tempogram and cyclic tempogram features described in Grosche, Müller, and Kurth 2010" ; + foaf:page ; + doap:download-page ; + . + + +## Properties of the Tempogram plugin + +plugbase:tempogram a vamp:Plugin ; + dc:title "Tempogram" ; + vamp:name "Tempogram" ; + dc:description """Cyclic Tempogram as described by Peter Grosche and Meinard Müller""" ; + foaf:maker :library_maker ; + dc:rights """Copyright 2014 Queen Mary University of London. GPL licence.""" ; +# cc:license ; + vamp:identifier "tempogram" ; + vamp:vamp_API_version vamp:api_version_2 ; + owl:versionInfo "1" ; + vamp:input_domain vamp:FrequencyDomain ; + + vamp:parameter plugbase:tempogram_param_C ; + vamp:parameter plugbase:tempogram_param_minDB ; + vamp:parameter plugbase:tempogram_param_log2TN ; + vamp:parameter plugbase:tempogram_param_log2HopSize ; + vamp:parameter plugbase:tempogram_param_log2FftLength ; + vamp:parameter plugbase:tempogram_param_minBPM ; + vamp:parameter plugbase:tempogram_param_maxBPM ; + vamp:parameter plugbase:tempogram_param_octDiv ; + + vamp:output plugbase:tempogram_output_cyclicTempogram ; + vamp:output plugbase:tempogram_output_tempogramDFT ; + vamp:output plugbase:tempogram_output_tempogramACT ; + vamp:output plugbase:tempogram_output_nc ; + . +plugbase:tempogram_param_C a vamp:Parameter ; + vamp:identifier "C" ; + dc:title "Novelty Curve Spectrogram Compression Constant" ; + dc:format "" ; + vamp:min_value 2 ; + vamp:max_value 10000 ; + vamp:unit "" ; + vamp:default_value 1000 ; + vamp:value_names (); + . +plugbase:tempogram_param_minDB a vamp:Parameter ; + vamp:identifier "minDB" ; + dc:title "Novelty Curve Minimum DB" ; + dc:format "" ; + vamp:min_value -100 ; + vamp:max_value -50 ; + vamp:unit "" ; + vamp:default_value -74 ; + vamp:value_names (); + . +plugbase:tempogram_param_log2TN a vamp:QuantizedParameter ; + vamp:identifier "log2TN" ; + dc:title "Tempogram Window Length" ; + dc:format "" ; + vamp:min_value 7 ; + vamp:max_value 12 ; + vamp:unit "" ; + vamp:quantize_step 1 ; + vamp:default_value 10 ; + vamp:value_names ( "128" "256" "512" "1024" "2048" "4096"); + . +plugbase:tempogram_param_log2HopSize a vamp:QuantizedParameter ; + vamp:identifier "log2HopSize" ; + dc:title "Tempogram Hopsize" ; + dc:format "" ; + vamp:min_value 6 ; + vamp:max_value 12 ; + vamp:unit "" ; + vamp:quantize_step 1 ; + vamp:default_value 6 ; + vamp:value_names ( "64" "128" "256" "512" "1024" "2048" "4096"); + . +plugbase:tempogram_param_log2FftLength a vamp:QuantizedParameter ; + vamp:identifier "log2FftLength" ; + dc:title "Tempogram FFT Length" ; + dc:format "" ; + vamp:min_value 6 ; + vamp:max_value 12 ; + vamp:unit "" ; + vamp:quantize_step 1 ; + vamp:default_value -74 ; + vamp:value_names (); + . +plugbase:tempogram_param_minBPM a vamp:QuantizedParameter ; + vamp:identifier "minBPM" ; + dc:title "(Cyclic) Tempogram Minimum BPM" ; + dc:format "" ; + vamp:min_value 0 ; + vamp:max_value 2000 ; + vamp:unit "" ; + vamp:quantize_step 5 ; + vamp:default_value 30 ; + vamp:value_names (); + . +plugbase:tempogram_param_maxBPM a vamp:QuantizedParameter ; + vamp:identifier "maxBPM" ; + dc:title "(Cyclic) Tempogram Maximum BPM" ; + dc:format "" ; + vamp:min_value 30 ; + vamp:max_value 2000 ; + vamp:unit "" ; + vamp:quantize_step 5 ; + vamp:default_value 480 ; + vamp:value_names (); + . +plugbase:tempogram_param_octDiv a vamp:QuantizedParameter ; + vamp:identifier "octDiv" ; + dc:title "Cyclic Tempogram Octave Divider" ; + dc:format "" ; + vamp:min_value 5 ; + vamp:max_value 60 ; + vamp:unit "" ; + vamp:quantize_step 1 ; + vamp:default_value 30 ; + vamp:value_names (); + . +plugbase:tempogram_output_cyclicTempogram a vamp:DenseOutput ; + vamp:identifier "cyclicTempogram" ; + dc:title "Cyclic Tempogram" ; + dc:description """Cyclic Tempogram""" ; + vamp:fixed_bin_count "true" ; + vamp:unit "" ; + vamp:bin_count 30 ; +# vamp:computes_event_type ; +# vamp:computes_feature ; +# vamp:computes_signal_type ; + . +plugbase:tempogram_output_tempogramDFT a vamp:DenseOutput ; + vamp:identifier "tempogramDFT" ; + dc:title "Tempogram via DFT" ; + dc:description """Tempogram via DFT""" ; + vamp:fixed_bin_count "true" ; + vamp:unit "BPM" ; + vamp:bin_count 1 ; + vamp:bin_names ( "-nan"); +# vamp:computes_event_type ; +# vamp:computes_feature ; +# vamp:computes_signal_type ; + . +plugbase:tempogram_output_tempogramACT a vamp:DenseOutput ; + vamp:identifier "tempogramACT" ; + dc:title "Tempogram via ACT" ; + dc:description """Tempogram via ACT""" ; + vamp:fixed_bin_count "true" ; + vamp:unit "BPM" ; + vamp:bin_count 1 ; + vamp:bin_names ( "inf"); +# vamp:computes_event_type ; +# vamp:computes_feature ; +# vamp:computes_signal_type ; + . +plugbase:tempogram_output_nc a vamp:DenseOutput ; + vamp:identifier "nc" ; + dc:title "Novelty Curve" ; + dc:description """Novelty Curve""" ; + vamp:fixed_bin_count "true" ; + vamp:unit "" ; + vamp:bin_count 1 ; +# vamp:computes_event_type ; +# vamp:computes_feature ; +# vamp:computes_signal_type ; + . +