Parses MXL to an output to be used on Arduino
Thanks to Shvelo who's Ruby code got me pointed in the right direction https://github.com/shvelo/musicxml_to_arduino
Working Arduino Demo https://github.com/MrRedBeard/Arduino-Music-Demo
This is simple solution with room left to improve.
MXL is an XML format for sheet music. The code allows you to parse the notes, duration and tempo information from the MXL in a format that is easy to place in your Arduino code.
MXL is sometimes PKZipped - app contains neccessary code to unpackage
MXL files often contain multiple voices or sets of notes played together - app accounts for this
Arduino Uno has a limit of file size - app allows you to control how many notes are generated
Arduino Setup
Simple Piezo from an old walkie on pin 8
MXL Sheet Music Source for the sample
https://musescore.com/user/2141731/scores/2462606
Click the following link for a short audio demo via YouTube
https://www.youtube.com/watch?v=GPvD2ShnI3s
MP3 Audio Sample (Download to play)
https://raw.githubusercontent.com/MrRedBeard/DotNet-MXL-Parsing-for-Arduino/master/audioSample.mp3