Chris@1: Chris@1: Chris@1: Chris@1: Chris@3: Chris@6: Chris@6: Chris@1: VampPluginSDK: _VampPluginDescriptor Struct Reference Chris@1: Chris@6: Chris@6: Chris@1: Chris@1: Chris@6: Chris@1: Chris@1: Chris@6: Chris@1: Chris@1: Chris@6:
Chris@1:
Chris@1: Chris@1: Chris@1: Chris@6: Chris@1: Chris@1: Chris@1:
Chris@1:
VampPluginSDK Chris@6:  2.7 Chris@1:
Chris@1:
Chris@1:
Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6:
Chris@1:
Chris@1: Chris@1:
Chris@1:
Chris@1:
Chris@1: Chris@1:
Chris@1:
Chris@1: Chris@1:
Chris@1:
_VampPluginDescriptor Struct Reference
Chris@3:
Chris@1:
Chris@3: Chris@1:

#include <vamp.h>

Chris@1: Chris@6: Chris@3: Chris@6: Chris@6: Chris@3: Chris@6: Chris@6: Chris@3: Chris@6: Chris@6: Chris@3: Chris@6: Chris@6: Chris@3: Chris@6: Chris@6: Chris@3: Chris@6: Chris@6: Chris@3: Chris@6: Chris@6: Chris@3: Chris@6: Chris@6: Chris@3: Chris@6: Chris@6: Chris@3: Chris@6: Chris@6: Chris@3: Chris@6: Chris@6: Chris@3: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@6: Chris@1:

Chris@1: Public Attributes

unsigned int vampApiVersion
 API version with which this descriptor is compatible. More...
 
const char * identifier
 Computer-usable name of the plugin. More...
 
const char * name
 Human-readable name of the plugin. More...
 
const char * description
 Human-readable short text about the plugin. More...
 
const char * maker
 Human-readable name of plugin's author or vendor. More...
 
int pluginVersion
 Version number of the plugin. More...
 
const char * copyright
 Human-readable summary of copyright or licensing for plugin. More...
 
unsigned int parameterCount
 Number of parameter inputs. More...
 
const VampParameterDescriptor ** parameters
 Fixed descriptors for parameter inputs. More...
 
unsigned int programCount
 Number of programs. More...
 
const char ** programs
 Fixed names for programs. More...
 
VampInputDomain inputDomain
 Preferred input domain for audio input (time or frequency). More...
 
VampPluginHandle(* instantiate )(const struct _VampPluginDescriptor *, float inputSampleRate)
 Create and return a new instance of this plugin. More...
 
void(* cleanup )(VampPluginHandle)
 Destroy an instance of this plugin. More...
 
int(* initialise )(VampPluginHandle, unsigned int inputChannels, unsigned int stepSize, unsigned int blockSize)
 Initialise an instance following parameter configuration. More...
 
void(* reset )(VampPluginHandle)
 Reset an instance, ready to use again on new input data. More...
 
float(* getParameter )(VampPluginHandle, int)
 Get a parameter value. More...
 
void(* setParameter )(VampPluginHandle, int, float)
 Set a parameter value. More...
 
unsigned int(* getCurrentProgram )(VampPluginHandle)
 Get the current program (if programCount > 0). More...
 
void(* selectProgram )(VampPluginHandle, unsigned int)
 Set the current program. More...
 
unsigned int(* getPreferredStepSize )(VampPluginHandle)
 Get the plugin's preferred processing window increment in samples. More...
 
unsigned int(* getPreferredBlockSize )(VampPluginHandle)
 Get the plugin's preferred processing window size in samples. More...
 
unsigned int(* getMinChannelCount )(VampPluginHandle)
 Get the minimum number of input channels this plugin can handle. More...
 
unsigned int(* getMaxChannelCount )(VampPluginHandle)
 Get the maximum number of input channels this plugin can handle. More...
 
unsigned int(* getOutputCount )(VampPluginHandle)
 Get the number of feature outputs (distinct sets of results). More...
 
