Expand description
§Safe bindings for aubio library
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.
§Crate features
The following features can be used to customize configuration:
- bindgen Force generate bindings itself instead of use pre-generated (useful for unsupported archs)
- builtin Force compile builtin aubio C-library
- pkg-config Use pkg-config to find installed libraries
- shared Build shared aubio C-library
- static Build static aubio C-library
- fftw3 Enable using fftw3 library
When pkg-config feature is used the installed aubio library will be used if found. To force build and link builtin version you can use builtin feature.
Modules§
- Vector data wrappers
Macros§
Structs§
- FFT (Fast Fourier Transformation) object
- Filterbank object.
- Closure logger wrapper
- Logging
- MFCC object
- Recognized note data
- Notes detection object
- Onset detection object
- Phase vocoder object
- Pitch detection object
- Resampler object
- Spectral description object
- Tempo detection object
Enums§
- The error type
- Logging level
- Onset detection function
- Pitch detection method
- Pitch output unit
- Resampling method
- Spectral shape descriptor
- The window function type
Traits§
- The trait for null-terminated string constants
- Log output handler
- Spectral description function
Functions§
- Convert frequency bin to frequency (Hz)
- Convert frequency bin to frequency (Hz)
- Convert frequency bin to midi value
- Compute sound pressure level (SPL) in dB.
- Convert frequency (Hz) to frequency bin
- Convert frequency (Hz) to midi value in range 0..128
- Convert frequency (Hz) to frequency bin
- Convert frequency (Hz) to mel
- Convert frequency (Hz) to mel
- Get buffer level if level >= threshold, 1.0 otherwise
- Compute sound level on a linear scale.
- Convert mel to frequency (Hz)
- Convert mel to frequency (Hz)
- Convert midi value to frequency bin
- Convert midi value in range 0..128 to frequency (Hz)
- Check if buffer level in dB SPL is under a given threshold.
- Compute the principal argument
- Zero-crossing rate (ZCR)
Type Aliases§
- The alias for result type with payload
- Sample data type
- The alias for rusult type without payload