Log in


  • The Official MIDI Specifications

    The Official MIDI Specifications


The Spec Section is still under construction, but we're gathering all the MIDI specifications in one central repository.

The plan is to make the specs available for download to MIDI Association members in the near future. Missing something you need ASAP? Let us know using the Contact form on the site



Complete MIDI 1.0 Detailed Specification (7)

The Complete MIDI 1.0 Detailed Specification is for developers, musicians, hobbyists, technicians, or just about anyone who wants to know about the inner workings of MIDI, and includes sections on the following topics: MIDI 1.0 General MIDI 1 (including GM Developer Guidelines) Standard MIDI Files MIDI Show Control MIDI Machine Control MIDI Time Code

General MIDI ("GM") Specifications (4)

Information about the General MIDI 1, General MIDI Lite, and General MIDI 2 Specifications, plus GM Developer Guidelines, and updates.

Standard MIDI Files ("SMF") (2)

Information about the Standard MIDI File (SMF) Specification, and these updates: - SMF Lyrics/Display Meta-events - SMF Program Name /Device Name Meta-events - XMF Patch Prefix SMF Meta-event

External Standards that Incorporate MIDI (2)

A list of the many international standards that reference the MIDI specification

Bluetooth LE MIDI (1)

Bluetooth LE (also called Bluetooth SMART) is a new wireless connection specification supported by iOS and some Android devices. The MMA formed a Working Group to evaluate Bluetooth LE MIDI performance (latency and jitter) and wrote a specification for MIDI over Bluetooth which will enable products from different manufacturers to interoperate.

XMF, DLS and Mobile MIDI Archives (4)

XMF, DLS and Mobile MIDI were technologies developed in the mid 2000s for multimedia and mobile applications. The rapid pace of technology has made the use of these rare as HTML5 audio and Web MIDI replaced them on the web and mobile phones are incredibly powerful now and don't need to utilize the advantages in reduced bandwidth that these specifications provide.

Table 1 Summary of MIDI Message

The following table lists many of the major MIDI messages in numerical (binary) order. This table is intended as an overview of MIDI, and is by no means complete. Additional messages are listed in the printed documentation available from the MMA.

Table 2 - Expanded Messages List (Status Bytes)

The following table lists Status Bytes in binary numerical order (adapted from "MIDI by the Numbers" by D. Valenti, Electronic Musician 2/88, and updated 1995 By the MIDI Manufacturers Association.)

Table 3 - Control Change Messages (Data Bytes)

The following table lists all currently defined Control Change messages and Channel Mode messages, in control number order. (Adapted from "MIDI by the Numbers" by D. Valenti-Electronic Musician 2/88, updated by the MIDI Manufacturers Association.)

Table 4 - Universal System Exclusive Messages

The following table lists all currently defined Universal System Exclusive Messages.
Universal System Exclusive Messages are defined as Real Time or Non-Real Time, and are used for extensions to MIDI that are NOT intended to be manufacturer exclusive (despite the name).

MIDI Tuning Messages

The MIDI Tuning specification allows the sharing of "microtunings" (user-defined scales other than 12-tone equal temperament) among instruments, and the switching of these tunings during real-time performance.

The MIDI Tuning messages include:
  • Bulk Tuning Dump Request (non-real-time)
  • Bulk Tuning Dump (non-real-time)
  • Single-note Tuning Change (real-time)