This project is dead. Thanks for all the support while I was working on it but I have moved onto other things to develop poorly. If, by some grace, you require lessons on how to be a terrible programmer then the source is available in the linked GitHub below. My final contribution to this project will be my consumption of enough whiskey to forget everything I've learned in Java. Had a couple people ask for a pre-alpha release and so I put up the .jar and source on GitHub. Homepage Download 0.3 JAR GitHub Source MuseScore - Useful third party application to see what's happening in a MIDI file in case of issues. How it works: Place a Note Block Place a Sign facing away from the Note Block with an appropriate [MIDI] or [SEQ] tag Lead redstone wiring to the Sign Activate! Use "/midi stop" if you'd like to end the MIDI before completion. Sign format: Code: [MIDI] filename.mid 1 First line is the midi tag, second line is the midi filename. The .mid file needs to be in a directory under plugins called midi. The final number is the track number. Track numbers are dependant on the MIDI file itself. You'll need enough note blocks to cover all the important tracks. I have a 23 track setup as my test bed and I've found it adequate enough to cover most .mid files I find (Apart from the Duke Nukem theme, which is a whopping 73 tracks!). Right now instrument matching is simplistic and only a few instrument types are guessed. All MIDI MetaMessage events are interpreted for an instrument change and if ahMIDI can find a suitable block sound in Minecraft then the block underneath will be changed. Melodic tracks without a lot of fancy instruments work best at the moment. Code: [SEQ] 1,2,3,4,5,6 First line is the Sequencer tag, second line is the note numbers as per the Minecraft Wiki. Notes will play sequentially with a delay of 200ms each. No method for pause/custom delay at the moment. Issues The code needs work. Dear lord am I ever awful at Java. MIDI tracks do not have a method to sync up with each other so multiple tracks will experience a desync if activated at different times. Sequencers need a pause, repeat and more than one line of notes. More accurate scale matching. Signs currently activate on both turning on and off current. Use a lever to make it work properly until this is resolved. Fixed in 0.2 Here's a demo of the EarthBound credits: A big thanks to: sk89a - Helped with some coding and his example was a big help. DarkGrave - Helped with some early testing demanusflint - For his amazing MIDIcraft work.