VampPluginSDK 2.10
vamp-simple-host.cpp File Reference
#include <vamp-hostsdk/PluginHostAdapter.h>
#include <vamp-hostsdk/PluginInputDomainAdapter.h>
#include <vamp-hostsdk/PluginLoader.h>
#include <iostream>
#include <fstream>
#include <set>
#include <sndfile.h>
#include <cstring>
#include <cstdlib>
#include "system.h"
#include <cmath>
Include dependency graph for vamp-simple-host.cpp:

Go to the source code of this file.

Classes

class  Plugin
 Vamp::Plugin is a base class for plugin instance classes that provide feature extraction from audio or related data. More...
 
class  PluginHostAdapter
 PluginHostAdapter is a wrapper class that a Vamp host can use to make the C-language VampPluginDescriptor object appear as a C++ Vamp::Plugin object. More...
 
class  PluginLoader
 Vamp::HostExt::PluginLoader is a convenience class for discovering and loading Vamp plugins using the typical plugin-path, library naming, and categorisation conventions described in the Vamp SDK documentation. More...
 
class  PluginWrapper
 PluginWrapper is a simple base class for adapter plugins. More...
 
class  PluginInputDomainAdapter
 PluginInputDomainAdapter is a Vamp plugin adapter that converts time-domain input into frequency-domain input for plugins that need it. More...
 

Macros

#define HOST_VERSION   "1.5"
 

Enumerations

enum  Verbosity { PluginIds , PluginOutputIds , PluginInformation , PluginInformationDetailed }
 

Functions

void printFeatures (int, int, const Plugin::OutputDescriptor &, int, const Plugin::FeatureSet &, ofstream *, bool frames)
 
void transformInput (float *, size_t)
 
void fft (unsigned int, bool, double *, double *, double *, double *)
 
void printPluginPath (bool verbose)
 
void printPluginCategoryList ()
 
void enumeratePlugins (Verbosity)
 
void listPluginsInLibrary (string soname)
 
int runPlugin (string myname, string soname, string id, string output, int outputNo, string inputFile, string outfilename, bool frames)
 
void usage (const char *name)
 
int main (int argc, char **argv)
 
static double toSeconds (const RealTime &time)
 
static string header (string text, int level)
 

Macro Definition Documentation

◆ HOST_VERSION

#define HOST_VERSION   "1.5"

Definition at line 74 of file vamp-simple-host.cpp.

Referenced by main().

Enumeration Type Documentation

◆ Verbosity

enum Verbosity
Enumerator
PluginIds 
PluginOutputIds 
PluginInformation 
PluginInformationDetailed 

Definition at line 76 of file vamp-simple-host.cpp.

Function Documentation

◆ printFeatures()

◆ transformInput()

void transformInput ( float * ,
size_t  )

◆ fft()

void fft ( unsigned int ,
bool ,
double * ,
double * ,
double * ,
double *  )

◆ printPluginPath()

void printPluginPath ( bool verbose)

Definition at line 578 of file vamp-simple-host.cpp.

References PluginHostAdapter::getPluginPath().

Referenced by main().

◆ printPluginCategoryList()

◆ enumeratePlugins()

void enumeratePlugins ( Verbosity verbosity)

Definition at line 609 of file vamp-simple-host.cpp.

References Plugin::OutputDescriptor::binCount, Plugin::OutputDescriptor::binNames, Vamp::PluginBase::ParameterDescriptor::defaultValue, Plugin::OutputDescriptor::description, Vamp::PluginBase::ParameterDescriptor::description, Plugin::OutputDescriptor::FixedSampleRate, Vamp::PluginBase::getCopyright(), Vamp::PluginBase::getDescription(), Vamp::PluginBase::getIdentifier(), Vamp::Plugin::getInputDomain(), PluginLoader::getInstance(), Vamp::HostExt::PluginLoader::getLibraryPathForPlugin(), Vamp::PluginBase::getMaker(), Vamp::Plugin::getMaxChannelCount(), Vamp::Plugin::getMinChannelCount(), Vamp::PluginBase::getName(), Vamp::Plugin::getOutputDescriptors(), Vamp::PluginBase::getParameterDescriptors(), Vamp::HostExt::PluginLoader::getPluginCategory(), Vamp::PluginBase::getPluginVersion(), Vamp::Plugin::getPreferredBlockSize(), Vamp::Plugin::getPreferredStepSize(), Vamp::PluginBase::getVampApiVersion(), Plugin::OutputDescriptor::hasDuration, Plugin::OutputDescriptor::hasFixedBinCount, Plugin::OutputDescriptor::hasKnownExtents, header(), Plugin::OutputDescriptor::identifier, Vamp::PluginBase::ParameterDescriptor::identifier, Plugin::OutputDescriptor::isQuantized, Vamp::PluginBase::ParameterDescriptor::isQuantized, Vamp::HostExt::PluginLoader::listPlugins(), Vamp::HostExt::PluginLoader::loadPlugin(), Plugin::OutputDescriptor::maxValue, Vamp::PluginBase::ParameterDescriptor::maxValue, Plugin::OutputDescriptor::minValue, Vamp::PluginBase::ParameterDescriptor::minValue, Plugin::OutputDescriptor::name, Vamp::PluginBase::ParameterDescriptor::name, Plugin::OutputDescriptor::OneSamplePerStep, PluginIds, PluginInformation, PluginInformationDetailed, PluginOutputIds, Plugin::OutputDescriptor::quantizeStep, Vamp::PluginBase::ParameterDescriptor::quantizeStep, Plugin::OutputDescriptor::sampleRate, Plugin::OutputDescriptor::sampleType, Vamp::Plugin::TimeDomain, Plugin::OutputDescriptor::unit, Vamp::PluginBase::ParameterDescriptor::unit, and Vamp::PluginBase::ParameterDescriptor::valueNames.

Referenced by main().

◆ listPluginsInLibrary()

void listPluginsInLibrary ( string soname)

◆ runPlugin()

◆ usage()

void usage ( const char * name)

Definition at line 95 of file vamp-simple-host.cpp.

References PLUGIN_SUFFIX.

Referenced by main().

◆ main()

◆ toSeconds()

static double toSeconds ( const RealTime & time)
static

Definition at line 501 of file vamp-simple-host.cpp.

References Vamp::RealTime::nsec, and Vamp::RealTime::sec.

Referenced by printFeatures().

◆ header()

static string header ( string text,
int level )
static

Definition at line 598 of file vamp-simple-host.cpp.

Referenced by enumeratePlugins().