|
--- |
|
title: Piano Transcriptor |
|
emoji: 🎹 |
|
colorFrom: yellow |
|
colorTo: green |
|
sdk: gradio |
|
sdk_version: 5.38.0 |
|
app_file: app.py |
|
pinned: false |
|
license: mit |
|
short_description: Audio to MIDI piano transcription tool |
|
--- |
|
|
|
# Piano Transcription Tool: Audio->MIDI |
|
|
|
This tool converts audio recordings of piano performances to MIDI files. |
|
|
|
It uses a deep learning model to detect piano notes in audio and transcribe them to MIDI format. |
|
|
|
It is useful if you have some piece you want to learn, that they have not provided the sheet music for |
|
|
|
Once you have the MIDI it is easy to turn into sheet music. Or drag into PianoTeq and learn it that way |
|
|
|
## Features |
|
- Audio to MIDI conversion |
|
- Support for uploaded audio files |
|
|
|
## Usage |
|
|
|
### Docker |
|
|
|
Two Docker configurations are available: |
|
|
|
#### Standard Version (with GPU support) |
|
|
|
```bash |
|
# Windows |
|
run_docker.bat |
|
|
|
# Linux/Mac |
|
bash run_docker.sh |
|
``` |
|
|
|
|
|
#### Minimal Version (CPU-only) |
|
|
|
```bash |
|
# Windows |
|
run_docker_minimal.bat |
|
|
|
# Linux/Mac |
|
bash run_docker_minimal.sh |
|
``` |
|
|
|
This builds a smaller image but only supports CPU processing, which is slower for transcription. |
|
|
|
### Direct Python Installation |
|
|
|
Run directly with Python after installing the requirements: |
|
|
|
```bash |
|
pip install -r requirements.txt |
|
python app.py |
|
``` |
|
|
|
### UI |
|
|
|
Drag your MP3 or WAV file into the "Upload an audio" component. |
|
|
|
Click Transcribe |
|
|
|
You should get an `output.mid` file in the "Download MIDI" component |
|
|
|
Note the `jazz_sample.mp3` example, a nice 13 second jazz piano clip |