MIDI
MIDI Basics
‐short messages
‐lack of timing information on the bus⇒really asynch, unlike SMF
‐note‐on and note‐off
‐velocity and channel numbers (16pcs)
‐program change
MIDI system topologies
‐no bus/local control
‐single bus from controller to a module
‐daisy‐chained modules
‐multiple buses with daisy‐chaining
‐split via hub fanout/star
‐single master controller/synth with local‐off and a computer
‐loop around a non‐thru‐capable master controller/computer
‐with second port driving a daisy‐chain
MIDI protocol specifics: message types, controllers, parameters, SysEx, et cetera
‐standard asynch UART
‐bus modes (omni/poly)
‐parameters/controllers/switches
Instrument standardization: GM, GS and XG
‐temporally: GM, GS, XG
‐a kind of upward compatibility
‐aims at making songs portable
‐assigns strict semantics to the program/bank changes
‐selectable sounds become at least partially compatible
‐variations, effects and parameters via banks/RPN/NRPN/controllers in GS
and XG
‐restricts creativity
‐no allowance for original synthesis, if filter/effect/volume/pan
parameters are not counted in⇒poor for professional and unconventional
use
‐everybody knows that true MIDI buffs do not extensively utilize any of the
three standardized instrument models
Limitations and how to get around them
‐narrow
‐closed format; slow ⇒ choke ⇒ add‐on units
‐multiple buses
Non‐instrumental MIDI
‐creative use of the base protocol
‐non‐standard
‐enables e.g. automation
How to work it with samplers: SDS and SMDI
‐two separate standards
‐Sample Download Standard (how about downloadable sound for games? later???)
‐SMDI? is this the SCSI one? SCSI musical data interface, perhaps?
‐meant to integrate samplers and sampling synthesis into the MIDI framework
‐not widely spread
‐SDS too slow because of the slow UART of the MIDI bus (31250bps)
MIDI file storage
‐three levels
‐level 0
‐basically a flattened MIDI stream, with delta time telling the relative
order of the events
‐hence far more accurate temporally than the MIDI bus itself!!!
‐level 1
‐provides for multiple tracks
‐not widely spread
‐level 2
‐provides even better for multiple tracks, track names and other metadata,
song lyrics
‐the rarest, practically nonexistent support
‐would be extremely useful with Cubase et al.
Sequencing and sequencers
Types of sequencers—notation vs. piano roll vs. list editing
‐most often time vs. pitch type editors
‐closely reflect the MIDI message structure
‐there is no provision for real continuous control, but only for discrete
controller changes
‐bad for intensive composition of far‐out electronic music
‐little provisions for synthesis/parametrization
‐based too much on the Common Music Notation (see Time in Music article),
and its time/12‐tone pitch/ambiguous parameters model
‐often even capable of CMN editing!!!
Audio integration
‐i.e. cakewalk type score+audio editing
‐audio is continuous, it is edited completely separately from musical data
‐effects are usually controlled via MIDI messages, although they are
generally available
‐the mixing model is traditional, and simple
‐continuous control of effects parameters and/or original synthesis does not
integrate with the audio capability
‐if the editor provides for virtual instruments, they are controlled on the
MIDI side and do not integrate
‐sampling is rarely properly integrated into the audio environment
Integration to moving picture
‐a/v editing
‐movies
‐animation
‐score composition
‐synchronisation is covered in the ideas to albums
‐section