VampOutputDescriptor *(* getOutputDescriptor )(VampPluginHandle, unsigned int)
 Get a descriptor for a given feature output. More...
 
void(* releaseOutputDescriptor )(VampOutputDescriptor *)
 Destroy a descriptor for a feature output. More...
 
VampFeatureList *(* process )(VampPluginHandle, const float *const *inputBuffers, int sec, int nsec)
 Process an input block and return a set of features. More...
 
VampFeatureList *(* getRemainingFeatures )(VampPluginHandle)
 Return any remaining features at the end of processing. More...
 
void(* releaseFeatureSet )(VampFeatureList *)
 Release a feature set returned from process or getRemainingFeatures. More...
 
Chris@6:

Detailed Description

Chris@1:
Chris@6:

Definition at line 248 of file vamp.h.

Chris@6:

Member Data Documentation

Chris@6: Chris@6:

◆ vampApiVersion

Chris@6: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@6: Chris@1: Chris@1:
unsigned int _VampPluginDescriptor::vampApiVersion
Chris@6:
Chris@1: Chris@1:

API version with which this descriptor is compatible.

Chris@1: Chris@6:

Definition at line 251 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@6: Chris@6:

◆ identifier

Chris@6: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@6: Chris@1: Chris@1:
const char* _VampPluginDescriptor::identifier
Chris@6:
Chris@1: Chris@1:

Computer-usable name of the plugin.

Chris@6:

Must not change. [a-zA-Z0-9_-]

Chris@1: Chris@6:

Definition at line 254 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@6: Chris@6:

◆ name

Chris@6: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@6: Chris@1: Chris@1:
const char* _VampPluginDescriptor::name
Chris@6:
Chris@1: Chris@1:

Human-readable name of the plugin.

Chris@1:

May be translatable.

Chris@1: Chris@6:

Definition at line 257 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@6: Chris@6:

◆ description

Chris@6: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@6: Chris@1: Chris@1:
const char* _VampPluginDescriptor::description
Chris@6:
Chris@1: Chris@1:

Human-readable short text about the plugin.

Chris@1:

May be translatable.

Chris@1: Chris@6:

Definition at line 260 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@6: Chris@6:

◆ maker

Chris@6: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@6: Chris@1: Chris@1:
const char* _VampPluginDescriptor::maker
Chris@6:
Chris@1: Chris@1:

Human-readable name of plugin's author or vendor.

Chris@1: Chris@6:

Definition at line 263 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@6: Chris@6:

◆ pluginVersion

Chris@6: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@6: Chris@1: Chris@1:
int _VampPluginDescriptor::pluginVersion
Chris@6:
Chris@1: Chris@1:

Version number of the plugin.

Chris@1: Chris@6:

Definition at line 266 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@6: Chris@6:

◆ copyright

Chris@6: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@6: Chris@1: Chris@1:
const char* _VampPluginDescriptor::copyright
Chris@6:
Chris@1: Chris@1:

Human-readable summary of copyright or licensing for plugin.

Chris@1: Chris@6:

Definition at line 269 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@6: Chris@6:

◆ parameterCount

Chris@6: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@6: Chris@1: Chris@1:
unsigned int _VampPluginDescriptor::parameterCount
Chris@6:
Chris@1: Chris@1:

Number of parameter inputs.

Chris@1: Chris@6:

Definition at line 272 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@6: Chris@6:

◆ parameters

Chris@6: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@6: Chris@1: Chris@1:
const VampParameterDescriptor** _VampPluginDescriptor::parameters
Chris@6:
Chris@1: Chris@1:

Fixed descriptors for parameter inputs.

Chris@1: Chris@6:

Definition at line 275 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@6: Chris@6:

◆ programCount

Chris@6: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@6: Chris@1: Chris@1:
unsigned int _VampPluginDescriptor::programCount
Chris@6:
Chris@1: Chris@1:

Number of programs.

