Short summary: This is a compatability-only extension that allows for compatibility with the computer's MIDI sound driver, such as Windows computers, Android phones (I think) and so on. This is great for 90's-like PC games, as they often used MIDI, due to its small file size.
How it works: The MIDI extension will have a few blocks available. I made these mockups (I feel like we could keep the red, but IDK) I don't think these should be the only blocks, but these are all I can think of right now.

They are all quite self-explanatory, so I will not explain. I don't know how MIDI's can get imported, but since they are all just strings of code that your computer articulates to generate music, I am guessing you can use the import MIDI
block to add all of the MIDI code into a list that the engine then runs through to send data to the computer to play the audio.
The set instrument bank
block is basically for setting what instruments can and can't be used. I won't be surprised if GM Level 1 and 2 are the only ones that get used, however it would be cool if we could also use the MT-32, GS and XG instrument lists.
And like I said, MIDI files are VERY small. One of the longer ones I have is 131 kilobytes (Most of them are under 80!). A .mp3 that I have which is nearly the exact same length is over 1 megabyte. So, if we add full compatibility to this, we could still have good sounding music, with WAY less file size (especially for big games that rely on music)
This doesn't have to be used, but I do not want to waste over 1 gigabyte of data just because I want to use a lot of GM-sounding music. (Yes, it really is over 1 gigabyte. Man, if only we had full MIDI support which would only make it about 2-5 megabytes!)
1 comment