# HG changeset patch # User Chris Cannam # Date 1287745096 -3600 # Node ID 61d35e59ee2b92b331eda044190358ef069b7ab5 # Parent 0dfcddf4c413897a503f99aa8b5ff9c2ec235506 * Add skeleton plugin description RDF diff -r 0dfcddf4c413 -r 61d35e59ee2b nnls-chroma.n3 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/nnls-chroma.n3 Fri Oct 22 11:58:16 2010 +0100 @@ -0,0 +1,346 @@ +@prefix rdfs: . +@prefix xsd: . +@prefix vamp: . +@prefix plugbase: . +@prefix owl: . +@prefix dc: . +@prefix af: . +@prefix foaf: . +@prefix cc: . +@prefix : <#> . + +<> a vamp:PluginDescription ; + foaf:maker ; + foaf:primaryTopic . + +:nnls-chroma a vamp:PluginLibrary ; + vamp:identifier "nnls-chroma" ; + vamp:available_plugin plugbase:chordino ; + vamp:available_plugin plugbase:nnls_chroma ; + vamp:available_plugin plugbase:tuning ; +# foaf:page ; + . + +plugbase:chordino a vamp:Plugin ; + dc:title "Chordino" ; + vamp:name "Chordino" ; + dc:description """This plugin provides a number of features derived from a log-frequency amplitude spectrum of the DFT: some variants of the log-frequency spectrum, including a semitone spectrum derived from approximate transcription using the NNLS algorithm; based on this semitone spectrum, chroma features and a simple chord estimate.""" ; + foaf:maker [ foaf:name "Matthias Mauch" ] ; # FIXME could give plugin author's URI here + dc:rights """GPL""" ; +# cc:license ; + vamp:identifier "chordino" ; + vamp:vamp_API_version vamp:api_version_2 ; + owl:versionInfo "1" ; + vamp:input_domain vamp:FrequencyDomain ; + + + vamp:parameter plugbase:chordino_param_preset ; + vamp:parameter plugbase:chordino_param_rollon ; + vamp:parameter plugbase:chordino_param_tuningmode ; + vamp:parameter plugbase:chordino_param_chromanormalize ; + + vamp:output plugbase:chordino_output_simplechord ; + vamp:output plugbase:chordino_output_harmonicchange ; + . +plugbase:chordino_param_preset a vamp:QuantizedParameter ; + vamp:identifier "preset" ; + dc:title "preset" ; + dc:format "" ; + vamp:min_value 0 ; + vamp:max_value 3 ; + vamp:unit "" ; + vamp:quantize_step 1 ; + vamp:default_value 0 ; + vamp:value_names ( "polyphonic pop" "polyphonic pop (fast)" "solo keyboard" "manual"); + . +plugbase:chordino_param_rollon a vamp:Parameter ; + vamp:identifier "rollon" ; + dc:title "spectral roll-on" ; + dc:format "" ; + vamp:min_value 0 ; + vamp:max_value 1 ; + vamp:unit "" ; + vamp:default_value 0 ; + vamp:value_names (); + . +plugbase:chordino_param_tuningmode a vamp:QuantizedParameter ; + vamp:identifier "tuningmode" ; + dc:title "tuning mode" ; + dc:format "" ; + vamp:min_value 0 ; + vamp:max_value 1 ; + vamp:unit "" ; + vamp:quantize_step 1 ; + vamp:default_value 0 ; + vamp:value_names ( "global tuning" "local tuning"); + . +plugbase:chordino_param_chromanormalize a vamp:QuantizedParameter ; + vamp:identifier "chromanormalize" ; + dc:title "chroma normalization" ; + dc:format "" ; + vamp:min_value 0 ; + vamp:max_value 3 ; + vamp:unit "" ; + vamp:quantize_step 1 ; + vamp:default_value 0 ; + vamp:value_names ( "none" "maximum norm" "L1 norm" "L2 norm"); + . +plugbase:chordino_output_simplechord a vamp:SparseOutput ; + vamp:identifier "simplechord" ; + dc:title "Chord Estimate" ; + dc:description """A simple chord estimate based on the inner product of chord templates with the smoothed chroma.""" ; + vamp:fixed_bin_count "true" ; + vamp:unit "" ; + vamp:bin_count 0 ; + vamp:sample_type vamp:VariableSampleRate ; + vamp:sample_rate 21.5332 ; +# vamp:computes_event_type ; +# vamp:computes_feature ; +# vamp:computes_signal_type ; + . +plugbase:chordino_output_harmonicchange a vamp:DenseOutput ; + vamp:identifier "harmonicchange" ; + dc:title "Harmonic Change Value" ; + dc:description """Harmonic change.""" ; + vamp:fixed_bin_count "true" ; + vamp:unit "" ; + a vamp:KnownExtentsOutput ; + vamp:min_value 0 ; + vamp:max_value 0.999 ; + vamp:bin_count 1 ; +# vamp:computes_event_type ; +# vamp:computes_feature ; +# vamp:computes_signal_type ; + . +plugbase:nnls_chroma a vamp:Plugin ; + dc:title "NNLS Chroma" ; + vamp:name "NNLS Chroma" ; + dc:description """This plugin provides a number of features derived from a log-frequency amplitude spectrum of the DFT: some variants of the log-frequency spectrum, including a semitone spectrum derived from approximate transcription using the NNLS algorithm; based on this semitone spectrum, chroma features and a simple chord estimate.""" ; + foaf:maker [ foaf:name "Matthias Mauch" ] ; # FIXME could give plugin author's URI here + dc:rights """GPL""" ; +# cc:license ; + vamp:identifier "nnls_chroma" ; + vamp:vamp_API_version vamp:api_version_2 ; + owl:versionInfo "1" ; + vamp:input_domain vamp:FrequencyDomain ; + + + vamp:parameter plugbase:nnls_chroma_param_preset ; + vamp:parameter plugbase:nnls_chroma_param_rollon ; + vamp:parameter plugbase:nnls_chroma_param_tuningmode ; + vamp:parameter plugbase:nnls_chroma_param_chromanormalize ; + + vamp:output plugbase:nnls_chroma_output_logfreqspec ; + vamp:output plugbase:nnls_chroma_output_tunedlogfreqspec ; + vamp:output plugbase:nnls_chroma_output_semitonespectrum ; + vamp:output plugbase:nnls_chroma_output_chroma ; + vamp:output plugbase:nnls_chroma_output_basschroma ; + vamp:output plugbase:nnls_chroma_output_bothchroma ; + . +plugbase:nnls_chroma_param_preset a vamp:QuantizedParameter ; + vamp:identifier "preset" ; + dc:title "preset" ; + dc:format "" ; + vamp:min_value 0 ; + vamp:max_value 3 ; + vamp:unit "" ; + vamp:quantize_step 1 ; + vamp:default_value 0 ; + vamp:value_names ( "polyphonic pop" "polyphonic pop (fast)" "solo keyboard" "manual"); + . +plugbase:nnls_chroma_param_rollon a vamp:Parameter ; + vamp:identifier "rollon" ; + dc:title "spectral roll-on" ; + dc:format "" ; + vamp:min_value 0 ; + vamp:max_value 1 ; + vamp:unit "" ; + vamp:default_value 0 ; + vamp:value_names (); + . +plugbase:nnls_chroma_param_tuningmode a vamp:QuantizedParameter ; + vamp:identifier "tuningmode" ; + dc:title "tuning mode" ; + dc:format "" ; + vamp:min_value 0 ; + vamp:max_value 1 ; + vamp:unit "" ; + vamp:quantize_step 1 ; + vamp:default_value 0 ; + vamp:value_names ( "global tuning" "local tuning"); + . +plugbase:nnls_chroma_param_chromanormalize a vamp:QuantizedParameter ; + vamp:identifier "chromanormalize" ; + dc:title "chroma normalization" ; + dc:format "" ; + vamp:min_value 0 ; + vamp:max_value 3 ; + vamp:unit "" ; + vamp:quantize_step 1 ; + vamp:default_value 0 ; + vamp:value_names ( "none" "maximum norm" "L1 norm" "L2 norm"); + . +plugbase:nnls_chroma_output_logfreqspec a vamp:DenseOutput ; + vamp:identifier "logfreqspec" ; + dc:title "Log-Frequency Spectrum" ; + dc:description """A Log-Frequency Spectrum (constant Q) that is obtained by cosine filter mapping.""" ; + vamp:fixed_bin_count "true" ; + vamp:unit "" ; + vamp:bin_count 256 ; +# vamp:computes_event_type ; +# vamp:computes_feature ; +# vamp:computes_signal_type ; + . +plugbase:nnls_chroma_output_tunedlogfreqspec a vamp:DenseOutput ; + vamp:identifier "tunedlogfreqspec" ; + dc:title "Tuned Log-Frequency Spectrum" ; + dc:description """A Log-Frequency Spectrum (constant Q) that is obtained by cosine filter mapping, then its tuned using the estimated tuning frequency.""" ; + vamp:fixed_bin_count "true" ; + vamp:unit "" ; + vamp:bin_count 256 ; +# vamp:computes_event_type ; +# vamp:computes_feature ; +# vamp:computes_signal_type ; + . +plugbase:nnls_chroma_output_semitonespectrum a vamp:DenseOutput ; + vamp:identifier "semitonespectrum" ; + dc:title "Semitone Spectrum" ; + dc:description """A semitone-spaced log-frequency spectrum derived from the third-of-a-semitone-spaced tuned log-frequency spectrum.""" ; + vamp:fixed_bin_count "true" ; + vamp:unit "" ; + vamp:bin_count 84 ; +# vamp:computes_event_type ; +# vamp:computes_feature ; +# vamp:computes_signal_type ; + . +plugbase:nnls_chroma_output_chroma a vamp:DenseOutput ; + vamp:identifier "chroma" ; + dc:title "Chromagram" ; + dc:description """Tuning-adjusted chromagram from NNLS soft transcription, with an emphasis on the medium note range.""" ; + vamp:fixed_bin_count "true" ; + vamp:unit "" ; + vamp:bin_count 12 ; + vamp:bin_names ( "A (bass)" "Bb (bass)" "B (bass)" "C (bass)" "C# (bass)" "D (bass)" "Eb (bass)" "E (bass)" "F (bass)" "F# (bass)" "G (bass)" "Ab (bass)"); +# vamp:computes_event_type ; +# vamp:computes_feature ; +# vamp:computes_signal_type ; + . +plugbase:nnls_chroma_output_basschroma a vamp:DenseOutput ; + vamp:identifier "basschroma" ; + dc:title "Bass Chromagram" ; + dc:description """Tuning-adjusted bass chromagram from NNLS soft transcription, with an emphasis on the bass note range.""" ; + vamp:fixed_bin_count "true" ; + vamp:unit "" ; + vamp:bin_count 12 ; + vamp:bin_names ( "A (bass)" "Bb (bass)" "B (bass)" "C (bass)" "C# (bass)" "D (bass)" "Eb (bass)" "E (bass)" "F (bass)" "F# (bass)" "G (bass)" "Ab (bass)"); +# vamp:computes_event_type ; +# vamp:computes_feature ; +# vamp:computes_signal_type ; + . +plugbase:nnls_chroma_output_bothchroma a vamp:DenseOutput ; + vamp:identifier "bothchroma" ; + dc:title "Chromagram and Bass Chromagram" ; + dc:description """Tuning-adjusted chromagram and bass chromagram (stacked on top of each other) from NNLS soft transcription.""" ; + vamp:fixed_bin_count "true" ; + vamp:unit "" ; + vamp:bin_count 24 ; + vamp:bin_names ( "A (bass)" "Bb (bass)" "B (bass)" "C (bass)" "C# (bass)" "D (bass)" "Eb (bass)" "E (bass)" "F (bass)" "F# (bass)" "G (bass)" "Ab (bass)" "A" "Bb" "B" "C" "C#" "D" "Eb" "E" "F" "F#" "G" "Ab"); +# vamp:computes_event_type ; +# vamp:computes_feature ; +# vamp:computes_signal_type ; + . +plugbase:tuning a vamp:Plugin ; + dc:title "Tuning" ; + vamp:name "Tuning" ; + dc:description """This plugin provides a number of features derived from a log-frequency amplitude spectrum of the DFT: some variants of the log-frequency spectrum, including a semitone spectrum derived from approximate transcription using the NNLS algorithm; based on this semitone spectrum, chroma features and a simple chord estimate.""" ; + foaf:maker [ foaf:name "Matthias Mauch" ] ; # FIXME could give plugin author's URI here + dc:rights """GPL""" ; +# cc:license ; + vamp:identifier "tuning" ; + vamp:vamp_API_version vamp:api_version_2 ; + owl:versionInfo "1" ; + vamp:input_domain vamp:FrequencyDomain ; + + + vamp:parameter plugbase:tuning_param_preset ; + vamp:parameter plugbase:tuning_param_rollon ; + vamp:parameter plugbase:tuning_param_tuningmode ; + vamp:parameter plugbase:tuning_param_chromanormalize ; + + vamp:output plugbase:tuning_output_tuning ; + vamp:output plugbase:tuning_output_localtuning ; + . +plugbase:tuning_param_preset a vamp:QuantizedParameter ; + vamp:identifier "preset" ; + dc:title "preset" ; + dc:format "" ; + vamp:min_value 0 ; + vamp:max_value 3 ; + vamp:unit "" ; + vamp:quantize_step 1 ; + vamp:default_value 0 ; + vamp:value_names ( "polyphonic pop" "polyphonic pop (fast)" "solo keyboard" "manual"); + . +plugbase:tuning_param_rollon a vamp:Parameter ; + vamp:identifier "rollon" ; + dc:title "spectral roll-on" ; + dc:format "" ; + vamp:min_value 0 ; + vamp:max_value 1 ; + vamp:unit "" ; + vamp:default_value 0 ; + vamp:value_names (); + . +plugbase:tuning_param_tuningmode a vamp:QuantizedParameter ; + vamp:identifier "tuningmode" ; + dc:title "tuning mode" ; + dc:format "" ; + vamp:min_value 0 ; + vamp:max_value 1 ; + vamp:unit "" ; + vamp:quantize_step 1 ; + vamp:default_value 0 ; + vamp:value_names ( "global tuning" "local tuning"); + . +plugbase:tuning_param_chromanormalize a vamp:QuantizedParameter ; + vamp:identifier "chromanormalize" ; + dc:title "chroma normalization" ; + dc:format "" ; + vamp:min_value 0 ; + vamp:max_value 3 ; + vamp:unit "" ; + vamp:quantize_step 1 ; + vamp:default_value 0 ; + vamp:value_names ( "none" "maximum norm" "L1 norm" "L2 norm"); + . +plugbase:tuning_output_tuning a vamp:SparseOutput ; + vamp:identifier "tuning" ; + dc:title "Tuning" ; + dc:description """The concert pitch.""" ; + vamp:fixed_bin_count "true" ; + vamp:unit "Hz" ; + a vamp:KnownExtentsOutput ; + vamp:min_value 427.47 ; + vamp:max_value 452.89 ; + vamp:bin_count 0 ; + vamp:sample_type vamp:VariableSampleRate ; + vamp:sample_rate 9.06382e-30 ; +# vamp:computes_event_type ; +# vamp:computes_feature ; +# vamp:computes_signal_type ; + . +plugbase:tuning_output_localtuning a vamp:DenseOutput ; + vamp:identifier "localtuning" ; + dc:title "Local Tuning" ; + dc:description """Tuning based on the history up to this timestamp.""" ; + vamp:fixed_bin_count "true" ; + vamp:unit "Hz" ; + a vamp:KnownExtentsOutput ; + vamp:min_value 427.47 ; + vamp:max_value 452.89 ; + vamp:bin_count 1 ; +# vamp:computes_event_type ; +# vamp:computes_feature ; +# vamp:computes_signal_type ; + . +