Applications that use MIDI

On this page we will look at computer software applications that use MIDI. This page in no way encompasses the vast use of MIDI in computer programs. Included are examples of some programs that demonstrate the wide variety of uses with the MIDI specification. Different types of software include:

Sequencers   Music Patch Editors and Librarians
Digital Audio with MIDI sequencers  Object-Oriented Programming
Music Notation  MIDI in Multimedia Applications
Computer Aided Instruction for Music  


 When you first glance at an interface of a MIDI sequencer, it has the similar look of a tape recorder. You have the typical transport controls as well as tracks of music information. The big difference is the actual information that is recorded. With an analog tape recorder the acoustic waveform is recorded on a magnetic tape. With a digital tape recorder digital numbers are recorded to represent the acoustic signal. A MIDI sequencer records MIDI events. There are MIDI sequencers that also have the capability of recording digital audio and they will be discussed later.

The diagram below displays eight MIDI tracks of information with each track sending notes, program changes, controller parameters to the individual instruments. The sequencer does not playback the actual sounds, but sends MIDI information to the synthesizers that generate the sounds. Once the MIDI information is stored in a sequencer there are many ways to manipulate the data. The diagram below is an overview, but the user can get a more detailed look at the information by clicking on certain icons.

 The picture to the right represent about ten measures of MIDI notes for one track. The analogy of a player piano roll is used in that the sequencer is sending note information to a synthesizer in the same way that a piano roll sends note information to the player piano. An attractive feature about a MIDI sequencer is that if the performance has a few mistakes the notes may be moved, made shorter or stretched instead of having to re-record the entire section.  

 Another attractive feature of a MIDI sequencer is the ability to add control changes after the recording. In the example to the left the key velocity for each note is represented in a graph. The user may change the velocities with the stroke of a pencil using a mouse. Other control options include program changes, pitch bend, fader controls, modulation wheel, panning, and many more.

Piano roll editing and graphic editing is one way to manipulate the MIDI data. It is possible to view the same information in notation form or in an event listing.

 To the right is an example of an event listing of note information. Here the notes are listed with their location in each measure as well as position in absolute time.

MIDI sequencers include timing information on the tempo of the composition. MIDI events may be recorded at a slow tempo and then played back at a faster speed. To get a better understanding of time and tempo features I recommend MIDI Timing Concepts

Another important feature of MIDI sequencers is the input options. Advanced sequencers will give the user three options for inputting data.

Real Time Recording - Incoming data is recorded as the performer plays on a MIDI controller.

Step Time Recording - Allows the performer to input notes of events one step at a time from the controller, or with the computer keyboard or mouse.

Loop Recording - Allows the user to decide on a specific amount of measures with a repeat mode to enter data. It is very similar to a drum machine tap mode.

 So far this demonstration has centered on Computer Based MIDI sequencers (right image). Other types of MIDI sequencers include:

Dedicated Sequencers - are multi-track recorders of MIDI digital information. They are called dedicated because their only

function is to record MIDI information. An excellent choice for a sequencer if you move your equipment around a lot for "gigs", and they usually cost less than a computer.

Workstation, On Board Sequencers - Many work stations (synthesizers, drum machine, sequencer), now have small sequencers built in that allow multi-track recording of MIDI information.

return to the menu

Digital Audio with MIDI sequencers

 A powerful combination is MIDI sequencing and digital audio. This allows the user to have MIDI files playing synthesizers in sync with digital audio tracks. The programs are more expensive than a MIDI sequencer and the computer need to have fast microprocessors as well as large amounts of memory to store the digital files.

To the right and below are examples from the program ProTools by digidesign. Highlighted in yellow are digital audio tracks as well as MIDI tracks.


return to the menu

Music Notation
   It was during the mid-1980's that music notation became accessible to anyone that had a computer and quality printer with the beginning of desktop music publishing. Laser Printers with PostScript music fonts are able to create high-quality music manuscript.

 There is a wide range of notation programs available depending on the price range. Most programs allow the user to input data in step time or real time. Incoming data is recorded as the performer plays on a MIDI controller in Real Time Mode. Step Time Mode allows the performer to input notes of events one step at a time from the controller, or with the computer keyboard or mouse.

 There is usually a graphic interface that gives the user many options on note and rest values as well as musical marking symbols, text, musical expressions, etc.

Files may be saved as a document file or exported as a Standard MIDI file that could then be read by another notation program or a MIDI sequencer program. Some programs will allow the user to create a full score of a composition as well as extracting the individual parts with transposition for individual instruments. The graphic interface is usually very intuitive and in little time a composition can appear as a professional copy.

return to the menu

Computer Aided Instruction for Music

Computer programs that involve music instruction have advanced to new levels in recent years. There are four main categories of software and the range is from the very beginning user to the advanced user. The categories include:

