aubio is a library to label music and sounds. It listens to audio signals and attempts to detect events. For instance, when a drum is hit, at which frequency is a note, or at what tempo is a rhythmic melody.
Its features include segmenting a sound file before each of its attacks, performing pitch detection, tapping the beat and producing midi streams from live audio.
aubio provide several algorithms and routines, including:
- several onset detection methods
- different pitch detection methods
- tempo tracking and beat detection
- MFCC (mel-frequency cepstrum coefficients)
- FFT and phase vocoder
- up/down-sampling
- digital filters (low pass, high pass, and more)
- spectral filtering
- transient/steady-state separation
- sound file read and write access
- various mathematics utilities for music applications
The name aubio comes from audio with a typo: some errors are likely to be found in the results.
A python module for aubio is provided. For more information on how to use it,
please see the file python/README.md
and the
manual .
The python module comes with the following command line tools:
aubio
extracts informations from sound filesaubiocut
slices sound files at onset or beat timestamps
Additional command line tools are included along with the library:
aubioonset
outputs the time stamp of detected note onsetsaubiopitch
attempts to identify a fundamental frequency, or pitch, for each frame of the input soundaubiomfcc
computes Mel-frequency Cepstrum Coefficientsaubiotrack
outputs the time stamp of detected beatsaubionotes
emits midi-like notes, with an onset, a pitch, and a durationaubioquiet
extracts quiet and loud regions
- manual, generated with sphinx
- developer documentation, generated with Doxygen
The latest version of the documentation can be found at:
https://aubio.org/documentation
aubio compiles on Linux, Mac OS X, Windows, Cygwin, and iOS.
To compile aubio, you should be able to simply run:
make
To compile the python module:
./setup.py build
See the manual for more information about installing aubio.
Please use the DOI link above to cite this release in your publications. For more information, see also the about page in aubio manual.
The home page of this project can be found at: https://aubio.org/
aubio is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
Patches are welcome: please fork the latest git repository and create a feature branch. Submitted requests should pass all continuous integration tests.