A program and plugin framework for generating images from audio files, using Vamp audio analysis plugins
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
debian
plugins
.gitignore
COPYING
GUI.cpp
GUI.h
Makefile
PNGWriter.cpp
PNGWriter.h
README.md
VampHost.cpp
VampHost.h
Vampeyer.cpp
VisHost.cpp
VisHost.h
VisPlugin.h
system.h

README.md

Vampeyer beta

A program and plugin framework for generating images from audio files, using Vamp audio analysis plugins.

An image is generated by analysing an audio file with one or more Vamp plugins and passing the output to a Vampeyer plugin which draws the image. The Vampeyer plugin defines which Vamp plugins it requires.

Installing dependencies

For the host:

sudo apt-get install libpng12-dev libsndfile1-dev vamp-plugin-sdk libvamp-hostsdk3 libfltk1.3-dev libtclap-dev

For the example plugins:

sudo apt-get install libcairo2-dec libvamp-hostsdk3

Building and installing the software

To build and install the host, run the following in the project directory:

make
sudo make install

To build the example plugins, run make in the plugins directory. Each Vampeyer plugin depends on one or more Vamp plugins being installed. The example plugins depend on the BBC Vamp plugin collection which should be installed in your Vamp plugin system folder.

Using the host

Run vampeyer --help to see the full list of command line options. A number of example commands are listed below.

Display the waveform of audio.wav in a window:

vampeyer -p plugins/Waveform.so audio.wav

Save the waveform of audio.wav as audio.png:

vampeyer -p plugins/Waveform.so -o audio.png audio.wav

Save a 1000x200 pixel waveform of audio.wav as audio.png:

vampeyer -p plugins/Waveform.so -s 1000x200 -o audio.png audio.wav

Creating a plugin

The easiest way to create your own plugin is to copy and modify plugins/Template.cpp.

Your plugin can be compiled using the following command:

g++ -shared -fPIC -I<path> YourPlugin.cpp -o YourPlugin.so

where <path> is the location of Vampeyer.h. If your code has any library dependencies (such as Cairo), remember to add the -l argument (e.g. -lcairo)

License

See COPYING

Authors

Copyright

Copyright 2014 British Broadcasting Corporation

Some code is derived from example Vamp host code, which is Copyright 2006 Chris Cannam, Copyright 2007-2008 QMUL.