The Vamp Plugin Ontology

The Vamp plugin ontology supports the use of Vamp audio feature extraction plugins within the context of semantic web data. It has three purposes:

  • To allow for "offline" description of the structure of a Vamp plugin — providing the same data as is made available to a Vamp host by the plugin itself, but without the need to load and query the plugin. For example, you can encode information about the parameters and outputs of a plugin this way.
  • To allow the association of richer metadata with a plugin — to associate it with other information about its creators, to provide more meaningful licensing information, to permit plugin discovery (for an application to find out that a plugin exists), and to describe what sort of data the plugin produces at a more semantic level than that described by the plugin's own output descriptors (for example to indicate that an output feature is a beat time, rather than an anonymous feature structured so to have a timestamp and no data).
  • To enable the description of plugin "transforms" — the association of a plugin with a complete configuration and execution context for it, containing all of the information a host would need in order to reproduce a particular output data set using the plugin.

The Vamp plugin ontology does not cover the description of feature values returned by a plugin. The appropriate mapping for these is into the Audio Features Ontology, and this is what an RDF-capable host such as Sonic Annotator will produce. You could say the Vamp ontology describes things that a Vamp plugin host might take as input in order to set up its plugins, and the Audio Features ontology describes things that it might produce as output.