skillfed

aubio

a collection of tools for music analysis

aubio v0.4.9 213.3K downloads/30d#9,440 on PyPI
Copyleft license GNU/GPL version 3 Abandoned released

What it is and what it does

aubio is a Python interface to a C-based audio analysis library that extracts musically meaningful features from audio files and streams. It integrates with NumPy and can read from nearly any media format via optional backends like ffmpeg or libsndfile. The library provides onset detection (attack identification), pitch tracking (fundamental frequency estimation), beat and tempo detection, and spectral analysis including Mel-Frequency Cepstrum Coefficients and standard descriptors. It also includes a phase vocoder for time-stretching and can write analysis results to MIDI.

The package is designed for both offline batch analysis and real-time processing, with demos showing integration with audio I/O libraries. However, it has been abandoned since February 2019 with no active maintenance, meaning build issues, compatibility problems with recent Python versions, and unresolved bugs are unlikely to be fixed.

Use it for:

  • Extract onset times and note attacks from audio recordings for music information retrieval or drum transcription.
  • Estimate fundamental frequency and pitch contours from monophonic or polyphonic audio for melody extraction.
  • Detect beat positions and estimate tempo from music files for synchronization or analysis.
  • Compute Mel-Frequency Cepstrum Coefficients and spectral descriptors for machine learning feature sets.
  • Time-stretch audio without changing pitch, or convert detected notes to MIDI files.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

aubio is a Python wrapper around a C library for music and audio analysis, providing tools to detect onsets, track pitch, identify beats, and extract spectral features from audio files and streams.

No, unless you have a specific legacy integration or research requirement. The package is abandoned (last release February 2019), and high installation friction combined with copyleft licensing and no active maintenance makes it risky for new projects. Modern alternatives with active maintenance are available for audio analysis tasks.

Install

aubio on PyPI

pip

pip install aubio

uv

uv add aubio

poetry

poetry add aubio

Installing aubio

Before you install

Installation requires compilation of C extensions, which can be friction-heavy depending on your build environment and available system libraries. The package has been abandoned since 2019 with no recent maintenance, so unresolved build issues or compatibility problems with modern Python versions may not be addressed.

License in practice

aubio is licensed under GNU GPL v3 or later (copyleft). Any software that links to or distributes aubio must also be released under a compatible copyleft license; proprietary or closed-source projects cannot use it without legal risk.

Quickstart

pip install aubio
import aubio
source = aubio.source('audio.wav')
frames, read = source()
print(f'Read {read} samples')

Requires C compiler and development headers for aubio's C extensions. Optional but recommended: ffmpeg, libsndfile, or CoreAudio for audio file reading; NumPy is integrated but not listed as an explicit runtime dependency.

Verify before relying

  • Whether the package builds successfully on Python 3.10+ given its abandoned status since 2019.
  • Current state of optional dependencies (ffmpeg, libsndfile, fftw3, etc.) and whether they are auto-detected or require manual configuration.
  • Whether real-time audio processing (pyaudio, PySoundCard integration) is production-ready or demo-only.

Package facts

License GNU/GPL version 3 (copyleft)
Python support not specified
Install friction high — source build required
Runtime dependencies none
Maintenance abandoned — 2,744 days since the last release
First released
Downloads 213,348/month — #9,440 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: aubio-0.4.9.tar.gz

Development Status :: 4 - BetaEnvironment :: ConsoleIntended Audience :: Science/ResearchLicense :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)Operating System :: MacOS :: MacOS XOperating System :: Microsoft :: WindowsOperating System :: POSIXProgramming Language :: CProgramming Language :: PythonTopic :: Multimedia :: Sound/Audio :: AnalysisTopic :: Multimedia :: Sound/Audio :: Sound SynthesisTopic :: Software Development :: Libraries

Tags

audio analysis pythonpitch detectionbeat detection tempoonset detection musicspectral analysis audiomfcc mel-frequency cepstrumaudio feature extraction
audio-analysismusic-information-retrievalabandoned

More Libraries packages