view examples/vamp-example-plugins.n3 @ 354:e85513153c71

Initialise rate to 0. Otherwise there's a danger plugins will change the SampleType (e.g. to VariableSampleRate) but not set the rate because they don't think they need it (when in fact it needs to be set to 0)
author Chris Cannam
date Thu, 28 Mar 2013 15:49:17 +0000
parents 93c81a6c917a
children 57cc0f0c20ff
line wrap: on
line source
@prefix rdfs:     <http://www.w3.org/2000/01/rdf-schema#> .
@prefix xsd:      <http://www.w3.org/2001/XMLSchema#> .
@prefix vamp:     <http://purl.org/ontology/vamp/> .
@prefix plugbase: <http://vamp-plugins.org/rdf/plugins/vamp-example-plugins#> .
@prefix owl:      <http://www.w3.org/2002/07/owl#> .
@prefix dc:       <http://purl.org/dc/elements/1.1/> .
@prefix af:       <http://purl.org/ontology/af/> .
@prefix foaf:     <http://xmlns.com/foaf/0.1/> .
@prefix cc:       <http://web.resource.org/cc/> .
@prefix :         <#> .

<>  a   vamp:PluginDescription ;
    foaf:maker          <http://www.vamp-plugins.org/doap.rdf#template-generator> ;
    foaf:primaryTopic   <http://vamp-plugins.org/rdf/plugins/vamp-example-plugins> .

:vamp-example-plugins a  vamp:PluginLibrary ;
    vamp:identifier "vamp-example-plugins"  ; 
    foaf:page <http://www.vamp-plugins.org/plugin-doc/vamp-example-plugins.html> ;
    vamp:available_plugin plugbase:amplitudefollower ; 
    vamp:available_plugin plugbase:fixedtempo ; 
    vamp:available_plugin plugbase:percussiononsets ; 
    vamp:available_plugin plugbase:powerspectrum ; 
    vamp:available_plugin plugbase:spectralcentroid ; 
    vamp:available_plugin plugbase:zerocrossing ; 
    .

plugbase:amplitudefollower a   vamp:Plugin ;
    dc:title              "Amplitude Follower" ;
    vamp:name             "Amplitude Follower" ;
    dc:description        "Track the amplitude of the audio signal" ;
    foaf:page <http://www.vamp-plugins.org/plugin-doc/vamp-example-plugins.html#amplitudefollower> ;
    foaf:maker            [ foaf:name "Vamp SDK Example Plugins" ] ;
    cc:license            <http://creativecommons.org/licenses/BSD/> ;
    dc:rights             "Freely redistributable (BSD license)" ;
    vamp:identifier       "amplitudefollower" ;
    vamp:vamp_API_version vamp:api_version_2 ;
    owl:versionInfo       "1" ;
    vamp:input_domain     vamp:TimeDomain ;

    vamp:parameter   plugbase:amplitudefollower_param_attack ;
    vamp:parameter   plugbase:amplitudefollower_param_release ;

    vamp:output      plugbase:amplitudefollower_output_amplitude ;
    .
plugbase:amplitudefollower_param_attack a  vamp:Parameter ;
    vamp:identifier     "attack" ;
    dc:title            "Attack time" ;
    dc:format           "s" ;
    vamp:min_value       0 ;
    vamp:max_value       1 ;
    vamp:unit           "s"  ;
    vamp:default_value   0.01 ;
    vamp:value_names     ();
    .
plugbase:amplitudefollower_param_release a  vamp:Parameter ;
    vamp:identifier     "release" ;
    dc:title            "Release time" ;
    dc:format           "s" ;
    vamp:min_value       0 ;
    vamp:max_value       1 ;
    vamp:unit           "s"  ;
    vamp:default_value   0.01 ;
    vamp:value_names     ();
    .
plugbase:amplitudefollower_output_amplitude a  vamp:DenseOutput ;
    vamp:identifier       "amplitude" ;
    dc:title              "Amplitude" ;
    dc:description        ""  ;
    vamp:fixed_bin_count  "true" ;
    vamp:unit             "V" ;
    vamp:bin_count        1 ;
    vamp:bin_names        ( "");
    vamp:computes_signal_type  af:Signal ;
    .