Chris@1: Chris@6:

Definition at line 278 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@6: Chris@6:

◆ programs

Chris@6: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@6: Chris@1: Chris@1:
const char** _VampPluginDescriptor::programs
Chris@6:
Chris@1: Chris@1:

Fixed names for programs.

Chris@1: Chris@6:

Definition at line 281 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@6: Chris@6:

◆ inputDomain

Chris@6: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@6: Chris@1: Chris@1:
VampInputDomain _VampPluginDescriptor::inputDomain
Chris@6:
Chris@1: Chris@1:

Preferred input domain for audio input (time or frequency).

Chris@1: Chris@6:

Definition at line 284 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@6: Chris@6:

◆ instantiate

Chris@6: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@6: Chris@1: Chris@1:
VampPluginHandle(* _VampPluginDescriptor::instantiate) (const struct _VampPluginDescriptor *, float inputSampleRate)
Chris@6:
Chris@1: Chris@1:

Create and return a new instance of this plugin.

Chris@1: Chris@6:

Definition at line 287 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@6: Chris@6:

◆ cleanup

Chris@6: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@6: Chris@1: Chris@1:
void(* _VampPluginDescriptor::cleanup) (VampPluginHandle)
Chris@6:
Chris@1: Chris@1:

Destroy an instance of this plugin.

Chris@1: Chris@6:

Definition at line 291 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@6: Chris@6:

◆ initialise

Chris@6: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@6: Chris@1: Chris@1:
int(* _VampPluginDescriptor::initialise) (VampPluginHandle, unsigned int inputChannels, unsigned int stepSize, unsigned int blockSize)
Chris@6:
Chris@1: Chris@1:

Initialise an instance following parameter configuration.

Chris@1: Chris@6:

Definition at line 294 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@6: Chris@6:

◆ reset

Chris@6: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@6: Chris@1: Chris@1:
void(* _VampPluginDescriptor::reset) (VampPluginHandle)
Chris@6:
Chris@1: Chris@1:

Reset an instance, ready to use again on new input data.

Chris@1: Chris@6:

Definition at line 300 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@6: Chris@6:

◆ getParameter

Chris@6: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@6: Chris@1: Chris@1:
float(* _VampPluginDescriptor::getParameter) (VampPluginHandle, int)
Chris@6:
Chris@1: Chris@1:

Get a parameter value.

Chris@1: Chris@6:

Definition at line 303 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@6: Chris@6:

◆ setParameter

Chris@6: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@6: Chris@1: Chris@1:
void(* _VampPluginDescriptor::setParameter) (VampPluginHandle, int, float)
Chris@6:
Chris@1: Chris@1:

Set a parameter value.

Chris@1:

May only be called before initialise.

Chris@1: Chris@6:

Definition at line 306 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@6: Chris@6:

◆ getCurrentProgram

Chris@6: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@6: Chris@1: Chris@1:
unsigned int(* _VampPluginDescriptor::getCurrentProgram) (VampPluginHandle)
Chris@6:
Chris@1: Chris@1:

Get the current program (if programCount > 0).

Chris@1: Chris@6:

Definition at line 309 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@6: Chris@6:

◆ selectProgram

Chris@6: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@6: Chris@1: Chris@1:
void(* _VampPluginDescriptor::selectProgram) (VampPluginHandle, unsigned int)
Chris@6:
Chris@1: Chris@1:

Set the current program.

Chris@1:

May only be called before initialise.

Chris@1: Chris@6:

Definition at line 312 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@6: Chris@6:

◆ getPreferredStepSize

Chris@6: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@6: Chris@1: Chris@1:
unsigned int(* _VampPluginDescriptor::getPreferredStepSize) (VampPluginHandle)
Chris@6:
Chris@1: Chris@1:

Get the plugin's preferred processing window increment in samples.

Chris@1: Chris@6:

Definition at line 315 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@6: Chris@6:

◆ getPreferredBlockSize

