cannam@149: @prefix rdfs: . cannam@149: @prefix xsd: . cannam@149: @prefix vamp: . cannam@149: @prefix plugbase: . cannam@149: @prefix owl: . cannam@149: @prefix dc: . cannam@149: @prefix af: . cannam@149: @prefix foaf: . cannam@149: @prefix cc: . cannam@149: @prefix : <> . cannam@149: cannam@149: <> a vamp:PluginDescription ; cannam@149: foaf:maker ; cannam@149: foaf:primaryTopic . cannam@149: cannam@149: :vamp-example-plugins a vamp:PluginLibrary ; cannam@219: vamp:identifier "vamp-example-plugins" ; cannam@219: foaf:page ; cannam@219: vamp:available_plugin plugbase:amplitudefollower ; cannam@219: vamp:available_plugin plugbase:fixedtempo ; cannam@219: vamp:available_plugin plugbase:percussiononsets ; cannam@219: vamp:available_plugin plugbase:spectralcentroid ; cannam@219: vamp:available_plugin plugbase:zerocrossing ; cannam@219: . cannam@149: cannam@149: plugbase:amplitudefollower a vamp:Plugin ; cannam@149: dc:title "Amplitude Follower" ; cannam@149: vamp:name "Amplitude Follower" ; cannam@149: dc:description "Track the amplitude of the audio signal" ; cannam@154: foaf:maker [ foaf:name "Vamp SDK Example Plugins" ] ; # FIXME could give plugin author's URI here cannam@224: cc:license ; cannam@224: dc:rights "Freely redistributable (BSD license)" ; cannam@149: vamp:identifier "amplitudefollower" ; cannam@219: vamp:vamp_API_version vamp:api_version_2 ; cannam@149: owl:versionInfo "1" ; cannam@149: vamp:input_domain vamp:TimeDomain ; cannam@149: cannam@158: vamp:parameter plugbase:amplitudefollower_param_attack ; cannam@158: vamp:parameter plugbase:amplitudefollower_param_release ; cannam@149: cannam@172: vamp:output plugbase:amplitudefollower_output_amplitude ; cannam@149: . cannam@158: plugbase:amplitudefollower_param_attack a vamp:Parameter ; cannam@149: vamp:identifier "attack" ; cannam@149: dc:title "Attack time" ; cannam@149: dc:format "s" ; cannam@149: vamp:min_value 0 ; cannam@149: vamp:max_value 1 ; cannam@149: vamp:unit "s" ; cannam@149: vamp:default_value 0.01 ; cannam@149: vamp:value_names (); cannam@149: . cannam@158: plugbase:amplitudefollower_param_release a vamp:Parameter ; cannam@149: vamp:identifier "release" ; cannam@149: dc:title "Release time" ; cannam@149: dc:format "s" ; cannam@149: vamp:min_value 0 ; cannam@149: vamp:max_value 1 ; cannam@149: vamp:unit "s" ; cannam@149: vamp:default_value 0.01 ; cannam@149: vamp:value_names (); cannam@149: . cannam@149: plugbase:amplitudefollower_output_amplitude a vamp:DenseOutput ; cannam@149: vamp:identifier "amplitude" ; cannam@149: dc:title "Amplitude" ; cannam@149: dc:description "" ; cannam@149: vamp:fixed_bin_count "true" ; cannam@149: vamp:unit "V" ; cannam@149: vamp:bin_count 1 ; cannam@149: vamp:bin_names ( ""); cannam@219: vamp:computes_signal_type af:Signal ; cannam@219: . cannam@219: plugbase:fixedtempo a vamp:Plugin ; cannam@219: dc:title "Simple Fixed Tempo Estimator" ; cannam@219: vamp:name "Simple Fixed Tempo Estimator" ; cannam@219: dc:description "Study a short section of audio and estimate its tempo, assuming the tempo is constant" ; cannam@219: foaf:maker [ foaf:name "Vamp SDK Example Plugins" ] ; # FIXME could give plugin author's URI here cannam@224: cc:license ; cannam@224: dc:rights "Freely redistributable (BSD license)" ; cannam@219: vamp:identifier "fixedtempo" ; cannam@219: vamp:vamp_API_version vamp:api_version_2 ; cannam@219: owl:versionInfo "1" ; cannam@219: vamp:input_domain vamp:FrequencyDomain ; cannam@219: cannam@219: vamp:output plugbase:fixedtempo_output_tempo ; cannam@219: vamp:output plugbase:fixedtempo_output_candidates ; cannam@219: vamp:output plugbase:fixedtempo_output_detectionfunction ; cannam@219: vamp:output plugbase:fixedtempo_output_acf ; cannam@219: vamp:output plugbase:fixedtempo_output_filtered_acf ; cannam@219: . cannam@219: plugbase:fixedtempo_output_tempo a vamp:SparseOutput ; cannam@219: vamp:identifier "tempo" ; cannam@219: dc:title "Tempo" ; cannam@219: dc:description "Estimated tempo" ; cannam@219: vamp:fixed_bin_count "true" ; cannam@219: vamp:unit "bpm" ; cannam@219: vamp:bin_count 1 ; cannam@219: vamp:bin_names ( ""); cannam@219: vamp:sample_type vamp:VariableSampleRate ; cannam@219: vamp:computes_event_type af:Tempo ; cannam@219: . cannam@219: plugbase:fixedtempo_output_candidates a vamp:SparseOutput ; cannam@219: vamp:identifier "candidates" ; cannam@219: dc:title "Tempo candidates" ; cannam@219: dc:description "Possible tempo estimates, one per bin with the most likely in the first bin" ; cannam@219: vamp:fixed_bin_count "false" ; cannam@219: vamp:unit "bpm" ; cannam@219: vamp:sample_type vamp:VariableSampleRate ; cannam@219: vamp:computes_event_type af:Tempo ; cannam@219: . cannam@219: plugbase:fixedtempo_output_detectionfunction a vamp:DenseOutput ; cannam@219: vamp:identifier "detectionfunction" ; cannam@219: dc:title "Detection Function" ; cannam@219: dc:description "Onset detection function" ; cannam@219: vamp:fixed_bin_count "true" ; cannam@219: vamp:unit "" ; cannam@219: a vamp:KnownExtentsOutput ; cannam@219: vamp:min_value 0 ; cannam@219: vamp:max_value 1 ; cannam@219: vamp:bin_count 1 ; cannam@219: vamp:bin_names ( ""); cannam@219: vamp:computes_signal_type af:OnsetDetectionFunction ; cannam@219: . cannam@219: plugbase:fixedtempo_output_acf a vamp:DenseOutput ; cannam@219: vamp:identifier "acf" ; cannam@219: dc:title "Autocorrelation Function" ; cannam@219: dc:description "Autocorrelation of onset detection function" ; cannam@219: vamp:fixed_bin_count "true" ; cannam@219: vamp:unit "r" ; cannam@219: vamp:bin_count 1 ; cannam@219: vamp:bin_names ( ""); cannam@219: vamp:computes_signal_type af:Signal ; cannam@219: . cannam@219: plugbase:fixedtempo_output_filtered_acf a vamp:DenseOutput ; cannam@219: vamp:identifier "filtered_acf" ; cannam@219: dc:title "Filtered Autocorrelation" ; cannam@219: dc:description "Filtered autocorrelation of onset detection function" ; cannam@219: vamp:fixed_bin_count "true" ; cannam@219: vamp:unit "r" ; cannam@219: vamp:bin_count 1 ; cannam@219: vamp:bin_names ( ""); cannam@219: vamp:computes_signal_type af:Signal ; cannam@149: . cannam@149: plugbase:percussiononsets a vamp:Plugin ; cannam@149: dc:title "Simple Percussion Onset Detector" ; cannam@149: vamp:name "Simple Percussion Onset Detector" ; cannam@149: dc:description "Detect percussive note onsets by identifying broadband energy rises" ; cannam@154: foaf:maker [ foaf:name "Vamp SDK Example Plugins" ] ; # FIXME could give plugin author's URI here cannam@224: cc:license ; cannam@224: dc:rights "Freely redistributable (BSD license)" ; cannam@149: vamp:identifier "percussiononsets" ; cannam@219: vamp:vamp_API_version vamp:api_version_2 ; cannam@149: owl:versionInfo "2" ; cannam@149: vamp:input_domain vamp:FrequencyDomain ; cannam@149: cannam@158: vamp:parameter plugbase:percussiononsets_param_threshold ; cannam@158: vamp:parameter plugbase:percussiononsets_param_sensitivity ; cannam@149: cannam@172: vamp:output plugbase:percussiononsets_output_onsets ; cannam@172: vamp:output plugbase:percussiononsets_output_detectionfunction ; cannam@149: . cannam@158: plugbase:percussiononsets_param_threshold a vamp:Parameter ; cannam@149: vamp:identifier "threshold" ; cannam@149: dc:title "Energy rise threshold" ; cannam@149: dc:format "dB" ; cannam@149: vamp:min_value 0 ; cannam@149: vamp:max_value 20 ; cannam@149: vamp:unit "dB" ; cannam@149: vamp:default_value 3 ; cannam@149: vamp:value_names (); cannam@149: . cannam@158: plugbase:percussiononsets_param_sensitivity a vamp:Parameter ; cannam@149: vamp:identifier "sensitivity" ; cannam@149: dc:title "Sensitivity" ; cannam@149: dc:format "%" ; cannam@149: vamp:min_value 0 ; cannam@149: vamp:max_value 100 ; cannam@149: vamp:unit "%" ; cannam@149: vamp:default_value 40 ; cannam@149: vamp:value_names (); cannam@149: . cannam@149: plugbase:percussiononsets_output_onsets a vamp:SparseOutput ; cannam@149: vamp:identifier "onsets" ; cannam@149: dc:title "Onsets" ; cannam@149: dc:description "Percussive note onset locations" ; cannam@149: vamp:fixed_bin_count "true" ; cannam@149: vamp:unit "" ; cannam@149: vamp:bin_count 0 ; cannam@149: vamp:bin_names (); cannam@149: vamp:sample_type vamp:VariableSampleRate ; cannam@219: vamp:computes_event_type af:Onset ; cannam@149: . cannam@149: plugbase:percussiononsets_output_detectionfunction a vamp:DenseOutput ; cannam@149: vamp:identifier "detectionfunction" ; cannam@149: dc:title "Detection Function" ; cannam@149: dc:description "Broadband energy rise detection function" ; cannam@149: vamp:fixed_bin_count "true" ; cannam@149: vamp:unit "" ; cannam@149: a vamp:QuantizedOutput ; cannam@149: vamp:quantize_step 1 ; cannam@149: vamp:bin_count 1 ; cannam@149: vamp:bin_names ( ""); cannam@219: vamp:computes_signal_type af:OnsetDetectionFunction ; cannam@149: . cannam@149: plugbase:spectralcentroid a vamp:Plugin ; cannam@149: dc:title "Spectral Centroid" ; cannam@149: vamp:name "Spectral Centroid" ; cannam@149: dc:description "Calculate the centroid frequency of the spectrum of the input signal" ; cannam@154: foaf:maker [ foaf:name "Vamp SDK Example Plugins" ] ; # FIXME could give plugin author's URI here cannam@224: cc:license ; cannam@224: dc:rights "Freely redistributable (BSD license)" ; cannam@149: vamp:identifier "spectralcentroid" ; cannam@219: vamp:vamp_API_version vamp:api_version_2 ; cannam@149: owl:versionInfo "2" ; cannam@149: vamp:input_domain vamp:FrequencyDomain ; cannam@149: cannam@172: vamp:output plugbase:spectralcentroid_output_logcentroid ; cannam@172: vamp:output plugbase:spectralcentroid_output_linearcentroid ; cannam@149: . cannam@149: plugbase:spectralcentroid_output_logcentroid a vamp:DenseOutput ; cannam@149: vamp:identifier "logcentroid" ; cannam@149: dc:title "Log Frequency Centroid" ; cannam@149: dc:description "Centroid of the log weighted frequency spectrum" ; cannam@149: vamp:fixed_bin_count "true" ; cannam@149: vamp:unit "Hz" ; cannam@149: vamp:bin_count 1 ; cannam@149: vamp:bin_names ( ""); cannam@219: vamp:computes_signal_type af:LogFrequencyCentroid ; cannam@149: . cannam@149: plugbase:spectralcentroid_output_linearcentroid a vamp:DenseOutput ; cannam@149: vamp:identifier "linearcentroid" ; cannam@149: dc:title "Linear Frequency Centroid" ; cannam@149: dc:description "Centroid of the linear frequency spectrum" ; cannam@149: vamp:fixed_bin_count "true" ; cannam@149: vamp:unit "Hz" ; cannam@149: vamp:bin_count 1 ; cannam@149: vamp:bin_names ( ""); cannam@219: vamp:computes_signal_type af:LinearFrequencyCentroid ; cannam@149: . cannam@149: plugbase:zerocrossing a vamp:Plugin ; cannam@149: dc:title "Zero Crossings" ; cannam@149: vamp:name "Zero Crossings" ; cannam@149: dc:description "Detect and count zero crossing points" ; cannam@154: foaf:maker [ foaf:name "Vamp SDK Example Plugins" ] ; # FIXME could give plugin author's URI here cannam@224: cc:license ; cannam@224: dc:rights "Freely redistributable (BSD license)" ; cannam@149: vamp:identifier "zerocrossing" ; cannam@219: vamp:vamp_API_version vamp:api_version_2 ; cannam@149: owl:versionInfo "2" ; cannam@149: vamp:input_domain vamp:TimeDomain ; cannam@172: vamp:output plugbase:zerocrossing_output_counts ; cannam@172: vamp:output plugbase:zerocrossing_output_zerocrossings ; cannam@149: . cannam@149: plugbase:zerocrossing_output_counts a vamp:DenseOutput ; cannam@149: vamp:identifier "counts" ; cannam@149: dc:title "Zero Crossing Counts" ; cannam@149: dc:description "The number of zero crossing points per processing block" ; cannam@149: vamp:fixed_bin_count "true" ; cannam@149: vamp:unit "crossings" ; cannam@149: a vamp:QuantizedOutput ; cannam@149: vamp:quantize_step 1 ; cannam@149: vamp:bin_count 1 ; cannam@149: vamp:bin_names ( ""); cannam@219: vamp:computes_signal_type af:ZeroCrossingCount ; cannam@149: . cannam@149: plugbase:zerocrossing_output_zerocrossings a vamp:SparseOutput ; cannam@149: vamp:identifier "zerocrossings" ; cannam@149: dc:title "Zero Crossings" ; cannam@149: dc:description "The locations of zero crossing points" ; cannam@149: vamp:fixed_bin_count "true" ; cannam@149: vamp:unit "" ; cannam@149: a vamp:QuantizedOutput ; cannam@149: vamp:quantize_step 1 ; cannam@149: vamp:bin_count 0 ; cannam@149: vamp:bin_names (); cannam@149: vamp:sample_type vamp:VariableSampleRate ; cannam@219: vamp:computes_event_type af:ZeroCrossing ; cannam@149: . cannam@149: