Practical overview
When it fits
Use Basic Pitch when a music-audio file needs to become MIDI or note-event data for further editing or processing, especially when pitch bends and polyphonic transcription matter.
Who it is for
- Musicians and researchers converting recorded music into editable MIDI.
- Developers adding audio-to-MIDI transcription to Python audio-processing workflows.
- Users processing one audio file or batches of files through a command-line interface.
Documented uses
- Convert a compatible music recording into a MIDI file with pitch bends.
- Transcribe several audio files in one command-line run.
- Retrieve model outputs, MIDI data and note events from Python code.
- Save optional WAV renderings, raw model output or note events in additional formats.
Requirements & limits
The library is open source under the Apache-2.0 license and can be installed from PyPI. The repository documents macOS, Windows and Ubuntu support with Python 3.7–3.11; Mac M1 hardware is documented for Python 3.10.
- The tool returns a MIDI interpretation, not a completed musical arrangement.
- The project supports polyphonic instruments but says performance is best with one instrument at a time.
- Model runtimes include TensorFlow, CoreML, TensorFlow Lite and ONNX; default runtime selection varies by platform.
- The Python interface returns raw model output, MIDI data and note events, while CLI flags enable optional WAV, NPZ and CSV outputs.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Install Basic Pitch and transcribe audio from the command line
Install the Python package and generate a MIDI transcription from a compatible audio file.
Before you start
- macOS, Windows or Ubuntu
- Python 3.7, 3.8, 3.9, 3.10 or 3.11
- A compatible audio file and an output directory
Steps
Install the package with the command below.
pip install basic-pitchRun
basic-pitch.For multiple files, add their input paths to the same command; optionally add documented flags to save WAV, NPZ or CSV outputs.
Expected outcome
A MIDI transcription is saved in the chosen output directory; optional formats can also be saved when their flags are used.
Guide limitations
- Basic Pitch works best on one instrument at a time.
- On Mac M1 hardware, the documented supported Python version is 3.10.
- Runtime availability varies by platform and package configuration.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 10 October 2026
- Original website title
- spotify/basic-pitch · Official homepage title · retained in its source language

