MIDI: Difference between revisions
A little more description of each |
More info about native MIDI vs extensions |
||
Line 1: | Line 1: | ||
'''MIDI''' ('''Musical Instrument Digital Interface''') is a standard communications protocol for connecting musical instruments, computers, and related audio devices for playing, editing, and recording music. | '''MIDI''' ('''Musical Instrument Digital Interface''') is a standard communications protocol for connecting musical instruments, computers, and related audio devices for playing, editing, and recording music. | ||
In the xenharmonic space, it is used for transmitting scores as <code>.mid</code> files, and for driving synthesizers from keyboards/instruments or scores. | In the xenharmonic space, it is used for transmitting scores as <code>.mid</code> files, and for driving synthesizers from keyboards/instruments or scores. | ||
Each MIDI link supports 16 channels (numbered 1–16, but encoded as 0–15), with 128 pitches each (numbered 0–127). In typical applications, these pitches are assigned to [[12edo]] pitches from [[Wikipedia:scientific pitch notation|C<sub>−1</sub>]] (8.2 Hz) to G<sub>9</sub> (12.5 kHz), and the channels are used for different instruments. Pitch bend messages allow the pitch to be varied with more precision than a semitone, but apply the same bend to ''all'' notes sent on a channel. | |||
There are a variety of hacks/extensions that allow for varying amounts of xenharmonicity: | |||
*'''[https://ccrma.stanford.edu/courses/220b-winter-2006/cm/doc/dict/midi-stream-cls.html Channel Rotation]''' - This technique uses all 16 channels for a single instrument, rotating between them for subsequent notes, so that each note can have an independent pitch bend applied to it. For polyphonic music with long sustain of each note, this can still result in audible pitch bend collisions, however. | |||
*'''[[Wikipedia:MIDI tuning standard|MIDI Tuning Standard]]''' ('''MTS''') - Allows for both a bulk tuning dump message, giving a tuning for each of 128 notes, and a tuning message for individual notes as they are played. | *'''[[Wikipedia:MIDI tuning standard|MIDI Tuning Standard]]''' ('''MTS''') - Allows for both a bulk tuning dump message, giving a tuning for each of 128 notes, and a tuning message for individual notes as they are played. | ||
*'''[https://www.midi.org/midi-articles/midi-polyphonic-expression-mpe MIDI Polyphonic Expression]''' ('''MPE''') - Allows controlling multiple parameters independently for each note, including pitch-bend. | *'''[https://www.midi.org/midi-articles/midi-polyphonic-expression-mpe MIDI Polyphonic Expression]''' ('''MPE''') - Allows controlling multiple parameters independently for each note, including pitch-bend. | ||
*'''[https://www.midi.org/midi-articles/details-about-midi-2-0-midi-ci-profiles-and-property-exchange MIDI 2.0]''' - Allows for setting the pitch of each note independently, using the "[https://amei.or.jp/midistandardcommittee/MIDI2.0/MIDI2.0-DOCS/M2-104-UM_v1-0_UMP_and_MIDI_2-0_Protocol_Specification.pdf#page=34 Pitch 7.9]" attribute (which overrides the default pitch). | *'''[https://www.midi.org/midi-articles/details-about-midi-2-0-midi-ci-profiles-and-property-exchange MIDI 2.0]''' - Allows for setting the pitch of each note independently, using the "[https://amei.or.jp/midistandardcommittee/MIDI2.0/MIDI2.0-DOCS/M2-104-UM_v1-0_UMP_and_MIDI_2-0_Protocol_Specification.pdf#page=34 Pitch 7.9]" attribute (which overrides the default pitch). |