# HG changeset patch # User Chris Cannam # Date 1386339046 0 # Node ID 2a5c847c31cb70d39deae0cc6b88a84a9be622a4 # Parent 10087ae6d3b259e051661182eb5505817aadb31f Basic RDF diff -r 10087ae6d3b2 -r 2a5c847c31cb pyin.n3 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pyin.n3 Fri Dec 06 14:10:46 2013 +0000 @@ -0,0 +1,247 @@ +@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 . + +:pyin a vamp:PluginLibrary ; + vamp:identifier "pyin" ; + vamp:available_plugin plugbase:pyin ; + vamp:available_plugin plugbase:yin ; + foaf:page ; + . + +plugbase:pyin a vamp:Plugin ; + dc:title "pYin" ; + vamp:name "pYin" ; + dc:description """Monophonic pitch and note tracking based on a probabilistic Yin extension.""" ; + foaf:maker [ foaf:name "Matthias Mauch" ] ; # FIXME could give plugin author's URI here + dc:rights """GPL""" ; +# cc:license ; + vamp:identifier "pyin" ; + vamp:vamp_API_version vamp:api_version_2 ; + owl:versionInfo "1" ; + vamp:input_domain vamp:TimeDomain ; + + vamp:parameter plugbase:pyin_param_threshdistr ; + vamp:parameter plugbase:pyin_param_outputunvoiced ; + + vamp:output plugbase:pyin_output_f0candidates ; + vamp:output plugbase:pyin_output_f0probs ; + vamp:output plugbase:pyin_output_voicedprob ; + vamp:output plugbase:pyin_output_candidatesalience ; + vamp:output plugbase:pyin_output_smoothedpitchtrack ; + vamp:output plugbase:pyin_output_notes ; + . +plugbase:pyin_param_threshdistr a vamp:QuantizedParameter ; + vamp:identifier "threshdistr" ; + dc:title "Yin threshold distribution" ; + dc:format "" ; + vamp:min_value 0 ; + vamp:max_value 7 ; + vamp:unit "" ; + vamp:quantize_step 1 ; + vamp:default_value 2 ; + vamp:value_names ( "Uniform" "Beta (mean 0.10)" "Beta (mean 0.15)" "Beta (mean 0.20)" "Beta (mean 0.30)" "Single Value 0.10" "Single Value 0.15" "Single Value 0.20"); + . +plugbase:pyin_param_outputunvoiced a vamp:QuantizedParameter ; + vamp:identifier "outputunvoiced" ; + dc:title "Output estimates classified as unvoiced?" ; + dc:format "" ; + vamp:min_value 0 ; + vamp:max_value 2 ; + vamp:unit "" ; + vamp:quantize_step 1 ; + vamp:default_value 0 ; + vamp:value_names ( "No" "Yes" "Yes, as negative frequencies"); + . +plugbase:pyin_output_f0candidates a vamp:SparseOutput ; + vamp:identifier "f0candidates" ; + dc:title "F0 Candidates" ; + dc:description """Estimated fundamental frequency candidates.""" ; + vamp:fixed_bin_count "false" ; + vamp:unit "Hz" ; + a vamp:KnownExtentsOutput ; + vamp:min_value 40 ; + vamp:max_value 500 ; + vamp:sample_type vamp:VariableSampleRate ; + vamp:sample_rate 172.266 ; +# vamp:computes_event_type ; +# vamp:computes_feature ; +# vamp:computes_signal_type ; + . +plugbase:pyin_output_f0probs a vamp:SparseOutput ; + vamp:identifier "f0probs" ; + dc:title "Candidate Probabilities" ; + dc:description """Probabilities of estimated fundamental frequency candidates.""" ; + vamp:fixed_bin_count "false" ; + vamp:unit "" ; + a vamp:KnownExtentsOutput ; + vamp:min_value 0 ; + vamp:max_value 1 ; + vamp:sample_type vamp:VariableSampleRate ; + vamp:sample_rate 172.266 ; +# vamp:computes_event_type ; +# vamp:computes_feature ; +# vamp:computes_signal_type ; + . +plugbase:pyin_output_voicedprob a vamp:DenseOutput ; + vamp:identifier "voicedprob" ; + dc:title "Voiced Probability" ; + dc:description """Probability that the signal is voiced according to Probabilistic Yin.""" ; + vamp:fixed_bin_count "true" ; + vamp:unit "" ; + a vamp:KnownExtentsOutput ; + vamp:min_value 0 ; + vamp:max_value 1 ; + vamp:bin_count 1 ; +# vamp:computes_event_type ; +# vamp:computes_feature ; +# vamp:computes_signal_type ; + . +plugbase:pyin_output_candidatesalience a vamp:DenseOutput ; + vamp:identifier "candidatesalience" ; + dc:title "Candidate Salience" ; + dc:description """Candidate Salience""" ; + vamp:fixed_bin_count "true" ; + vamp:unit "" ; + a vamp:KnownExtentsOutput ; + vamp:min_value 0 ; + vamp:max_value 1 ; + vamp:bin_count 1024 ; +# vamp:computes_event_type ; +# vamp:computes_feature ; +# vamp:computes_signal_type ; + . +plugbase:pyin_output_smoothedpitchtrack a vamp:DenseOutput ; + vamp:identifier "smoothedpitchtrack" ; + dc:title "Smoothed Pitch Track" ; + dc:description """.""" ; + vamp:fixed_bin_count "true" ; + vamp:unit "Hz" ; + vamp:bin_count 1 ; +# vamp:computes_event_type ; +# vamp:computes_feature ; +# vamp:computes_signal_type ; + . +plugbase:pyin_output_notes a vamp:SparseOutput ; + vamp:identifier "notes" ; + dc:title "Notes" ; + dc:description """Derived fixed-pitch note frequencies""" ; + vamp:fixed_bin_count "true" ; + vamp:unit "Hz" ; + vamp:bin_count 1 ; + vamp:sample_type vamp:VariableSampleRate ; + vamp:sample_rate 172.266 ; +# vamp:computes_event_type ; +# vamp:computes_feature ; +# vamp:computes_signal_type ; + . +plugbase:yin a vamp:Plugin ; + dc:title "Yin" ; + vamp:name "Yin" ; + dc:description """A vamp implementation of the Yin algorithm for monophonic frequency estimation.""" ; + foaf:maker [ foaf:name "Matthias Mauch" ] ; # FIXME could give plugin author's URI here + dc:rights """GPL""" ; +# cc:license ; + vamp:identifier "yin" ; + vamp:vamp_API_version vamp:api_version_2 ; + owl:versionInfo "1" ; + vamp:input_domain vamp:TimeDomain ; + + vamp:parameter plugbase:yin_param_yinThreshold ; + vamp:parameter plugbase:yin_param_outputunvoiced ; + + vamp:output plugbase:yin_output_f0 ; + vamp:output plugbase:yin_output_periodicity ; + vamp:output plugbase:yin_output_rms ; + vamp:output plugbase:yin_output_salience ; + . +plugbase:yin_param_yinThreshold a vamp:QuantizedParameter ; + vamp:identifier "yinThreshold" ; + dc:title "Yin threshold" ; + dc:format "" ; + vamp:min_value 0.025 ; + vamp:max_value 1 ; + vamp:unit "" ; + vamp:quantize_step 0.025 ; + vamp:default_value 0.15 ; + vamp:value_names (); + . +plugbase:yin_param_outputunvoiced a vamp:QuantizedParameter ; + vamp:identifier "outputunvoiced" ; + dc:title "Output estimates classified as unvoiced?" ; + dc:format "" ; + vamp:min_value 0 ; + vamp:max_value 2 ; + vamp:unit "" ; + vamp:quantize_step 1 ; + vamp:default_value 2 ; + vamp:value_names ( "No" "Yes" "Yes, as negative frequencies"); + . +plugbase:yin_output_f0 a vamp:DenseOutput ; + vamp:identifier "f0" ; + dc:title "Estimated f0" ; + dc:description """Estimated fundamental frequency""" ; + vamp:fixed_bin_count "true" ; + vamp:unit "Hz" ; + a vamp:KnownExtentsOutput ; + vamp:min_value 40 ; + vamp:max_value 500 ; + vamp:bin_count 1 ; +# vamp:computes_event_type ; +# vamp:computes_feature ; +# vamp:computes_signal_type ; + . +plugbase:yin_output_periodicity a vamp:DenseOutput ; + vamp:identifier "periodicity" ; + dc:title "Periodicity" ; + dc:description """by-product of Yin f0 estimation""" ; + vamp:fixed_bin_count "true" ; + vamp:unit "" ; + a vamp:KnownExtentsOutput ; + vamp:min_value 0 ; + vamp:max_value 1 ; + vamp:bin_count 1 ; +# vamp:computes_event_type ; +# vamp:computes_feature ; +# vamp:computes_signal_type ; + . +plugbase:yin_output_rms a vamp:DenseOutput ; + vamp:identifier "rms" ; + dc:title "root mean square" ; + dc:description """Root mean square of the waveform.""" ; + vamp:fixed_bin_count "true" ; + vamp:unit "" ; + a vamp:KnownExtentsOutput ; + vamp:min_value 0 ; + vamp:max_value 1 ; + vamp:bin_count 1 ; +# vamp:computes_event_type ; +# vamp:computes_feature ; +# vamp:computes_signal_type ; + . +plugbase:yin_output_salience a vamp:DenseOutput ; + vamp:identifier "salience" ; + dc:title "Salience" ; + dc:description """Yin Salience""" ; + vamp:fixed_bin_count "true" ; + vamp:unit "" ; + a vamp:KnownExtentsOutput ; + vamp:min_value 0 ; + vamp:max_value 1 ; + vamp:bin_count 1024 ; +# vamp:computes_event_type ; +# vamp:computes_feature ; +# vamp:computes_signal_type ; + . +