plugbase:fixedtempo a   vamp:Plugin ;
    dc:title              "Simple Fixed Tempo Estimator" ;
    vamp:name             "Simple Fixed Tempo Estimator" ;
    dc:description        "Study a short section of audio and estimate its tempo, assuming the tempo is constant" ;
    foaf:page <http://www.vamp-plugins.org/plugin-doc/vamp-example-plugins.html#fixedtempo> ;
    foaf:maker            [ foaf:name "Vamp SDK Example Plugins" ] ;
    cc:license            <http://creativecommons.org/licenses/BSD/> ;
    dc:rights             "Freely redistributable (BSD license)" ;
    vamp:identifier       "fixedtempo" ;
    vamp:vamp_API_version vamp:api_version_2 ;
    owl:versionInfo       "1" ;
    vamp:input_domain     vamp:FrequencyDomain ;

    vamp:output      plugbase:fixedtempo_output_tempo ;
    vamp:output      plugbase:fixedtempo_output_candidates ;
    vamp:output      plugbase:fixedtempo_output_detectionfunction ;
    vamp:output      plugbase:fixedtempo_output_acf ;
    vamp:output      plugbase:fixedtempo_output_filtered_acf ;
    .
plugbase:fixedtempo_output_tempo a  vamp:SparseOutput ;
    vamp:identifier       "tempo" ;
    dc:title              "Tempo" ;
    dc:description        "Estimated tempo"  ;
    vamp:fixed_bin_count  "true" ;
    vamp:unit             "bpm" ;
    vamp:bin_count        1 ;
    vamp:bin_names        ( "");
    vamp:sample_type      vamp:VariableSampleRate ;
    vamp:computes_event_type   af:Tempo ;
    .
plugbase:fixedtempo_output_candidates a  vamp:SparseOutput ;
    vamp:identifier       "candidates" ;
    dc:title              "Tempo candidates" ;
    dc:description        "Possible tempo estimates, one per bin with the most likely in the first bin"  ;
    vamp:fixed_bin_count  "false" ;
    vamp:unit             "bpm" ;
    vamp:sample_type      vamp:VariableSampleRate ;
    vamp:computes_event_type   af:Tempo ;
    .
plugbase:fixedtempo_output_detectionfunction a  vamp:DenseOutput ;
    vamp:identifier       "detectionfunction" ;
    dc:title              "Detection Function" ;
    dc:description        "Onset detection function"  ;
    vamp:fixed_bin_count  "true" ;
    vamp:unit             "" ;
    a                 vamp:KnownExtentsOutput ;
    vamp:min_value    0  ;
    vamp:max_value    1  ;
    vamp:bin_count        1 ;
    vamp:bin_names        ( "");
    vamp:computes_signal_type  af:OnsetDetectionFunction ;
    .
plugbase:fixedtempo_output_acf a  vamp:DenseOutput ;
    vamp:identifier       "acf" ;
    dc:title              "Autocorrelation Function" ;
    dc:description        "Autocorrelation of onset detection function"  ;
    vamp:fixed_bin_count  "true" ;
    vamp:unit             "r" ;
    vamp:bin_count        1 ;
    vamp:bin_names        ( "");
    vamp:computes_signal_type  af:Signal ;
    .
plugbase:fixedtempo_output_filtered_acf a  vamp:DenseOutput ;
    vamp:identifier       "filtered_acf" ;
    dc:title              "Filtered Autocorrelation" ;
    dc:description        "Filtered autocorrelation of onset detection function"  ;
    vamp:fixed_bin_count  "true" ;
    vamp:unit             "r" ;
    vamp:bin_count        1 ;
    vamp:bin_names        ( "");
    vamp:computes_signal_type  af:Signal ;
    .
