Types of Data Transmitted through MIDI


There are four main categories of MIDI data. The following charts represent information on the current hexadecimal numbers that are used in MIDI transmission. Each MIDI message includes a Status Byte. If they are required, Data Bytes will follow each Status Byte. Some of the example below have links that may be clicked for more detail about the MIDI event.


Channel Messages

MIDI Message Status Byte Data Byte Data Byte
Note Off 8n Note Number Velocity
Note On 9n Note Number Velocity
Polyphonic Aftertouch An Note Number Pressure
Control Change Bn Control Number Data Information
Control Change Bn 01 Modulation Wheel Data
Control Change Bn 02 Breath Controller Data
Control Change Bn 04 Foot Controller Data
Control Change Bn 05 Portamento Time Data
Control Change Bn 06 Data Entry Slider Data
Control Change Bn 07 Main Volume Data
Control Change Bn 08 Balance Controller Data
Control Change Bn 0A Pan Controller Data
Control Change Bn 0B Expression Controller Data
Control Change Bn 40 Sustain Pedal (Damper) 00: Off 7F: On
Control Change Bn 41 Portamento 00: Off 7F: On
Control Change Bn 42 Sostenuto 00: Off 7F: On
Control Change Bn 43 Soft Pedal 00: Off 7F: On
Control Change Bn 45 Hold 2 00: Off 7F: On
Control Change Bn 5B External Effects Depth 00: Off 7F: On
Control Change Bn 5C Tremelo Depth 00: Off 7F: On
Control Change Bn 5D Chorus Depth 00: Off 7F: On
Control Change Bn 5E Celeste (Detune) Depth 00: Off 7F: On
Control Change Bn 5F Phaser Depth 00: Off 7F: On
Control Change Bn 79 Reset All Controllers Data to reinitialize
Control Change Bn 7A Local Control 00: Off 7F: On
Control Change Bn 7B All Note Off 00
Control Change Bn 7C Omni Off 00
Control Change Bn 7D Omni On 00
Control Change Bn 7E Mono On 00-0A Number of Channels
Control Change Bn 7F Poly On 00
Program Change Cn Program Number 00 to 7F No second data byte needed.
Channel Aftertouch Dn Note Number Pressure Value
Pitch Wheel En Least Significant Bit Most Significant Bit

n=MIDI Channel Number [ Hexadecimal numbers 0 to F = 1 to 16 MIDI channel number)
Return to Types of Data Menu


System Exclusive

MIDI Message Status Byte Data Byte Data Byte
System Exclusive F0 Manufacture ID Code Manufacture Data
System Exclusive Universal F0 7E Sample Dump Data on sample, bits, length, rate, and loop points
System Exclusive Universal F0 7F MIDI Time Code Data on Complete Message
System Exclusive Universal F0 MIDI Machine Control Data commands
System Exclusive Universal F0 MIDI Show Control Data commands
System Exclusive Universal F0 Standard MIDI Song File Data for Song File

Return to Types of Data Menu

System Common

MIDI Message Status Byte Data Byte Data Byte
MIDI Time Code Quarter Frame F1 Frame Number Data No second data byte. F1 status byte is repeated with data byte.
Song Position Pointer F2 Data on number of SSP 6 Bytes everyQuarterNote Data on number of SSP 6 Bytes everyQuarterNote
Song Select F3 Song Number No second data byte.
Tune Request F6 Data to change tuning Data to change tuning
End of Exclusive F7 No data bytes No data bytes

Return to Types of Data Menu

System Real-Time

MIDI Message Status Byte Data Byte Data Byte
TimingClock MIDISync F8 No data bytes No data bytes. 24 Status bytes per quarter note.
Start FA No data bytes No data bytes
Continue FB No data bytes No data bytes
Stop FC No data bytes No data bytes
Active Sensing FE No data bytes No data bytes
System Reset FF Sets instrument to default No data bytes

Return to Types of Data Menu


Exploring MIDI Home
What is MIDI?
MIDI Connections Java Enabled
MIDI Connections Non-Java
Understanding Decimal Binary & Hexadecimal
The MIDI Language
Types of Data Transmitted through MIDI
MIDI Channels and Modes
MIDI Controllers
General MIDI
Standard MIDI Files
Using MIDI on a Web Site
Applications that use MIDI
Audio vs. MIDI Files
MIDI Timing Concepts
Author Info and Comments