This is a midi player based on arduino.The arduino control:
A speaker.
SdCard
LCD 16x2.
The concept is that I learn a sdcard files and I show them in the screen. After that, I choose a file which contains a music notes.
I took each note and I change it to Hz frequency using loops.
For more information in this concept, learn about how to convert a electrical signal to sound in google. You will be surprised how it's easy.