Vamp SDK version 2.0 is now availableVersion 2.0 of the Vamp plugin SDK is now available.
http://www.vamp-plugins.org/Vamp is a plugin API for audio analysis and feature extraction plugins written in C or C++. Its SDK features an easy-to-use set of C++ classes for plugin and host developers, a reference host implementation, example plugins, and documentation. It is supported across Linux, OS/X and Windows.
A documentation guide to writing plugins using the Vamp SDK can be found at
http://www.vamp-plugins.org/guide.pdf.
What's new in 2.0?- Each returned feature can now specify a proper duration as well as start time, value array, and label.
- A new PluginSummarisingAdapter is provided in the host SDK, permitting hosts to easily obtain summary results such as averages based on a plugin's returned features.
- An RDF ontology is provided for the description of Vamp plugin capabilities and configurations (see http://omras2.org/VampOntology).
- The SDK libraries have been reorganised so as to draw a clearer distinction between plugin and host SDKs.
- Better platform-specific build documentation is provided (in the build directory), particularly for MSVC builds which now also feature project files for the example plugins.
- Two new example plugins have been added (Simple Power Spectrum and Fixed Tempo Estimator).
- The command-line host provided now has an extra-informative plugin information listing option (--list-full).
Backward compatibilityA detailed compatibility statement is included in the SDK, but to summarise:
- Plugins and hosts built with 1.x and 2.0 SDKs are mutually compatible. You can load old plugins in new hosts and new plugins in old hosts.
- Plugins written for 1.x can be compiled against 2.0 without modification.
- Hosts written for 1.x will require some changes to #include directives, but most hosts should compile against 2.0 without other modifications.
- Although the plugin binary interface is compatible with 1.x, the SDK libraries are not binary compatible with the 1.x libraries. Plugins and host code will need to be recompiled if they are to be updated to 2.0, not just re-linked.
CreditsThis work was carried out at the Centre for Digital Music, Queen Mary, University of London. It was funded by the EPSRC through the OMRAS2 project EP/E017614/1. See
http://omras2.org/ for more information.
Chris