Inspiration

One of our team members prepared an etude for an oboe audition and was later told he played a wrong note. He realized that he had been playing the wrong note for months and never caught it while practicing. This gave us the idea to somehow track the player's wrong notes and compare it to the score.

What it does

The program takes sheet music and an audio recording as input, tracks the notes in each and compares them. It then tells you if you made any mistakes during your practice session so you know where to improve.

How we built it

We used Crepe in Python to convert a .wav file into a series of frequencies, which we then converted into a list of notes to compare to a score. We also used tf-deep-omr (https://github.com/OMR-Research/tf-end-to-end) which allowed us to recognize musical notes from images of a score.

Challenges we ran into

For two members of our team this was their first hackathon. The environment can feel overwhelming for newcomers, and the prospect of building a project in such a short timespan is daunting. This year in particular due to the remote nature of the event we faced difficulties in communicating effectively as a team.

Accomplishments that we're proud of

We're proud that we were able to get a working prototype of our idea and gain experience with new technologies.

What's next for Perfect Practice

Next steps include tracking mistakes from real-time audio instead of a recording, as well as keeping track of tempo and intonation.

Built With

Share this project:

Updates