fingerstory/chord-service
0
Finger Story — Chord Recognition Service
Wraps the BTC model (Bi-directional Transformer for Chord recognition, ISMIR 2019) as a small HTTP API. CPU-only.
Endpoints
GET /— health check.POST /analyze— multipart form fieldfile(audio: mp3/wav/m4a). Returns:
{ "chords": [ { "start": 2.685, "end": 4.074, "chord": "F#:7" }, ... ], "count": 42 }Notes
- Large-vocabulary model: 170 chord classes (maj/min, 7, maj7, min7, sus, etc.).
- Quality ≈ Chordify level on typical pop/rock; best on clean (e.g. solo guitar) audio.
- Deploy: Hugging Face Spaces (Docker SDK) free CPU tier, or any container host (Render/Railway/Fly).
- The BTC code + pretrained weights are fetched and patched at build time (see
Dockerfile).
