
Keyvolution - Piano Sheet Transcription & Playback
Desktop application for real-time transcription of MP3 music into piano sheet music, offering both virtual and physical piano playback support with LED guidance.
Project Overview
Keyvolution is a cross-platform desktop application that transcribes MP3 audio files into playable piano sheet music. It provides an immersive learning experience by supporting both a **virtual piano simulator** and interaction with a **physical piano module** via Arduino and LEDs. The goal is to help users visualize and play transcribed music in an intuitive and guided way.
Technical Development
- Desktop Framework: Built with Electron.js to allow web technologies to run as a native desktop app across platforms.
- UI Styling: Tailwind CSS was used for building a responsive and clean interface.
- Audio Transcription: Spotify’s Basic Pitch model converts MP3 files into MIDI-like JSON structures.
- Backend: Strapi serves as a lightweight CMS for handling saved songs and settings.
- External Module: An API allows connection with an Arduino-based physical piano module using LEDs and buttons (not included in this repository).
Features
The application includes the following key features:
- Audio Upload & Transcription: Users can upload MP3 files and instantly receive piano sheet transcription in visual format.
- Virtual Piano Simulator: A real-time interactive piano UI simulates key presses and timing based on transcription.
- LED Guidance API: An external API (developed in collaboration) sends note data to a hardware module to light up the correct keys on a physical piano.
- Local Testing: All current functionality has been thoroughly tested locally; executable packaging is in preparation.
Highlights
- AI-Powered: Leverages advanced audio analysis using Basic Pitch for accurate transcription.
- Cross-Technology Integration: Combines web, hardware, and audio technologies in a single product.
- Modular Design: UI, transcription engine, and hardware API are clearly separated for scalability.
- Source Code Available on GitHub.
Conclusion
Keyvolution merges creativity, machine learning, and real-world interactivity to bring a fresh approach to music education and transcription. Future steps include packaging the app into an installable `.exe`, refining the user interface, and potentially integrating feedback from physical piano players.