## Overview of Terms

An alphabetical index of the ontology terms, divided into classes, properties and individuals. All the terms are hyperlinked to their detailed description for quick reference.

Classes: | Configuration | DenseOutput | Feature | InputDomain | Parameter | ParameterDescriptor | Plugin | PluginDescription | PluginLibrary | PluginOutput | PluginProgram | SampleType | SparseOutput | TrackLevelOutput | Transform | TransformType |

Properties: | available_plugin | bin_count | bin_names | block_size | computes_feature_type | default_value | duration | engine | fixed_bin_count | identifier | input_domain | max_value | min_value | name | output_descriptor | parameter | parameter_descriptor | plugin_description | program | quantized_step | sample_rate | sample_type | start | step_size | transform_type | unit | value | vamp_API_version | window_type |

Individuals: | Effect | FeatureExtraction | FixedSampleRate | OneSamplePerStep | VariableSampleRate | frequency_domain | time_domain |

## Classes

### Class: vamp:Configuration - unstable -

Configuration - For extension (SV implementation of Transform).

[back to top]

in-range-of: | program

### Class: vamp:DenseOutput - unstable -

DenseOutput - Specific output type comprising large binary data (e.g.: chromagram).

[back to top]

sub-class-of: | PluginOutput

### Class: vamp:Feature - deprecated -

Feature - This may be removed mighty soon as we rely on the Audio Features Ontology for this

[back to top]

### Class: vamp:InputDomain - stable -

InputDomain - Plugins warn about the input domain they require so the host can convert properly the input data. Note that this is not necessary if the host is using a PluginAdapter to wrap plugins (see Vamp doc).

[back to top]

in-range-of: | input_domain

### Class: vamp:Parameter - unstable -

Parameter - Parameter used by the plugin transform to set up the plugin. The parameter class instances should be instantiated according to the specific vamp:PluginDescriptor instance for each plugin.

[back to top]

in-range-of: | parameter
in-domain-of: | value | parameter_descriptor

### Class: vamp:ParameterDescriptor - stable -

ParameterDescriptor - Descriptior of a plugin parameter. Hosts require to know about the specific type and form of the parameters of a particular plugin for a correct transform setup.

[back to top]

in-range-of: | default_value | min_value | max_value | parameter_descriptor
in-domain-of: | quantized_step | unit | identifier

### Class: vamp:Plugin - stable -

Plugin - Vamp plugin is an implementation of a feature extraction algorithm based on the Vamp API.

[back to top]

in-range-of: | engine | available_plugin
in-domain-of: | input_domain | output_descriptor | parameter_descriptor | plugin_description

### Class: vamp:PluginDescription - unstable -

PluginDescription - The plugin descriptor provides basic metadata of the plugin. We may remove this and link directly to the plugin instance.

[back to top]

in-range-of: | plugin_description
in-domain-of: | vamp_API_version | name | identifier

### Class: vamp:PluginLibrary - stable -

PluginLibrary - Library of Vamp Plugins. This may need to include rights.

[back to top]

in-domain-of: | available_plugin

### Class: vamp:PluginOutput - unstable -

PluginOutput - Descriptior of the plugin output. This descriptor provides necessary information to interpret correctly the output features. The output type will determine how to read the temporal information of the extracted feature and how to manage the burden of ouput data.

[back to top]

in-range-of: | min_value | max_value | output_descriptor
in-domain-of: | computes_feature_type | sample_type | bin_names | bin_count | quantized_step | sample_rate | unit | fixed_bin_count | identifier

### Class: vamp:PluginProgram - unstable -

PluginProgram - Plugin program defines a predefined context of parameters. We may not need a concept for this and just a property linking a string representing the program name.

[back to top]

in-range-of: | program
in-domain-of: | identifier

### Class: vamp:SampleType - stable -

SampleType - Sample type specifies the temporal information of the plugin output. This information should be confronted with the output type for a correct interpretation.

[back to top]

in-range-of: | sample_type

### Class: vamp:SparseOutput - unstable -

SparseOutput - Specific output type used in sparse data outputs (e.g.: key detector).

[back to top]

sub-class-of: | PluginOutput

### Class: vamp:TrackLevelOutput - unstable -

TrackLevelOutput - Specific output type that returns track level information. This sort of output will require a "hacky" interpretation of the feature timestamp as it will reflect some track metadata instead of temporal data.

[back to top]

sub-class-of: | PluginOutput

### Class: vamp:Transform - stable -

Transform - The Transform defines the environment of any audio processing computation.

[back to top]

in-domain-of: | duration | start | window_type | transform_type | block_size | step_size | parameter | program | engine | sample_rate | identifier

### Class: vamp:TransformType - unstable -

TransformType - Specifies the type of transform. May be feature extraction, effect...

[back to top]

## Properties

### Property: vamp:available_plugin - stable -

available_plugin - Available plugins in the library

Domain: | PluginLibrary
Range: | Plugin

### Property: vamp:bin_count - unstable -

bin_count - Number of elements of the bin output. This information is necessary to define the output as belonging to a specific subclass of Plugin Output.

Domain: | PluginOutput
Range:

### Property: vamp:bin_names - unstable -

bin_names - List of bin names if available

Domain: | PluginOutput
Range:

