Digital Sound & Music: Concepts, Applications, & Science, Chapter 6, last updated 6/25/2013
ignore. 0x7F is a universal device ID. All devices respond to this ID regardless of their
individual ID numbers.
is the sub-ID number for MIDI Machine Control. This tells the receiving device that
the bytes that follow are MIDI Machine Control syntax as opposed to MIDI Show
Control, MIDI Time Code, or other commands.
can be a set of bytes as small as one byte and can include several bytes
communicating various commands in great detail. A simple play (0x02) or stop (0x01)
command only requires a single data byte.
is the End of Systems Exclusive byte indicating the end of the message.
A MMC command for PLAY would look like this:
F0 7F 7F 06 02 F7
MIDI Machine Control was really a necessity when most studio recording systems were
made up of several different magnetic tape-based systems or dedicated hard disc recorders. In
these situations, a single transport control would make sure all the devices were doing the
same thing. In today’s software-based systems, MIDI Machine Control is primarily used with
MIDI control surfaces, like the one shown in Figure 6.45, that connect to a computer so you
can control the transport of your DAW software without having to manipulate a mouse.
Figure 6.46 A dedicated MIDI Machine Control device
6.3 Science, Mathematics, and Algorithms
MIDI SMF Files 6.3.1
If you'd like to dig into the MIDI specification more deeply – perhaps writing a program that can
either generate a MIDI file in the correct format or interpret one and turn it into digital audio –
you need to know more about how the files are formatted.
Standard MIDI Files (SMF), with the .mid or .smf suffix, encode MIDI data in a
prescribed format for the header, timing information, and events. Format 0 files are for single