Coder Social home page Coder Social logo

bbc-vamp-plugins's Introduction

BBC Vamp plugin collection

Introduction

This is a collection of audio feature extraction algorithms written in the Vamp plugin format by BBC Research and Development.

Below is a list of plugins and their outputs. Detailed information about each of the features and the algorithms used is contained in the full documentation, which is available to download from the releases page.

  • Peaks
    1. Peak/trough
  • Energy
    1. RMS energy
    2. RMS energy delta
    3. Moving average
    4. Dip probability
    5. Low energy ratio
  • Intensity
    1. Intensity
    2. Intensity ratio
  • Rhythm
    1. Onset detection curve
    2. Moving average of the onset detection curve
    3. Difference between 1 and 2
    4. Onsets
    5. Average onset frequency
    6. Rhythm strength
    7. Autocorrelation
    8. Mean correlation peak
    9. Peak valley ratio
    10. Tempo
  • Spectral Contrast
    1. Valleys
    2. Peaks
    3. Mean
  • Spectral Flux
    1. Spectral flux
  • Speech/music segmenter
    1. Segmentation
    2. Detection function

Binary installation

Download the correct plugin for your platform from the releases page and extract the contents into the Vamp system plugin folder.

Installation from source

The following instructions are written for Linux and OS X systems. For installing on Windows, please follow the instructions where possible, but refer to this document when compiling.

Dependencies

You will need a working C++ compiler. On OS X this is done by installing XCode. On Debian/Ubuntu, this can be done with the following command:

sudo apt-get install build-essential

The Vamp SDK is required to compile the plugins. Download the main SDK from http://vamp-plugins.org/develop.html and extract the contents. Follow the installation instructions in build/README.linux or build/README.osx.

Configuration

Simply edit 'Makefile.inc' and set VAMP_SDK_DIR to the directory containing the extracted and compiled Vamp SDK.

Compile

With the project's folder as your working directory, compile the plugin using the following command for linux:

make -f Makefile.linux

or the following command for OSX:

make -f Makefile.osx

then install it by moving the plugin, category and RDF files to the system Vamp plugin folder (see here for defaults). Use the following command for linux:

mv bbc-vamp-plugins.so bbc-vamp-plugins.cat bbc-vamp-plugins.n3 /usr/local/lib/vamp/

or the following command for OSX:

mv bbc-vamp-plugins.dylib bbc-vamp-plugins.cat bbc-vamp-plugins.n3 /Library/Audio/Plug-Ins/Vamp/

Documentation

To generate the documentation, install Doxygen and run the following command from the src folder. The documents will appear in doc/html/index.html

doxygen ../bbc-vamp-plugins.doxyfile

Usage

The two primary programs which use Vamp plugins are sonic annotator and sonic visualiser.

Below is an example of how to extract the tempo of an audio file using sonic annotator and default settings:

sonic-annotator -d vamp:bbc-vamp-plugins:bbc-rhythm:tempo audio.wav -w csv --csv-stdout

Further reading

Licensing terms and authorship

Please refer to the 'COPYING' and 'AUTHORS' files.

bbc-vamp-plugins's People

Contributors

chrisbaume avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.