Reference
Glossary
Short, plain-language definitions of the words you'll meet in MIDI specs, manuals, and forum threads. Each entry links to the page that covers it in depth.
0–9
- 14-bit controller
- A controller value split across two Control Change messages, an MSB on CC 0–31 and an LSB on CC 32–63, giving 16,384 steps. See 14-bit pairs.
A
- Active Sensing
- System real-time message
FE. Once a receiver has seen one, it expects another at least every 300 ms and silences its voices if the stream stops. See Timing. - Aftertouch
- Pressure applied to keys after they are down. Channel pressure (
Dn) sends one value for the whole channel; polyphonic key pressure (An) sends one per note. - AMEI
- Association of Musical Electronics Industry, the Japanese body that co-develops and co-publishes the MIDI specifications with the MIDI Association. It grew out of the Japan MIDI Standards Committee (JMSC).
B
- Bank Select
- CC 0 (MSB) and CC 32 (LSB), sent before a Program Change to reach more than 128 sounds. The new bank takes effect on the next Program Change. See GM2 banks.
- Basic channel
- The channel on which a device receives channel mode messages (Omni, Mono, Poly). In Mono mode, the device uses consecutive channels starting from it.
- BLE-MIDI
- MIDI over Bluetooth Low Energy. Messages travel in GATT notifications with a header byte and 13-bit millisecond timestamps. See Transports.
C
- Channel
- One of 16 logical streams on a MIDI 1.0 connection, carried in the low nibble of a channel message status byte. People count channels 1–16; the nibble holds 0–F. See Channels.
- Channel mode message
- Control Change numbers 120–127, which set receiver state rather than a sound parameter: All Sound Off, Reset All Controllers, Local Control, All Notes Off, and the Omni/Mono/Poly switches. See Channel mode.
- Channel voice message
- A message that controls sound on one channel: Note Off/On, Poly Pressure, Control Change, Program Change, Channel Pressure, and Pitch Bend. See Channel voice.
- Control Change (CC)
- Status
Bnfollowed by a controller number and a value. Used for knobs, pedals, volume, pan, and many other parameters. See Control Change.
D
- Daisy chain
- Connecting devices in series, MIDI OUT or THRU to the next device's IN. Each opto-isolated hop adds a little edge distortion, so long chains can become unreliable.
- Data byte
- A byte with bit 7 clear (
00–7F) that carries a value for the preceding status byte. See Status and data bytes. - Delta time
- In a Standard MIDI File, the number of ticks between one event and the previous one in the same track, stored as a variable-length quantity. See Track chunks.
- DIN
- The 5-pin, 180° circular connector used for classic MIDI. A current loop runs over pins 4 and 5, and pin 2 is the shield. See 5-pin DIN.
- Division
- The timing field in a Standard MIDI File header. It is either ticks per quarter note or an SMPTE frame rate with ticks per frame. See Division.
- Drop frame
- The 29.97 fps timecode format that skips frame numbers 0 and 1 at the start of each minute, except every tenth minute, so the timecode stays aligned with wall-clock time. See Drop frame.
E
- Endpoint
- In MIDI 2.0, a device or application that exchanges Universal MIDI Packets in both directions. Its name, protocol, and Function Blocks can be discovered with UMP Stream messages. See UMP Stream.
- EOX
- End of Exclusive, status byte
F7, which terminates a System Exclusive message. Any other non-real-time status byte also ends SysEx.
F
- Function Block
- A MIDI 2.0 description of a functional part of an Endpoint, such as a synth engine, and the UMP Groups it uses. Hosts use Function Blocks to name and route ports.
G
- General MIDI (GM)
- A 1991 specification that standardizes 128 program sounds, a percussion key map on channel 10, and minimum polyphony and controller support, so files play back recognizably on any GM device. See General MIDI.
- GM2
- General MIDI Level 2 (1999). It extends GM with bank-selected variation sounds, more drum kits, more controllers and RPNs, and Universal SysEx for effects and tuning. See Extensions.
- Group
- In the Universal MIDI Packet, a 4-bit field that selects one of 16 groups, each with its own 16 channels, giving 256 channels per UMP Endpoint. See UMP.
- GS
- Roland's extension of General MIDI, introduced with the Sound Canvas line. It adds variation banks, drum kits, and SysEx-addressable parameters. See Extensions.
I
- IAC Driver
- The Inter-Application Communication driver in macOS. It provides virtual MIDI buses for routing MIDI between applications.
- Identity Request
- The Universal Non-Real Time SysEx message
F0 7E <dev> 06 01 F7. Devices answer with their manufacturer, family, model, and version. See Identity. - Interface (MIDI interface)
- Hardware that connects a computer to DIN MIDI ports, usually over USB. Multi-port interfaces expose several independent 16-channel ports.
J
- JR Timestamp
- Jitter Reduction timestamp: a UMP Utility message that records when a message was sent, so a receiver can rebuild the original timing despite transport jitter. See JR timestamps.
L
- Local Control
- CC 122. Local Off disconnects an instrument's keyboard from its own sound engine, so a sequencer can echo the notes back without doubling them.
- LSB / MSB
- Least and most significant byte. MIDI splits values wider than 7 bits into a 7-bit MSB and a 7-bit LSB; pitch bend sends the LSB first.
M
- Manufacturer ID
- The first byte(s) after
F0in a SysEx message, identifying who defined the rest. IDs are one byte (01–7C) or three bytes beginning with00. See Manufacturer IDs. - Merge
- Combining two or more MIDI streams into one. A merger must interleave complete messages and must not split SysEx, which may require buffering.
- Meta event
- A Standard MIDI File event,
FF type length data, that carries file-only information such as tempo, time signature, track name, and End of Track. It is never sent over a MIDI cable. See Meta events. - MIDI 1.0 Protocol
- The original byte-stream message format from 1983: 7-bit data values, 16 channels per port, and status bytes with bit 7 set.
- MIDI 2.0
- The 2020 extension of MIDI. It adds the Universal MIDI Packet, higher-resolution messages, per-note controllers, and bidirectional capability negotiation, while staying compatible with MIDI 1.0. See MIDI 2.0 & UMP.
- MIDI Association
- The global organization, formerly the MIDI Manufacturers Association (MMA), that publishes MIDI specifications together with AMEI. Specifications are free to download from midi.org.
- MIDI beat
- A sixteenth note, equal to six MIDI clocks. Song Position Pointer counts in MIDI beats. See Song Position Pointer.
- MIDI clock
- System real-time message
F8, sent 24 times per quarter note, which a follower can use to track the leader's tempo. See MIDI clock. - MIDI-CI
- MIDI Capability Inquiry: Universal SysEx messages for discovery, Profile Configuration, Property Exchange, and Process Inquiry between two devices. See MIDI-CI.
- MMA
- MIDI Manufacturers Association, the US standards body for MIDI. It now operates as the MIDI Association.
- Mono mode
- Channel mode (CC 126) in which each channel plays one note at a time. Used by guitar controllers, and the basis for one-note-per-channel schemes such as MPE.
- MPE
- MIDI Polyphonic Expression. Each sounding note gets its own channel, so pitch bend, pressure, and CC 74 can be applied per note. See MPE.
- MTC
- MIDI Time Code: SMPTE hours, minutes, seconds, and frames sent as eight quarter-frame messages (
F1) or as a SysEx full frame. See MIDI Time Code. - MUID
- MIDI Unique Identifier, a random 28-bit number that a MIDI-CI device picks to address and identify itself in CI messages. See MUID.
- Multitimbral
- Able to play different sounds on different channels at the same time. A 16-part multitimbral synth can be a whole band on one port.
N
- Note number
- The 7-bit pitch value (0–127) in note messages. Note 60 is middle C and note 69 is A440. See Note numbers.
- NRPN
- Non-Registered Parameter Number: CC 99 (MSB) and CC 98 (LSB) select a manufacturer-defined parameter, which Data Entry then sets. See RPN & NRPN.
O
- Omni mode
- A receive mode in which a device responds to channel messages on all 16 channels. Omni On is CC 125 and Omni Off is CC 124.
- Opto-isolator
- The optocoupler at every DIN MIDI IN. It electrically separates devices, which prevents ground loops. See Electrical.
P
- Patch
- An informal word for a stored sound or preset, selected with Program Change. The name comes from patch cables on modular synths.
- Per-note controller
- A MIDI 2.0 message that changes a controller for a single note, rather than a whole channel. Both registered and assignable kinds exist.
- Pitch bend
- Status
Enwith a 14-bit value, LSB first, where 8192 means no bend. The range in semitones is set by RPN 0. See Pitch bend. - Poly mode
- Channel mode (CC 127) in which a channel can play several notes at once. Almost all keyboard instruments use it.
- Port
- One 16-channel MIDI connection, such as a physical DIN socket, a USB cable number, or a virtual bus. Software usually names ports, not devices.
- PPQ / PPQN
- Pulses (ticks) per quarter note. It is the time resolution of a sequencer or MIDI file; MIDI clock is fixed at 24 PPQN. See Ticks and PPQ.
- Profile
- In MIDI-CI, a standardized set of behaviors and controller mappings, such as a Drawbar Organ or Orchestral Articulation profile, that two devices can agree to turn on. See Profiles.
- Program Change
- Status
Cnplus one data byte that selects a sound. Wire values 0–127 are usually shown as programs 1–128. See Program Change. - Property Exchange
- The MIDI-CI mechanism for getting and setting device data, such as program lists and device info, as JSON resources carried in SysEx. See Property Exchange.
Q
- Quarter frame
- An MTC message (
F1) that carries one nibble of timecode. Eight quarter frames, spread over two frames, carry the full time. See Quarter frames.
R
- Real-time message
- A one-byte system message (
F8–FF), such as clock, Start, Stop, or Active Sensing. It can appear anywhere in the stream, even inside another message. See System real-time. - RPN
- Registered Parameter Number: CC 101 (MSB) and CC 100 (LSB) select a standardized parameter, such as pitch bend sensitivity or tuning, which Data Entry then sets. See RPN list.
- RTP-MIDI
- MIDI over IP networks, defined in RFC 6295 and also called AppleMIDI or Network MIDI. It runs on UDP with a session protocol and journaling for recovery from packet loss. See RTP-MIDI.
- Running status
- Leaving out a repeated channel status byte. The receiver reuses the last one, which saves up to a third of the bandwidth for dense note data. See Running status.
S
- SMF
- Standard MIDI File (
.mid): anMThdheader chunk plus one or moreMTrktrack chunks of timestamped events. See Standard MIDI Files. - SMPTE timecode
- Hours:minutes:seconds:frames timecode from film and video, at 24, 25, 29.97 drop-frame, or 30 fps. MTC carries it over MIDI.
- Song Position Pointer
- System common message
F2with a 14-bit count of MIDI beats (sixteenths) from the start of the song, used to cue a follower before Continue. See SPP. - Status byte
- A byte with bit 7 set (
80–FF) that starts a message and says what kind it is. For channel messages, it also gives the channel. See Status and data bytes. - SysEx (System Exclusive)
- A variable-length message framed by
F0…F7, used for manufacturer-specific data and Universal SysEx. See System Exclusive. - System common message
- A system message that is not real-time: MTC quarter frame, Song Position Pointer, Song Select, Tune Request, and EOX. Receiving one cancels running status. See System common.
T
- Tempo
- Playback speed. In MIDI files it is stored as microseconds per quarter note (500,000 = 120 BPM) by the Set Tempo meta event. See Set Tempo.
- THRU
- A DIN port that repeats whatever arrives at the device's IN, used to daisy-chain several receivers from one source.
- Tick
- The smallest unit of time in a sequencer or MIDI file. Its length in seconds depends on the division and the current tempo.
U
- UMP
- Universal MIDI Packet: the 32-to-128-bit packet format that carries both MIDI 1.0 and MIDI 2.0 messages, with message type and group fields. See UMP.
- Universal SysEx
- SysEx with ID
7E(non-real-time) or7F(real-time), defined by the MIDI specification itself. Examples are Identity Request, GM System On, Master Volume, MTC Full Frame, and MIDI-CI. See Universal SysEx.
V
W
- Web MIDI API
- The W3C browser API (
navigator.requestMIDIAccess) that lets web pages list MIDI ports and send and receive messages. Try it on the Try it page.
X
- XG
- Yamaha's extended General MIDI format, introduced in 1994. It adds many voices, effects, and NRPN- and SysEx-addressable parameters. See Extensions.
Z
Spotted an error? Edit this page on GitHub.