Log in

  • The Official MIDI Specifications

    The Official MIDI Specifications

The Complete MIDI 1.0 Detailed Specification

The Complete MIDI 1.0 Detailed Specification captures the state of MIDI as of 1996 and is for developers, hobbyists, technicians, and others who want to know about the inner workings of MIDI, and includes sections on the following topics:

  • MIDI 1.0 (Electrical Specification and Protocol)
  • General MIDI 1 (including GM Developer Guidelines)
  • Standard MIDI Files
  • MIDI Show Control
  • MIDI Machine Control
  • MIDI Time Code

Despite the name, this document is not "complete" as it does not contain the numerous supplements and addenda to the MIDI Specifications which were made after 1996. Those are available separately below and elsewhere on this website and must be consulted to have a current understanding of MIDI technology.

Document Revision History

Though the MIDI Specification is still called "MIDI 1.0" there have been many enhancements and updates made by MMA since the original specification was written in 1982.

Besides creating new MIDI messages for applications like Machine Control and Show Control, there have also been numerous additions and improvements to the "basic" protocol for musical instruments, adding features such as Bank Select, 3D Controllers, and more.

Until 1995 there were five separate documents: the "Detailed MIDI Specification Document Version 4.2" (including MIDI Time Code) , "MIDI Show Control" (aka "MSC"), "MIDI Machine Control" (aka "MMC"), "Standard MIDI Files" (aka "SMF", and "General MIDI Level 1" (aka "GM"). In 1995 these documents were all compiled into one document called the Complete MIDI 1.0 Detailed Specification, which has evolved as follows:

» Version 95.1 -- This was the first edition of the "Complete" document and integrated all of the existing MIDI documents, and correcting some minor errors in each document.

» Version 95.2 - September 1995

  • Added text for redefinition of Device-ID proposal (MMA-0015)
  • Rewrote Universal SysEx ID description which was unclear
  • Moved EOF message (MMA-0011) from p44 into Sample Dump Standard Generic Handshaking Messages (P35-36)
  • Rewrote File Dump Handshaking Flags (p42-44) so as not to duplicate Sample Dump text on same message
  • Replaced all names referring to the Device ID message with the correct name
  • Moved MIDI Implementation Chart from back of section to before Tables
  • Rewrote the notes to Table 7 (SysEx Messages) to be more clear
  • Updated Table of Manufacturer ID's

» Version 96.1 - March 1996:

  • Changed Table 7 (SysEx Messages) to include reference to Universal SysEx messages and correct ID assignments
  • Fixed omission on Page 35 re: number of Generic Handshaking Messages
  • Added clarifications to SMF text on MIDI timing
  • Updated MSC Specification to version 1.1

» Version 96.1 Second Edition - November 2001:

  • Added the GM1 Developer Guidelines (second revision, 1998), previously available only as a separate download

» Version 96.1 Third Edition (PDF)

This document is the current one that is available for download here (see below), and is identical to last printed version with some minor corrections and reformatting for publication as a PDF. It includes a summary list of Addenda similar to the one below.

MIDI 1.0 Specification Addenda [post 1996]

The following changes/additions were approved by MMA/AMEI since the "96.1" publication and should be consulted to have a current understanding of MIDI technology:

SMF Specification Changes [Post 1996]

These changes/additions were made to the SMF Specification since the "96.1" publication:

General MIDI Specification Changes [Post 1996]

The General MIDI Level 1 Specification was updated to Level 2, and a General MIDI "Lite" version for cell phones was also developed. See the GM section of this website for more details.

Supplemental Specifications [Post 1996]

In addition to the above additions, MMA has also published the following Specifications and Recommended Practice documents which are available separately on this website (Please Register, It's Free!): (Documents without links are coming soon. Thanks for your patience.)

Download the Complete MIDI 1.0 Detailed Specification Document (1996)

(Please Register, It's Free!)