Flexible Practice - works on music aural skills and music theory applications as well as performance skills. This type of program allows the student and teacher to customize the program by entering new material. Simulation - exciting because they allow the user to interact with the computer program. The user may play practice a melody or improvise with an accompaniment pattern.
Drill and Practice - work on music aural skills and music theory applications. The software is customized for specific tasks and instructional support but new material may not be added to the program. Multimedia - offer a combination of sound, graphics, text, and hypertext in a learning environment. There are many programs available, but most of them do not use MIDI support. Most Web Browsers and some HyperCard programs do have MIDI support.

The programs that are listed below have MIDI capabilities. There are many excellent CAI music programs that do not use MIDI, but they are not discussed on this page. I recommend the book Experiencing MUSIC TECHNOLOGY for a complete review of CAI music software programs.

Flexible Practice
Practica Musica is an in depth Flexible Practice program that teaches music theory and aural skills. When the software is connected with a MIDI interface the program becomes very powerful with input from a MIDI controller. If the user doe not want to use MIDI sounds the internal sounds in the program are also an excellent option. For a college level aural skills course an instructor may enter their own melodies with the an editor selection.

Vivace is simulation CAI music program that provides Intelligent Accompaniment for vocalists, winds and brass instruments. Vivace is an interactive system that is able to listen to and follow the musician by responding to the sound source through a microphone. As the musician plays or sings their melody line, Vivace will respond with an accompaniment that reacts musically to the soloist's tempo interpretations.
 picture from Coda Music
The company Coda provides over 4,200 titles with a wide range of ability levels and a repertoire that includes selections from classical, jazz and current pop and rock tunes. This program has been very successful in educational programs from grade school through college. There are now band method accompaniments that offer an exciting new approach in encouraging the beginning student to practice their music lessons. Vivace is a way for a student to practice with an accompaniment that would not be available on a regular basis.
Band in a Box is another simulation CAI music program that works as an accompaniment for the musician. The program allows the user to program in a wide variety of chords and rhythm style accompaniment. The accompaniment may range from the standard piano, bass, and drums to a more elaborate ensemble with guitar, strings, horns and a melody line. The keyboard above will display the piano accompaniment and the bass line. The user can adjust the tempo, transpose the key signature, and set up the song to repeat a specific number of times to rehearse a selection. This program is very helpful for the rehearsal of a jazz improvisation solo without the jazz band, saving valuable time in a jazz band rehearsal.
return to the menu

Music Patch Editors and Librarians

The programs that are described here are applications that deal with MIDI. There are many Sound Editing Programs that work with digital audio sound files. Examples would include Sound Edit 16, Alchemy, Sound Designer, and Pro Tools. These programs allow the user to manipulate sound file samples, but they do not use MIDI techniques to edit the sound file.

Music Patch Editors work directly with the sound patches within a synthesizer. Patch editors are designed specifically for individual synthesizers because each company uses their own system exclusive information to create their programs. First the hexadecimal code F0 is used to identify the status byte of system exclusive. The status byte is followed by a data byte that identifies the manufacturer. All data bytes that follow pertain to MIDI information created by that particular manufacturer. At the end of the system exclusive message will be the hexadecimal code F7 end of exclusive command.

Patch Editors allow the user to change the size of envelopes, types of filters, samples, waveforms, panning information, modulation effects and basically anything that changes the parameters of the patch. Each manufacturer uses different techniques to create sounds for the synthesizer so each Patch Editor must be designed for the specific synthesizer. Universal Patch Editors are programs that support many different MIDI devices. That way a user may by one program that will support their studio that has products from Roland, Yamaha, Korg or other manufactures.

The example on the left is the Universal Patch Editor Galaxy. Here the user is able to make changes to the envelopes, original oscillators, filters and other effects.

Image from the book Experiencing MUSIC TECHNOLOGY

Patch Librarian software allows the user to organize their sounds, but they may not edit the sounds. Librarians are a great way to create a bank of sounds for a specific composition or creating your top 64 or 128 sounds.

 Sometimes a sound from one synthesizer may be layered with MIDI to another sound in a different synthesizer to create a new combined sound. The librarian will allow the user to move patches so the combination is on the same number.

Image from the book Experiencing MUSIC TECHNOLOGY

return to the menu

Object-Oriented Programming

 The computer program Max allows the musician to use a graphical environment to represent musical events. This program allows the user to manipulate and control MIDI events in new ways that are not limited by the conventions of a music sequencer or notation software.

The program can send MIDI event information to synthesizers as well as performance event information to a compact disc or CD-ROM.

 Max creates a flexible design of manipulating any type of MIDI event in a random or structured order. You may send commands to a synthesizer, or create a system exclusive parameter change in a sound patch. Any type of MIDI event may be altered or changed with the program. Max is an excellent composition tool as well as an excellent source for music instruction. Go to Understanding Decimal Binary & Hexadecimal, or The MIDI Language to see examples of Max using MIDI data.
return to the menu

MIDI in Multimedia Applications

MIDI takes up less space than digital audio files which makes it a valuable option in many Multimedia programs. Some p