Reference

Specs & Resources

Spec: MIDI Association spec index

The primary sources behind this guide, plus trusted references for going deeper. Every link here is checked automatically by npm run verify:resources.

Getting the official PDFs

The MIDI Association publishes its specifications for free, but most downloads need a free account at midi.org. MIDI 1.0, Standard MIDI Files, General MIDI, MPE and the MIDI 2.0 family are all listed on the spec index. MIDI 2.0 specifications are developed and published jointly with AMEI in Japan.

Official specifications

Standards bodies

RFCs and web standards

Platform documentation

  • Reference for MIDIAccess, MIDIInput, MIDIOutput and browser compatibility.

    developer.mozilla.org

  • Apple's MIDI framework for macOS and iOS, including UMP-based MIDI 2.0 APIs.

    developer.apple.com

  • Documentation for the new Windows MIDI stack with MIDI 2.0, UMP and multi-client support.

    microsoft.github.io

  • Microsoft Learn's MIDI guidance for Windows app developers.

    learn.microsoft.com

  • API documentation for alsa-lib, including the sequencer and rawmidi interfaces.

    alsa-project.org

  • The Linux sequencer API: clients, ports, subscriptions and event routing.

    alsa-project.org

  • MIDI 2.0 on Linux Linux kernel

    Kernel documentation for UMP devices, USB MIDI 2.0 and the ALSA MIDI 2.0 interfaces.

    kernel.org

  • Android's MIDI API reference for USB, BLE and virtual devices.

    developer.android.com

  • Android MIDI architecture Android Open Source Project

    How MIDI is implemented in Android, for device makers and platform developers.

    source.android.com

Learning and references

Datasets

  • About 176,000 unique MIDI files, a subset of them matched and aligned to the Million Song Dataset.

    colinraffel.com

  • Code used to build the Lakh MIDI dataset by matching and aligning MIDI to audio.

    github.com

  • MAESTRO Google Magenta

    About 200 hours of virtuosic piano performances with aligned audio and fine-grained MIDI.

    magenta.tensorflow.org

  • A large classical piano MIDI dataset transcribed from recordings.

    github.com

Community

  • MIDI.org forum MIDI Association

    The official community forum for questions about MIDI specifications and products.

    midi.org

In this guide

Looking for code rather than reading? The library catalog lists verified open-source implementations, and the Cookbook has short runnable recipes.