Article History

24% kleeder

midi (format)


Point Type:
File Types:
Max Filesize:
MIDI file made by using the Microsoft GS Wavetable SW Synth (MSGS)!
  1. Tools
  2. Restrictions on submit
  3. GS Extension
  4. Playback (for voting)
  5. Render to MP3
  6. See also
Defined in 1982, MIDI is a standard protocol that allows multiple electronic instruments and musical devices to communicate and synchronize with themselves. It is usually (wrongly) associated and conflated with the sound of the Microsoft GS Wavetable Synth, the synthesiser internal to Windows operating systems

A composition saved as a MIDI is a sequence of notes and commands that will be played back by the computer's own MIDI drivers. Since this makes a .mid file much smaller than an audio file, MIDI files have a rich history of use in computer games, software, and websites. The protocol remains in use in professional music production to this day.


Anything that can sequence MIDI notes and (optionally yet preferably) pipe the results to a MIDI output for testing will suffice.
Anyway, a small (and growing) list of tools can be find here.

Restrictions on submit

All MIDIs must be less than 256kb in size and must comply with only the sounds of the Microsoft GS Wavetable Synth. Otherwise, there are no extraneous restrictions to the format, which means you're free to create whatever with the patches provided by the GS Wavetable so long as it fits within the file size limit.

If you normally do not have access to render to MSGS, please use this SF2 soundfont
with your media player.

GS Extension

Since Microsoft GS Wavetable Synth is a chopped-down Roland Sound Canvas SC-55, it has a support for GS extensions such as additional instrument variations (including dog barking sounds!) in the other banks and additional controller events. However, it's disabled by default and won't respond to those extension events at all.

In order to make it respond to GS extensions, you need to send "GS Reset" SysEx message. Which is F0 41 10 42 12 40 00 7F 00 41 F7. So make sure your DAW supports sending them. But don't worry, some MIDI editors such as Domino will automatically do that after you create a new file that targets this system.

Here is the list of instruments you could use after enabling the extension

Playback (for voting)

A variety of tools exist for the sake of MIDI playback, though some of the preferred programs for playback include, but are not limited to:
- Falcosoft Midi Player (FSMP)
(very feature-rich, supports hardware out ports, hosts VSTi, supports multiple SoundFont banks, capable of recording directly to disk, runs in Wine)
- Winamp

- TMIDI Player

Some other cross-platform options include:

- FluidSynth

- TiMidity++

FSMP, FluidSynth and TiMidity++ can be configured to use SF2 soundfonts, including the MSGS soundfont linked above.

Render to MP3

If your DAW supports direct playback of the GS Wavetable within the DAW (e.g. using the Fruity LSD on FL Studio), you can do a render of your entry simply by exporting to MP3. FSMP, FluidSynth and TiMidity++ also have options for rendering to a wave file.

In other cases, a Stereo Mix recording of the MIDI will also suffice so long as the MIDI in question can be played with as little issues (read: few to no dropped notes) as possible.

See also

- Specification of General MIDI and Roland MT-32 patches
- mt32 (format)
- Yamaha XG