plugbase:percussiononsets a   vamp:Plugin ;
    dc:title              "Simple Percussion Onset Detector" ;
    vamp:name             "Simple Percussion Onset Detector" ;
    dc:description        "Detect percussive note onsets by identifying broadband energy rises" ;
    foaf:page <http://www.vamp-plugins.org/plugin-doc/vamp-example-plugins.html#percussiononsets> ;
    foaf:maker            [ foaf:name "Vamp SDK Example Plugins" ] ; 
    cc:license            <http://creativecommons.org/licenses/BSD/> ;
    dc:rights             "Freely redistributable (BSD license)" ;
    vamp:identifier       "percussiononsets" ;
    vamp:vamp_API_version vamp:api_version_2 ;
    owl:versionInfo       "2" ;
    vamp:input_domain     vamp:FrequencyDomain ;

    vamp:parameter   plugbase:percussiononsets_param_threshold ;
    vamp:parameter   plugbase:percussiononsets_param_sensitivity ;

    vamp:output      plugbase:percussiononsets_output_onsets ;
    vamp:output      plugbase:percussiononsets_output_detectionfunction ;
    .
plugbase:percussiononsets_param_threshold a  vamp:Parameter ;
    vamp:identifier     "threshold" ;
    dc:title            "Energy rise threshold" ;
    dc:format           "dB" ;
    vamp:min_value       0 ;
    vamp:max_value       20 ;
    vamp:unit           "dB"  ;
    vamp:default_value   3 ;
    vamp:value_names     ();
    .
plugbase:percussiononsets_param_sensitivity a  vamp:Parameter ;
    vamp:identifier     "sensitivity" ;
    dc:title            "Sensitivity" ;
    dc:format           "%" ;
    vamp:min_value       0 ;
    vamp:max_value       100 ;
    vamp:unit           "%"  ;
    vamp:default_value   40 ;
    vamp:value_names     ();
    .
plugbase:percussiononsets_output_onsets a  vamp:SparseOutput ;
    vamp:identifier       "onsets" ;
    dc:title              "Onsets" ;
    dc:description        "Percussive note onset locations"  ;
    vamp:fixed_bin_count  "true" ;
    vamp:unit             "" ;
    vamp:bin_count        0 ;
    vamp:bin_names        ();
    vamp:sample_type      vamp:VariableSampleRate ;
    vamp:computes_event_type  af:Onset ;
    .
plugbase:percussiononsets_output_detectionfunction a  vamp:DenseOutput ;
    vamp:identifier       "detectionfunction" ;
    dc:title              "Detection Function" ;
    dc:description        "Broadband energy rise detection function"  ;
    vamp:fixed_bin_count  "true" ;
    vamp:unit             "" ;
    a                     vamp:QuantizedOutput ;
    vamp:quantize_step    1  ;
    vamp:bin_count        1 ;
    vamp:bin_names        ( "");
    vamp:computes_signal_type  af:OnsetDetectionFunction ;
    .
plugbase:powerspectrum a   vamp:Plugin ;
    dc:title              "Simple Power Spectrum" ;
    vamp:name             "Simple Power Spectrum" ;
    dc:description        "Return the power spectrum of a signal" ;
    foaf:page <http://www.vamp-plugins.org/plugin-doc/vamp-example-plugins.html#powerspectrum> ;
    foaf:maker            [ foaf:name "Vamp SDK Example Plugins" ] ; 
    cc:license            <http://creativecommons.org/licenses/BSD/> ;
    dc:rights             "Freely redistributable (BSD license)" ;
    vamp:identifier       "powerspectrum" ;
    vamp:vamp_API_version vamp:api_version_2 ;
    owl:versionInfo       "1" ;
    vamp:input_domain     vamp:FrequencyDomain ;

    vamp:output      plugbase:powerspectrum_output_powerspectrum ;
    .
plugbase:powerspectrum_output_powerspectrum a  vamp:DenseOutput ;
    vamp:identifier       "powerspectrum" ;
    dc:title              "Power Spectrum" ;
    dc:description        "Power values of the frequency spectrum bins calculated from the input signal"  ;
    vamp:computes_signal_type  af:Signal ;
    .
