CREPE Alternatives
Looking for an alternative to CREPE? It's cNN-based monophonic pitch (f0) tracker with state-of-the-art accuracy. Below are 9 other audio analysis tools for making music with code — how each compares, and when it's the better choice. Every option is verified against its own source.
Heads up: CREPE is no longer actively maintained (last activity 2024), so a maintained alternative below may be the safer long-term pick.
| Alternative | Language | License | Best for |
|---|---|---|---|
| aubioC library with Python bindings for onset, pitch, beat and tempo detection. | Python | GPL-3.0-or-later | Lightweight real-time note-onset, pitch, and tempo detection. |
| Basic PitchLightweight neural audio-to-MIDI converter with polyphonic note and pitch-bend detection.↔ head-to-head vs CREPE | Python | Apache-2.0 | Converting monophonic or polyphonic recordings into MIDI for editing or composition. |
| EssentiaC++ library with Python bindings for audio analysis and music description algorithms. | Python | AGPL-3.0-only | Comprehensive, production-scale audio feature extraction and music description. |
| librosaPython package for music and audio analysis: feature extraction, beat tracking, and spectrograms. | Python | ISC | Music information retrieval and audio feature extraction for research and ML. |
| thebeatPython package for generating, visualizing and analyzing rhythms and temporal sequences. | Python | GPL-3.0 | Cognitive/behavioral timing and rhythm-perception experiments. |
| torchaudioPyTorch's audio library: I/O, datasets, and transforms (spectrograms, MFCC) for audio ML. | Python | BSD-2-Clause | Audio feature extraction and dataset/transform pipelines within PyTorch ML. |
| FluCoMaToolkit bringing signal decomposition, audio descriptors and ML to Max, Pure Data and SuperCollider. | Max / Pd / SuperCollider | BSD-3-Clause | Corpus-based/concatenative synthesis and machine listening in creative-coding environments. |
| wavesurfer.jsRenders interactive audio waveforms with playback, regions, spectrogram and timeline plugins. | JavaScript | BSD-3-Clause | Building audio players and editors that need visual waveforms and region editing. |
| madmominactivePython MIR library with neural-network models for beat, downbeat and onset detection. | Python | BSD-2-Clause | Research-grade beat, downbeat, and onset detection with pretrained models. |
Notable picks
aubio
C library with Python bindings for onset, pitch, beat and tempo detection. Best for lightweight real-time note-onset, pitch, and tempo detection.
Basic Pitch
Lightweight neural audio-to-MIDI converter with polyphonic note and pitch-bend detection. Best for converting monophonic or polyphonic recordings into MIDI for editing or composition. Versus CREPE: unlike CREPE it's actively maintained. Compare head-to-head →
Essentia
C++ library with Python bindings for audio analysis and music description algorithms. Best for comprehensive, production-scale audio feature extraction and music description.
librosa
Python package for music and audio analysis: feature extraction, beat tracking, and spectrograms. Best for music information retrieval and audio feature extraction for research and ML.
thebeat
Python package for generating, visualizing and analyzing rhythms and temporal sequences. Best for cognitive/behavioral timing and rhythm-perception experiments.
Related Python tools
Other Python tools worth a look, from adjacent categories.