Skip to content

DavidWeed/DotNet-MXL-Parsing-for-Arduino

 
 

Repository files navigation

DotNet-MXL-Parsing-for-Arduino

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

This is not a pretty or complete solution. It was just enough to get what I wanted done and was written in a very short amount of time.

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

App ScreenShot


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

About

Parses MXL to an output to be used on Arduino

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C# 83.0%
  • Other 17.0%