plugbase:spectralcentroid a   vamp:Plugin ;
    dc:title              "Spectral Centroid" ;
    vamp:name             "Spectral Centroid" ;
    dc:description        "Calculate the centroid frequency of the spectrum of the input signal" ;
    foaf:page <http://www.vamp-plugins.org/plugin-doc/vamp-example-plugins.html#spectralcentroid> ;
    foaf:maker            [ foaf:name "Vamp SDK Example Plugins" ] ; 
    cc:license            <http://creativecommons.org/licenses/BSD/> ;
    dc:rights             "Freely redistributable (BSD license)" ;
    vamp:identifier       "spectralcentroid" ;
    vamp:vamp_API_version vamp:api_version_2 ;
    owl:versionInfo       "2" ;
    vamp:input_domain     vamp:FrequencyDomain ;

    vamp:output      plugbase:spectralcentroid_output_logcentroid ;
    vamp:output      plugbase:spectralcentroid_output_linearcentroid ;
    .
plugbase:spectralcentroid_output_logcentroid a  vamp:DenseOutput ;
    vamp:identifier       "logcentroid" ;
    dc:title              "Log Frequency Centroid" ;
    dc:description        "Centroid of the log weighted frequency spectrum"  ;
    vamp:fixed_bin_count  "true" ;
    vamp:unit             "Hz" ;
    vamp:bin_count        1 ;
    vamp:bin_names        ( "");
    vamp:computes_signal_type  af:LogFrequencyCentroid ;
    .
plugbase:spectralcentroid_output_linearcentroid a  vamp:DenseOutput ;
    vamp:identifier       "linearcentroid" ;
    dc:title              "Linear Frequency Centroid" ;
    dc:description        "Centroid of the linear frequency spectrum"  ;
    vamp:fixed_bin_count  "true" ;
    vamp:unit             "Hz" ;
    vamp:bin_count        1 ;
    vamp:bin_names        ( "");
    vamp:computes_signal_type  af:LinearFrequencyCentroid ;
    .
plugbase:zerocrossing a   vamp:Plugin ;
    dc:title              "Zero Crossings" ;
    vamp:name             "Zero Crossings" ;
    dc:description        "Detect and count zero crossing points" ;
    foaf:page <http://www.vamp-plugins.org/plugin-doc/vamp-example-plugins.html#zerocrossing> ;
    foaf:maker            [ foaf:name "Vamp SDK Example Plugins" ] ; 
    cc:license            <http://creativecommons.org/licenses/BSD/> ;
    dc:rights             "Freely redistributable (BSD license)" ;
    vamp:identifier       "zerocrossing" ;
    vamp:vamp_API_version vamp:api_version_2 ;
    owl:versionInfo       "2" ;
    vamp:input_domain     vamp:TimeDomain ;
    vamp:output      plugbase:zerocrossing_output_counts ;
    vamp:output      plugbase:zerocrossing_output_zerocrossings ;
    .
plugbase:zerocrossing_output_counts a  vamp:DenseOutput ;
    vamp:identifier       "counts" ;
    dc:title              "Zero Crossing Counts" ;
    dc:description        "The number of zero crossing points per processing block"  ;
    vamp:fixed_bin_count  "true" ;
    vamp:unit             "crossings" ;
    a                     vamp:QuantizedOutput ;
    vamp:quantize_step    1  ;
    vamp:bin_count        1 ;
    vamp:bin_names        ( "");
    vamp:computes_signal_type   af:ZeroCrossingCount ;
    .
plugbase:zerocrossing_output_zerocrossings a  vamp:SparseOutput ;
    vamp:identifier       "zerocrossings" ;
    dc:title              "Zero Crossings" ;
    dc:description        "The locations of zero crossing points"  ;
    vamp:fixed_bin_count  "true" ;
    vamp:unit             "" ;
    a                     vamp:QuantizedOutput ;
    vamp:quantize_step    1  ;
    vamp:bin_count        0 ;
    vamp:bin_names        ();
    vamp:sample_type      vamp:VariableSampleRate ;
    vamp:computes_event_type   af:ZeroCrossing ;
    .