Chris@6: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@6: Chris@1: Chris@1:
unsigned int(* _VampPluginDescriptor::getPreferredBlockSize) (VampPluginHandle)
Chris@6:
Chris@1: Chris@1:

Get the plugin's preferred processing window size in samples.

Chris@1: Chris@6:

Definition at line 318 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@6: Chris@6:

◆ getMinChannelCount

Chris@6: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@6: Chris@1: Chris@1:
unsigned int(* _VampPluginDescriptor::getMinChannelCount) (VampPluginHandle)
Chris@6:
Chris@1: Chris@1:

Get the minimum number of input channels this plugin can handle.

Chris@1: Chris@6:

Definition at line 321 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@6: Chris@6:

◆ getMaxChannelCount

Chris@6: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@6: Chris@1: Chris@1:
unsigned int(* _VampPluginDescriptor::getMaxChannelCount) (VampPluginHandle)
Chris@6:
Chris@1: Chris@1:

Get the maximum number of input channels this plugin can handle.

Chris@1: Chris@6:

Definition at line 324 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@6: Chris@6:

◆ getOutputCount

Chris@6: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@6: Chris@1: Chris@1:
unsigned int(* _VampPluginDescriptor::getOutputCount) (VampPluginHandle)
Chris@6:
Chris@1: Chris@1:

Get the number of feature outputs (distinct sets of results).

Chris@1: Chris@6:

Definition at line 327 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@6: Chris@6:

◆ getOutputDescriptor

Chris@6: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@6: Chris@1: Chris@1:
VampOutputDescriptor*(* _VampPluginDescriptor::getOutputDescriptor) (VampPluginHandle, unsigned int)
Chris@6:
Chris@1: Chris@1:

Get a descriptor for a given feature output.

Chris@1:

Returned pointer is valid only until next call to getOutputDescriptor for this handle, or releaseOutputDescriptor for this descriptor. Host must call releaseOutputDescriptor after use.

Chris@1: Chris@6:

Definition at line 333 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@6: Chris@6:

◆ releaseOutputDescriptor

Chris@6: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@6: Chris@1: Chris@1:
void(* _VampPluginDescriptor::releaseOutputDescriptor) (VampOutputDescriptor *)
Chris@6:
Chris@1: Chris@1:

Destroy a descriptor for a feature output.

Chris@1: Chris@6:

Definition at line 337 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@6: Chris@6:

◆ process

Chris@6: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@6: Chris@1: Chris@1:
VampFeatureList*(* _VampPluginDescriptor::process) (VampPluginHandle, const float *const *inputBuffers, int sec, int nsec)
Chris@6:
Chris@1: Chris@1:

Process an input block and return a set of features.

Chris@1:

Returned pointer is valid only until next call to process, getRemainingFeatures, or cleanup for this handle, or releaseFeatureSet for this feature set. Host must call releaseFeatureSet after use.

Chris@1: Chris@6:

Definition at line 344 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@6: Chris@6:

◆ getRemainingFeatures

Chris@6: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@6: Chris@1: Chris@1:
VampFeatureList*(* _VampPluginDescriptor::getRemainingFeatures) (VampPluginHandle)
Chris@6:
Chris@1: Chris@1:

Return any remaining features at the end of processing.

Chris@1: Chris@6:

Definition at line 350 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@6: Chris@6:

◆ releaseFeatureSet

Chris@6: Chris@1:
Chris@1:
Chris@1: Chris@1: Chris@6: Chris@1: Chris@1:
void(* _VampPluginDescriptor::releaseFeatureSet) (VampFeatureList *)
Chris@6:
Chris@1: Chris@1:

Release a feature set returned from process or getRemainingFeatures.

Chris@1: Chris@6:

Definition at line 353 of file vamp.h.

Chris@1: Chris@1:
Chris@1:
Chris@1:
The documentation for this struct was generated from the following file: Chris@3:
Chris@6:
Chris@6: Chris@6: Chris@1: Chris@1: