Basic Pitch vs CREPE
Both estimate pitch from audio, and they are not substitutes. Basic Pitch transcribes polyphonic music to MIDI; CREPE tracks a single fundamental with very high accuracy.
Side by side
| Basic Pitch | CREPE | |
|---|---|---|
| Polyphony | Yes | No — monophonic only |
| Output | MIDI notes | Pitch curve over time, with confidence |
| Task | Transcription | Fundamental frequency estimation |
| Pitch bend | Captured | Continuous by nature |
| Typical use | Audio → MIDI for a DAW | Analysis, tuning, synthesis control |
| Weight | Light | Light |
| Language | Python | Python |
| License | Apache-2.0 | MIT |
| Platforms | macOS Windows Linux | macOS Windows Linux |
| First released | 2022 | 2018 |
| Maintained | Yes | Not actively maintained (last activity 2024) |
Where they actually differ
Notes against a curve
Basic Pitch decides where notes start and stop and gives you MIDI. CREPE gives a continuous frequency estimate per frame with a confidence value, and never decides what a "note" is. If you want to open the result in a DAW, that is Basic Pitch; if you want to analyse intonation or drive a synth, that is CREPE.
Polyphony is the hard constraint
CREPE assumes one pitch at a time. Give it a chord and the answer is meaningless. Basic Pitch handles polyphonic material, which is why it works on real recordings.
CREPE is more accurate where it applies
On clean monophonic audio, CREPE’s frame-level accuracy is excellent — better than what you would extract from Basic Pitch’s note output. Precision on a single line is exactly its design goal.
Separation helps both
Running Demucs first to isolate a stem improves results substantially, and it is what makes CREPE usable on material that started out polyphonic.
Which should you choose?
Choose Basic Pitch when…
- You want MIDI from a recording
- The source is polyphonic
- You are moving audio into a DAW
- You want note events, not measurements
Choose CREPE when…
- Your source is a single voice or instrument
- You need a precise, continuous pitch curve
- You are analysing intonation or vibrato
- You are driving synthesis from pitch