# HG changeset patch # User Chris Cannam # Date 1402387891 -3600 # Node ID e2e6342c715ede5aedb79800d9d69714a202881b # Parent ae64d092bddf3dd3b88c54f3b642be0e22621c7c# Parent 4d5f6efacc21e95e4a918231f85e6cc35fd8ede0 Merge from default branch diff -r ae64d092bddf -r e2e6342c715e plugins/qm-vamp-plugins.n3 --- a/plugins/qm-vamp-plugins.n3 Fri Jun 06 19:42:15 2014 +0100 +++ b/plugins/qm-vamp-plugins.n3 Tue Jun 10 09:11:31 2014 +0100 @@ -22,8 +22,11 @@ vamp:identifier "qm-vamp-plugins" ; dc:title "Queen Mary plugin set" ; foaf:maker :maker ; + vamp:available_plugin plugbase:qm-adaptivespectrogram ; + vamp:available_plugin plugbase:qm-barbeattracker ; vamp:available_plugin plugbase:qm-chromagram ; vamp:available_plugin plugbase:qm-constantq ; + vamp:available_plugin plugbase:qm-dwt ; vamp:available_plugin plugbase:qm-keydetector ; vamp:available_plugin plugbase:qm-mfcc ; vamp:available_plugin plugbase:qm-onsetdetector ; @@ -31,19 +34,162 @@ vamp:available_plugin plugbase:qm-similarity ; vamp:available_plugin plugbase:qm-tempotracker ; vamp:available_plugin plugbase:qm-tonalchange ; + vamp:available_plugin plugbase:qm-transcription ; foaf:page ; . +plugbase:qm-adaptivespectrogram a vamp:Plugin ; + dc:title "Adaptive Spectrogram" ; + vamp:name "Adaptive Spectrogram" ; + dc:description """Produce an adaptive spectrogram by adaptive selection from spectrograms at multiple resolutions""" ; + foaf:maker [ foaf:name "Queen Mary, University of London" ] ; # FIXME could give plugin author's URI here + dc:rights """Plugin by Wen Xue and Chris Cannam. Copyright (c) 2009 Wen Xue and QMUL - All Rights Reserved""" ; + vamp:identifier "qm-adaptivespectrogram" ; + vamp:vamp_API_version vamp:api_version_2 ; + owl:versionInfo "1" ; + vamp:input_domain vamp:TimeDomain ; + + vamp:parameter plugbase:qm-adaptivespectrogram_param_n ; + vamp:parameter plugbase:qm-adaptivespectrogram_param_w ; + vamp:parameter plugbase:qm-adaptivespectrogram_param_coarse ; + vamp:parameter plugbase:qm-adaptivespectrogram_param_threaded ; + + vamp:output plugbase:qm-adaptivespectrogram_output_output ; + . +plugbase:qm-adaptivespectrogram_param_n a vamp:QuantizedParameter ; + vamp:identifier "n" ; + dc:title "Number of resolutions" ; + dc:format "" ; + vamp:min_value 2 ; + vamp:max_value 10 ; + vamp:unit "" ; + vamp:quantize_step 1 ; + vamp:default_value 3 ; + vamp:value_names (); + . +plugbase:qm-adaptivespectrogram_param_w a vamp:QuantizedParameter ; + vamp:identifier "w" ; + dc:title "Smallest resolution" ; + dc:format "" ; + vamp:min_value 1 ; + vamp:max_value 14 ; + vamp:unit "" ; + vamp:quantize_step 1 ; + vamp:default_value 9 ; + vamp:value_names ( "2" "4" "8" "16" "32" "64" "128" "256" "512" "1024" "2048" "4096" "8192" "16384"); + . +plugbase:qm-adaptivespectrogram_param_coarse a vamp:QuantizedParameter ; + vamp:identifier "coarse" ; + dc:title "Omit alternate resolutions" ; + dc:format "" ; + vamp:min_value 0 ; + vamp:max_value 1 ; + vamp:unit "" ; + vamp:quantize_step 1 ; + vamp:default_value 0 ; + vamp:value_names (); + . +plugbase:qm-adaptivespectrogram_param_threaded a vamp:QuantizedParameter ; + vamp:identifier "threaded" ; + dc:title "Multi-threaded processing" ; + dc:format "" ; + vamp:min_value 0 ; + vamp:max_value 1 ; + vamp:unit "" ; + vamp:quantize_step 1 ; + vamp:default_value 1 ; + vamp:value_names (); + . +plugbase:qm-adaptivespectrogram_output_output a vamp:DenseOutput ; + vamp:identifier "output" ; + dc:title "Output" ; + dc:description """The output of the plugin""" ; + vamp:unit "" ; + vamp:computes_signal_type af:Spectrogram ; + . +plugbase:qm-barbeattracker a vamp:Plugin ; + dc:title "Bar and Beat Tracker" ; + vamp:name "Bar and Beat Tracker" ; + dc:description """Estimate bar and beat locations""" ; + foaf:maker [ foaf:name "Queen Mary, University of London" ] ; # FIXME could give plugin author's URI here + dc:rights """Plugin by Matthew Davies, Christian Landone and Chris Cannam. Copyright (c) 2006-2009 QMUL - All Rights Reserved""" ; + vamp:identifier "qm-barbeattracker" ; + vamp:vamp_API_version vamp:api_version_2 ; + owl:versionInfo "1" ; + vamp:input_domain vamp:TimeDomain ; + + vamp:parameter plugbase:qm-barbeattracker_param_bpb ; + + vamp:output plugbase:qm-barbeattracker_output_beats ; + vamp:output plugbase:qm-barbeattracker_output_bars ; + vamp:output plugbase:qm-barbeattracker_output_beatcounts ; + vamp:output plugbase:qm-barbeattracker_output_beatsd ; + . +plugbase:qm-barbeattracker_param_bpb a vamp:QuantizedParameter ; + vamp:identifier "bpb" ; + dc:title "Beats per Bar" ; + dc:format "" ; + vamp:min_value 2 ; + vamp:max_value 16 ; + vamp:unit "" ; + vamp:quantize_step 1 ; + vamp:default_value 4 ; + vamp:value_names (); + . +plugbase:qm-barbeattracker_output_beats a vamp:SparseOutput ; + vamp:identifier "beats" ; + dc:title "Beats" ; + dc:description """Beat locations labelled with metrical position""" ; + vamp:fixed_bin_count "true" ; + vamp:unit "" ; + vamp:bin_count 0 ; + vamp:sample_type vamp:VariableSampleRate ; + vamp:sample_rate 86.1326 ; + vamp:computes_event_type af:Beat ; + . +plugbase:qm-barbeattracker_output_bars a vamp:SparseOutput ; + vamp:identifier "bars" ; + dc:title "Bars" ; + dc:description """Bar locations""" ; + vamp:fixed_bin_count "true" ; + vamp:unit "" ; + vamp:bin_count 0 ; + vamp:sample_type vamp:VariableSampleRate ; + vamp:sample_rate 86.1326 ; +# vamp:computes_event_type ; + . +plugbase:qm-barbeattracker_output_beatcounts a vamp:SparseOutput ; + vamp:identifier "beatcounts" ; + dc:title "Beat Count" ; + dc:description """Beat counter function""" ; + vamp:fixed_bin_count "true" ; + vamp:unit "" ; + vamp:bin_count 1 ; + vamp:sample_type vamp:VariableSampleRate ; + vamp:sample_rate 86.1326 ; +# vamp:computes_event_type ; + . +plugbase:qm-barbeattracker_output_beatsd a vamp:SparseOutput ; + vamp:identifier "beatsd" ; + dc:title "Beat Spectral Difference" ; + dc:description """Beat spectral difference function used for bar-line detection""" ; + vamp:fixed_bin_count "true" ; + vamp:unit "" ; + vamp:bin_count 1 ; + vamp:sample_type vamp:VariableSampleRate ; + vamp:sample_rate 86.1326 ; +# vamp:computes_signal_type ; + . plugbase:qm-chromagram a vamp:Plugin ; dc:title "Chromagram" ; vamp:name "Chromagram" ; dc:description """Extract a series of tonal chroma vectors from the audio""" ; foaf:page ; - foaf:maker :maker ; - dc:rights """Plugin by Chris Cannam and Christian Landone. Copyright (c) 2006-2008 QMUL - All Rights Reserved""" ; + foaf:maker [ foaf:name "Queen Mary, University of London" ] ; # FIXME could give plugin author's URI here + dc:rights """Plugin by Chris Cannam and Christian Landone. Copyright (c) 2006-2009 QMUL - All Rights Reserved""" ; vamp:identifier "qm-chromagram" ; vamp:vamp_API_version vamp:api_version_2 ; - owl:versionInfo "3" ; + owl:versionInfo "4" ; vamp:input_domain vamp:FrequencyDomain ; @@ -64,7 +210,7 @@ vamp:max_value 127 ; vamp:unit "MIDI units" ; vamp:quantize_step 1 ; - vamp:default_value 12 ; + vamp:default_value 36 ; vamp:value_names (); . plugbase:qm-chromagram_param_maxpitch a vamp:QuantizedParameter ; @@ -82,8 +228,8 @@ vamp:identifier "tuning" ; dc:title "Tuning Frequency" ; dc:format "Hz" ; - vamp:min_value 420 ; - vamp:max_value 460 ; + vamp:min_value 360 ; + vamp:max_value 500 ; vamp:unit "Hz" ; vamp:default_value 440 ; vamp:value_names (); @@ -93,7 +239,7 @@ dc:title "Bins per Octave" ; dc:format "bins" ; vamp:min_value 2 ; - vamp:max_value 48 ; + vamp:max_value 480 ; vamp:unit "bins" ; vamp:quantize_step 1 ; vamp:default_value 12 ; @@ -138,7 +284,7 @@ dc:description """Extract a spectrogram with constant ratio of centre frequency to resolution from the input audio""" ; foaf:page ; foaf:maker [ foaf:name "Queen Mary, University of London" ] ; # FIXME could give plugin author's URI here - dc:rights """Plugin by Chris Cannam and Christian Landone. Copyright (c) 2006-2008 QMUL - All Rights Reserved""" ; + dc:rights """Plugin by Chris Cannam and Christian Landone. Copyright (c) 2006-2009 QMUL - All Rights Reserved""" ; vamp:identifier "qm-constantq" ; vamp:vamp_API_version vamp:api_version_2 ; owl:versionInfo "2" ; @@ -179,8 +325,8 @@ vamp:identifier "tuning" ; dc:title "Tuning Frequency" ; dc:format "Hz" ; - vamp:min_value 420 ; - vamp:max_value 460 ; + vamp:min_value 360 ; + vamp:max_value 500 ; vamp:unit "Hz" ; vamp:default_value 440 ; vamp:value_names (); @@ -190,7 +336,7 @@ dc:title "Bins per Octave" ; dc:format "bins" ; vamp:min_value 2 ; - vamp:max_value 48 ; + vamp:max_value 480 ; vamp:unit "bins" ; vamp:quantize_step 1 ; vamp:default_value 12 ; @@ -214,19 +360,88 @@ vamp:fixed_bin_count "true" ; vamp:unit "" ; vamp:bin_count 1 ; - vamp:bin_names ( "C"); vamp:computes_signal_type af:Spectrogram ; . +plugbase:qm-dwt a vamp:Plugin ; + dc:title "Discrete Wavelet Transform" ; + vamp:name "Discrete Wavelet Transform" ; + dc:description """Visualisation by scalogram""" ; + foaf:maker [ foaf:name "Queen Mary, University of London" ] ; # FIXME could give plugin author's URI here + dc:rights """Plugin by Thomas Wilmering. Copyright (c) 2009 Thomas Wilmering and QMUL - All Rights Reserved""" ; + vamp:identifier "qm-dwt" ; + vamp:vamp_API_version vamp:api_version_2 ; + owl:versionInfo "1" ; + vamp:input_domain vamp:TimeDomain ; + + vamp:parameter plugbase:qm-dwt_param_scales ; + vamp:parameter plugbase:qm-dwt_param_wavelet ; + vamp:parameter plugbase:qm-dwt_param_threshold ; + vamp:parameter plugbase:qm-dwt_param_absolute ; + + vamp:output plugbase:qm-dwt_output_wcoeff ; + . +plugbase:qm-dwt_param_scales a vamp:QuantizedParameter ; + vamp:identifier "scales" ; + dc:title "Scales" ; + dc:format "" ; + vamp:min_value 1 ; + vamp:max_value 16 ; + vamp:unit "" ; + vamp:quantize_step 1 ; + vamp:default_value 10 ; + vamp:value_names (); + . +plugbase:qm-dwt_param_wavelet a vamp:QuantizedParameter ; + vamp:identifier "wavelet" ; + dc:title "Wavelet" ; + dc:format "" ; + vamp:min_value 0 ; + vamp:max_value 42 ; + vamp:unit "" ; + vamp:quantize_step 1 ; + vamp:default_value 0 ; + vamp:value_names ( "Haar" "Daubechies 2" "Daubechies 3" "Daubechies 4" "Daubechies 5" "Daubechies 6" "Daubechies 7" "Daubechies 8" "Daubechies 9" "Daubechies 10" "Daubechies 20" "Daubechies 40" "Symlet 2" "Symlet 3" "Symlet 4" "Symlet 5" "Symlet 6" "Symlet 7" "Symlet 8" "Symlet 9" "Symlet 10" "Symlet 20" "Symlet 30" "Coiflet 1" "Coiflet 2" "Coiflet 3" "Coiflet 4" "Coiflet 5" "Biorthogonal 1.3" "Biorthogonal 1.5" "Biorthogonal 2.2" "Biorthogonal 2.4" "Biorthogonal 2.6" "Biorthogonal 2.8" "Biorthogonal 3.1" "Biorthogonal 3.3" "Biorthogonal 3.5" "Biorthogonal 3.7" "Biorthogonal 3.9" "Biorthogonal 4.4" "Biorthogonal 5.5" "Biorthogonal 6.8" "Meyer"); + . +plugbase:qm-dwt_param_threshold a vamp:Parameter ; + vamp:identifier "threshold" ; + dc:title "Threshold" ; + dc:format "" ; + vamp:min_value 0 ; + vamp:max_value 0.01 ; + vamp:unit "" ; + vamp:default_value 0 ; + vamp:value_names (); + . +plugbase:qm-dwt_param_absolute a vamp:QuantizedParameter ; + vamp:identifier "absolute" ; + dc:title "Absolute values" ; + dc:format "" ; + vamp:min_value 0 ; + vamp:max_value 1 ; + vamp:unit "" ; + vamp:quantize_step 1 ; + vamp:default_value 0 ; + vamp:value_names (); + . +plugbase:qm-dwt_output_wcoeff a vamp:DenseOutput ; + vamp:identifier "wcoeff" ; + dc:title "Wavelet Coefficients" ; + dc:description """Wavelet coefficients""" ; + vamp:fixed_bin_count "true" ; + vamp:unit "" ; + vamp:bin_count 10 ; +# vamp:computes_signal_type ; + . plugbase:qm-keydetector a vamp:Plugin ; dc:title "Key Detector" ; vamp:name "Key Detector" ; dc:description """Estimate the key of the music""" ; foaf:page ; foaf:maker [ foaf:name "Queen Mary, University of London" ] ; # FIXME could give plugin author's URI here - dc:rights """Plugin by Katy Noland and Christian Landone. Copyright (c) 2006-2008 QMUL - All Rights Reserved""" ; + dc:rights """Plugin by Katy Noland and Christian Landone. Copyright (c) 2006-2009 QMUL - All Rights Reserved""" ; vamp:identifier "qm-keydetector" ; vamp:vamp_API_version vamp:api_version_2 ; - owl:versionInfo "3" ; + owl:versionInfo "4" ; vamp:input_domain vamp:TimeDomain ; vamp:parameter plugbase:qm-keydetector_param_tuning ; @@ -321,8 +536,6 @@ vamp:unit "" ; vamp:bin_count 25 ; vamp:bin_names ( "F# / Gb major" "B major" "E major" "A major" "D major" "G major" "C major" "F major" "Bb major" "Eb major" "Ab major" "Db major" " " "Eb / D# minor" "G# minor" "C# minor" "F# minor" "B minor" "E minor" "A minor" "D minor" "G minor" "C minor" "F minor" "Bb minor"); -# vamp:computes_event_type ; -# vamp:computes_feature ; # vamp:computes_signal_type ; . plugbase:qm-mfcc a vamp:Plugin ; @@ -331,7 +544,7 @@ dc:description """Calculate a series of MFCC vectors from the audio""" ; foaf:page ; foaf:maker [ foaf:name "Queen Mary, University of London" ] ; # FIXME could give plugin author's URI here - dc:rights """Plugin by Nicolas Chetry and Chris Cannam. Copyright (c) 2008 QMUL - All Rights Reserved""" ; + dc:rights """Plugin by Nicolas Chetry and Chris Cannam. Copyright (c) 2009 QMUL - All Rights Reserved""" ; vamp:identifier "qm-mfcc" ; vamp:vamp_API_version vamp:api_version_2 ; owl:versionInfo "1" ; @@ -407,7 +620,7 @@ dc:description """Estimate individual note onset positions""" ; foaf:page ; foaf:maker [ foaf:name "Queen Mary, University of London" ] ; # FIXME could give plugin author's URI here - dc:rights """Plugin by Christian Landone, Chris Duxbury and Juan Pablo Bello. Copyright (c) 2006-2008 QMUL - All Rights Reserved""" ; + dc:rights """Plugin by Christian Landone, Chris Duxbury and Juan Pablo Bello. Copyright (c) 2006-2009 QMUL - All Rights Reserved""" ; vamp:identifier "qm-onsetdetector" ; vamp:vamp_API_version vamp:api_version_2 ; owl:versionInfo "2" ; @@ -495,7 +708,7 @@ dc:description """Divide the track into a sequence of consistent segments""" ; foaf:page ; foaf:maker [ foaf:name "Queen Mary, University of London" ] ; # FIXME could give plugin author's URI here - dc:rights """Plugin by Mark Levy. Copyright (c) 2006-2008 QMUL - All Rights Reserved""" ; + dc:rights """Plugin by Mark Levy. Copyright (c) 2006-2009 QMUL - All Rights Reserved""" ; vamp:identifier "qm-segmenter" ; vamp:vamp_API_version vamp:api_version_2 ; owl:versionInfo "2" ; @@ -563,7 +776,7 @@ dc:description """Return a distance matrix for similarity between the input audio channels""" ; foaf:page ; foaf:maker [ foaf:name "Queen Mary, University of London" ] ; # FIXME could give plugin author's URI here - dc:rights """Plugin by Mark Levy, Kurt Jacobson and Chris Cannam. Copyright (c) 2008 QMUL - All Rights Reserved""" ; + dc:rights """Plugin by Mark Levy, Kurt Jacobson and Chris Cannam. Copyright (c) 2009 QMUL - All Rights Reserved""" ; vamp:identifier "qm-similarity" ; vamp:vamp_API_version vamp:api_version_2 ; owl:versionInfo "1" ; @@ -667,13 +880,14 @@ dc:description """Estimate beat locations and tempo""" ; foaf:page ; foaf:maker [ foaf:name "Queen Mary, University of London" ] ; # FIXME could give plugin author's URI here - dc:rights """Plugin by Christian Landone and Matthew Davies. Copyright (c) 2006-2008 QMUL - All Rights Reserved""" ; + dc:rights """Plugin by Christian Landone and Matthew Davies. Copyright (c) 2006-2009 QMUL - All Rights Reserved""" ; vamp:identifier "qm-tempotracker" ; vamp:vamp_API_version vamp:api_version_2 ; - owl:versionInfo "3" ; + owl:versionInfo "4" ; vamp:input_domain vamp:FrequencyDomain ; + vamp:parameter plugbase:qm-tempotracker_param_method ; vamp:parameter plugbase:qm-tempotracker_param_dftype ; vamp:parameter plugbase:qm-tempotracker_param_whiten ; @@ -681,6 +895,17 @@ vamp:output plugbase:qm-tempotracker_output_detection_fn ; vamp:output plugbase:qm-tempotracker_output_tempo ; . +plugbase:qm-tempotracker_param_method a vamp:QuantizedParameter ; + vamp:identifier "method" ; + dc:title "Beat Tracking Method" ; + dc:format "" ; + vamp:min_value 0 ; + vamp:max_value 1 ; + vamp:unit "" ; + vamp:quantize_step 1 ; + vamp:default_value 1 ; + vamp:value_names ( "Old" "New"); + . plugbase:qm-tempotracker_param_dftype a vamp:QuantizedParameter ; vamp:identifier "dftype" ; dc:title "Onset Detection Function Type" ; @@ -743,7 +968,7 @@ dc:description """Detect and return the positions of harmonic changes such as chord boundaries""" ; foaf:page ; foaf:maker [ foaf:name "Queen Mary, University of London" ] ; # FIXME could give plugin author's URI here - dc:rights """Plugin by Martin Gasser and Christopher Harte. Copyright (c) 2006-2008 QMUL - All Rights Reserved""" ; + dc:rights """Plugin by Martin Gasser and Christopher Harte. Copyright (c) 2006-2009 QMUL - All Rights Reserved""" ; vamp:identifier "qm-tonalchange" ; vamp:vamp_API_version vamp:api_version_2 ; owl:versionInfo "1" ; @@ -838,4 +1063,33 @@ vamp:sample_rate 21.5332 ; vamp:computes_event_type af:TonalOnset; . +plugbase:qm-transcription a vamp:Plugin ; + dc:title "Polyphonic Transcription" ; + vamp:name "Polyphonic Transcription" ; + dc:description """Transcribe the input audio to estimated notes""" ; + foaf:page ; + foaf:maker [ foaf:name "Queen Mary, University of London" ] ; # FIXME could give plugin author's URI here + dc:rights """Plugin by Dr. Ruohua Zhou. Copyright (c) 2008-2009 QMUL - All Rights Reserved""" ; + vamp:identifier "qm-transcription" ; + vamp:vamp_API_version vamp:api_version_2 ; + owl:versionInfo "1" ; + vamp:input_domain vamp:TimeDomain ; + vamp:output plugbase:qm-transcription_output_transcription ; + . +plugbase:qm-transcription_output_transcription a vamp:SparseOutput ; + vamp:identifier "transcription" ; + dc:title "Transcription" ; + dc:description """Estimated note pitch (MIDI note number from 0 to 127)""" ; + vamp:fixed_bin_count "true" ; + vamp:unit "MIDI units" ; + a vamp:QuantizedOutput ; + vamp:quantize_step 1 ; + a vamp:KnownExtentsOutput ; + vamp:min_value 0 ; + vamp:max_value 127 ; + vamp:bin_count 1 ; + vamp:sample_type vamp:VariableSampleRate ; + vamp:computes_event_type af:Note ; + . +