Go to the documentation of this file.
37 #ifndef VAMP_HEADER_INCLUDED
38 #define VAMP_HEADER_INCLUDED
53 #define VAMP_API_VERSION 2
288 float inputSampleRate);
295 unsigned int inputChannels,
296 unsigned int stepSize,
297 unsigned int blockSize);
345 const float *
const *inputBuffers,
377 (
unsigned int hostApiVersion,
unsigned int index);
382 (
unsigned int,
unsigned int);
unsigned int(* getMaxChannelCount)(VampPluginHandle)
Get the maximum number of input channels this plugin can handle.
const char * unit
Human-readable unit of the parameter.
const char * copyright
Human-readable summary of copyright or licensing for plugin.
VampSampleType sampleType
Time positioning method for returned results (see VampSampleType).
unsigned int binCount
Number of values per result, if hasFixedBinCount.
const char * identifier
Computer-usable name of the output.
float quantizeStep
Quantization resolution for returned results, if isQuantized.
int sec
Seconds component of timestamp.
VampPluginHandle(* instantiate)(const struct _VampPluginDescriptor *, float inputSampleRate)
Create and return a new instance of this plugin.
const char ** binNames
Names of returned value bins, if hasFixedBinCount.
void(* releaseFeatureSet)(VampFeatureList *)
Release a feature set returned from process or getRemainingFeatures.
const char ** programs
Fixed names for programs.
struct _VampOutputDescriptor VampOutputDescriptor
float quantizeStep
Quantization resolution, if isQuantized.
unsigned int parameterCount
Number of parameter inputs.
int hasDuration
1 if the feature has a duration.
const char * identifier
Computer-usable name of the plugin.
int isQuantized
1 if parameter values are quantized to a particular resolution.
int hasTimestamp
1 if the feature has a timestamp (i.e.
unsigned int(* getCurrentProgram)(VampPluginHandle)
Get the current program (if programCount > 0).
const char * unit
Human-readable name of the unit of the output.
const VampParameterDescriptor ** parameters
Fixed descriptors for parameter inputs.
int durationNsec
Nanoseconds component of duration.
unsigned int valueCount
Number of values.
VampInputDomain inputDomain
Preferred input domain for audio input (time or frequency).
const VampPluginDescriptor * vampGetPluginDescriptor(unsigned int hostApiVersion, unsigned int index)
Get the descriptor for a given plugin index in this library.
const char ** valueNames
Human-readable names of the values, if isQuantized.
void(* selectProgram)(VampPluginHandle, unsigned int)
Set the current program.
unsigned int(* getOutputCount)(VampPluginHandle)
Get the number of feature outputs (distinct sets of results).
void(* cleanup)(VampPluginHandle)
Destroy an instance of this plugin.
struct _VampFeature VampFeature
float * values
Values for this returned sample.
VampFeatureUnion * features
Features in this feature list.
float defaultValue
Default value.
C language API for Vamp plugins.
@ vampVariableSampleRate
Returned results have their own individual timestamps.
int hasDuration
1 if the returned results for this output are known to have a duration field.
int isQuantized
1 if returned results are quantized to a particular resolution.
int(* initialise)(VampPluginHandle, unsigned int inputChannels, unsigned int stepSize, unsigned int blockSize)
Initialise an instance following parameter configuration.
int hasKnownExtents
1 if each returned value falls within the same fixed min/max range.
unsigned int featureCount
Number of features in this feature list.
const char * name
Human-readable name of the output.
unsigned int vampApiVersion
API version with which this descriptor is compatible.
void(* setParameter)(VampPluginHandle, int, float)
Set a parameter value.
@ vampFixedSampleRate
Returned results are evenly spaced at samplerate specified below.
struct _VampFeatureV2 VampFeatureV2
unsigned int(* getPreferredStepSize)(VampPluginHandle)
Get the plugin's preferred processing window increment in samples.
const char * description
Human-readable short text about the plugin.
const char * name
Human-readable name of the plugin.
char * label
Label for this returned sample.
void(* releaseOutputDescriptor)(VampOutputDescriptor *)
Destroy a descriptor for a feature output.
struct _VampFeatureList VampFeatureList
unsigned int(* getMinChannelCount)(VampPluginHandle)
Get the minimum number of input channels this plugin can handle.
struct _VampPluginDescriptor VampPluginDescriptor
const char * identifier
Computer-usable name of the parameter.
const char * description
Human-readable short text about the output.
int hasFixedBinCount
1 if output has equal number of values for each returned result.
float(* getParameter)(VampPluginHandle, int)
Get a parameter value.
float maxValue
Maximum value.
int durationSec
Seconds component of duratiion.
unsigned int programCount
Number of programs.
@ vampOneSamplePerStep
Each process call returns results aligned with call's block start.
void(* reset)(VampPluginHandle)
Reset an instance, ready to use again on new input data.
union _VampFeatureUnion VampFeatureUnion
const char * description
Human-readable short text about the parameter.
int nsec
Nanoseconds component of timestamp.
int pluginVersion
Version number of the plugin.
const char * name
Human-readable name of the parameter.
struct _VampParameterDescriptor VampParameterDescriptor
C language API for Vamp plugins.
const char * maker
Human-readable name of plugin's author or vendor.
float sampleRate
Sample rate of returned results, if sampleType is vampFixedSampleRate.
unsigned int(* getPreferredBlockSize)(VampPluginHandle)
Get the plugin's preferred processing window size in samples.
float minValue
Minimum value.
float minValue
Minimum value for a returned result in any bin, if hasKnownExtents.
float maxValue
Maximum value for a returned result in any bin, if hasKnownExtents.