What it is
mot is an open source project to create a music sight-reading tutoring application.It is still in early stages of development, but the goals are:
- Load a score and display the user's part in the correct notation for a selected instrument
- Synthesize and play an accompaniment
- Check and correct the user's performance, recorded through the microphone input or MIDI connection
What it looks like
Here is a screenshot of the controls and part of the score display. Not shown are the cursor and "corrections".
How it works
The core part of mot is written in C, using aubio pitch and onset detection library to detect when the user plays a note & accomplishing synthesis thanks to fluidsynth, both engines routed through portaudio.Meanwhile the high-level logic is implemented in python. The computing musicology library music21 takes care of the musical logic & score I/O, while UI & event handling is handled by the popular wxPython toolkit.