Translated version of mary had a little lamb
Original Mary had a little lamb
At the age of 10, three of us had found our true passions in life... Playing trumpet.
However, when learning how to play, we had to endure the immense toil of arduously and meticulously penciling in fingerings for notes. Back in our day, it was impossible to be a beginner and learn to play trumpet quickly.
And that is why, we decided once and for all, at HACKMIT2017, that sheet music with no fingerings must be stopped.
What it does
The snappily named Sheet Music Helper for Beginner Trumpeters takes in a pdf file of a piece of music and quickly generates for the user the same music but with the fingerings for each note written below it.
How we built it
We used the Mac OS Automator and a program called PDFtoMusic Pro to transform the PDF into a MusicXML file. That file was then inputted into a python program which uses the music21 library and lilypad to reconstruct the visual version of the piece, analyzing each note to determine its fingering and include it in the new PDF.
Challenges we ran into
So many... We originally were doing a completely different project with the Microsoft Hololens: an augmented reality fidget spinner. Severe issues even setting up the device and not having access to it at night forced us to scrap it. Afterwards, when trying to find APIs or SDKs to convert PDFs to MusicXML or MIDI files, we realized that there were none available for free or even for a reasonable price. This meant we were forced to use a GUI program (and a free trial at that) to try to make this project work. This is why we had to use the Mac OS automator to at least make the project mostly automatic. However, the program is pretty outdated and the dialog boxes were not cooperating with the Automator. So at one point we did have to manually click through one of the dialog boxes to make the program even work. Also because of this, we didn't get the chance to set up a web app which would've made the project cooler.
Accomplishments that we're proud of
The fact that we got to play around with the Hololens- even though we couldn't really do anything it was really cool to see it in action. The fact that Andrew stayed up for 27 hours straight (and Francisco only napped for 20 minutes). The fact that we didn't give up and at least produced something
What we learned
Programming in Unity is really hard Hololens is really cool Converting from PDF to MusicXML is not a simple task
What's next for Sheet Music Helper for Beginner Trumpeters
If we were to continue this project, here would be some of our next steps: Support for other instruments like flute, saxophone, french horn, trombone, etc. Developing a web app Actually getting an API to do the conversion Using our own algorithm to convert from PDF to MusicXML