### Property: vamp:block_size - stable -

block_size - Specifies the block size for the framing.

Domain: | Transform
Range:

### Property: vamp:computes_feature_type - unstable -

computes_feature_type - Feature Types output by the plugin. Links the vamp ontology to the audio features ontology.

Domain: | PluginOutput
Range: | af:AudioFeature

### Property: vamp:default_value - unstable -

default_value - Default value of the parameter

Domain:
Range: | ParameterDescriptor

### Property: vamp:duration - unstable -

duration - Specifies temporal information when processing a data stream.

Domain: | Transform
Range:

### Property: vamp:engine - stable -

engine - Specifies the plugin in execution. This is an extension to use Transform with other plugin libraries

Domain: | Transform
Range: | Plugin

### Property: vamp:fixed_bin_count - unstable -

fixed_bin_count - Fixed bin count. A boolean type.

Domain: | PluginOutput
Range:

### Property: vamp:identifier - stable -

identifier - Machine-readable identifier for Vamp plugin classes (and Transform).

Domain: | Transform | ParameterDescriptor | PluginOutput | PluginProgram | PluginDescription
Range:

### Property: vamp:input_domain - stable -

input_domain - Input domain allowed by the plugin (time or frequency).

Domain: | Plugin
Range: | InputDomain

### Property: vamp:max_value - unstable -

max_value - Maximum value of the parameter range

Domain:
Range: | PluginOutput | ParameterDescriptor

### Property: vamp:min_value - unstable -

min_value - Minimum value of the parameter range

Domain:
Range: | PluginOutput | ParameterDescriptor

### Property: vamp:name - stable -

name - Human-readable identifier for the plugin.

Domain: | PluginDescription
Range:

### Property: vamp:output_descriptor - stable -

output_descriptor - Links each output type to the plugin.

Domain: | Plugin
Range: | PluginOutput

### Property: vamp:parameter - stable -

parameter - Specifies the parameter to set the plugin in execution.

Domain: | Transform
Range: | Parameter

### Property: vamp:parameter_descriptor - stable -

parameter_descriptor - Links each parameter descriptor to the plugin.

Domain: | Parameter | Plugin
Range: | ParameterDescriptor

### Property: vamp:parameter_descriptor - stable -

parameter_descriptor - Specifies exactly the type of descriptor to set in the transform by linking it.

Domain: | Parameter | Plugin
Range: | ParameterDescriptor

### Property: vamp:plugin_description - stable -

plugin_description - Links the plugin descriptor to the plugin (it may be redundant for an RDF decription to have a plugin descriptor in between an actual plugin and its properties).

Domain: | Plugin
Range: | PluginDescription

### Property: vamp:program - stable -

program - Extension for configuration.

Domain: | Transform
Range: | Configuration | PluginProgram

### Property: vamp:program - stable -

program - Specifies the program to set the plugin in execution. Here the plugin program matches with the one in the plugin descriptor. There is not descriptor required for the program (just a string), is it?

Domain: | Transform
Range: | Configuration | PluginProgram

### Property: vamp:quantized_step - unstable -

quantized_step - Quantized step (if any). We do not include isQuantized.

Domain: | ParameterDescriptor | PluginOutput
Range:

### Property: vamp:sample_rate - stable -

sample_rate - Specifies the sample rate if it is not constant.

Domain: | Transform | PluginOutput
Range:

### Property: vamp:sample_rate - stable -

sample_rate - Sample rate of the output if any. Should be read depending on SampleType and Output classes.

Domain: | Transform | PluginOutput
Range:

### Property: vamp:sample_rate - unstable -

sample_rate - Specifies the sample rate if it is not constant.

Domain: | Transform | PluginOutput
Range:

### Property: vamp:sample_rate - unstable -

sample_rate - Sample rate of the output if any. Should be read depending on SampleType and Output classes.

Domain: | Transform | PluginOutput
Range:

### Property: vamp:sample_type - unstable -

sample_type - The sample type specifies the temporal information of the output.

Domain: | PluginOutput
Range: | SampleType

### Property: vamp:start - unstable -

start - Specifies temporal information when processing a data stream.

Domain: | Transform
Range:

### Property: vamp:step_size - stable -

step_size - Specifies the step size for the framing.

Domain: | Transform
Range:

### Property: vamp:transform_type - unstable -

transform_type - Specifies the transform type (we could do this by subclassin transform instead of using a property).

Domain: | Transform
Range:

### Property: vamp:unit - unstable -

unit - Unit of the output/parameter. A string type

Domain: | ParameterDescriptor | PluginOutput
Range:

### Property: vamp:value - stable -

value - Specifies the current value of the parameter.

Domain: | Parameter
Range:

### Property: vamp:vamp_API_version - stable -

vamp_API_version - Version of the Vamp API used to implement this plugin.

Domain: | PluginDescription
Range:

### Property: vamp:window_type - unstable -

window_type - Specifies the window type (they should be individuals and clearly not here).

Domain: | Transform
Range:

## Individuals

### Individual: Effect -

Effect - Effect transform. This may be just a subclass of Transform...

Class: | vamp:TransformType

### Individual: FeatureExtraction -

Feature Extraction - Feature extraction transform. This may be just a subclass of Transform...

Class: | vamp:TransformType