Home About AC Updates AC Radio AC Blog AC Courses Forum
 
FAQ Profile Members Register Groups PM's Search Login/Out

Week 8 - MIDI

Last Thread | Next Thread  >


This forum is locked: you cannot post, reply to, or edit topics. This topic is locked: you cannot edit posts or make replies.

Forum Index > Music Technology 02 2005


Author Thread
ben m



Joined: 15 Sep 2002
Posts: 337
Location: UK
Week 8 - MIDI  Reply with quote  

Ok people, this week we're looking at MIDI - quite a big subject but there's lots of resources out there.

Good Luck.

01 - What does MIDI stand for?
02 - Is MIDI a serial or parallel data flow?
03 - How does MIDI data contain timing information?
04 - What are the advantages and disadvantages of MIDI over digital audio?
05 - Briefly describe the General MIDI standard
06 - What other standards have evolved from GM?
07 - What is the data rate of MIDI information in kbits?
08 - What is a UART?
09 - What purpose does a MIDI Thru connection serve?
10 - What is daisy-chaining in terms of MIDI connectivity, and what are its
disadvantages?
11 - What are the advantages of multi-port MIDI interfaces?
12 - What is a MIDI channel?
13 - With reference to the MIDI interface and the MIDI specification explain why MIDI systems can only have 16 channels?
14 - What channel must be used for drums/percussion under the GM standard?
15 - What does Omni mean in terms of the reception of MIDI information on discrete channels?
16 - What is the status byte and what information will it typically include?
17 - What information is typically found in the data byte?
18 - Describe the three bytes of a MIDI note-on message.
19 - What are control change (cc) messages?
20 - What is the purpose of system exclusive (sysex) messages?
21 - What is the difference between channel and system messages?
22 - What MIDI note number is the musical note C3 on a MIDI keyboard?
23 - How may velocity values are there?
24 - What is 'running status'?
25 - In running status, why is a velocity value of 0 treated as a note off message?
26 - What is the purpose of the 'Local' setting on MIDI devices?
27 - What are system realtime messages?
28 - What are Song position pointers (SPPs)?
29 - Briefly describe the MIDI TimeCode (MTC) protocol.
30 - Briefly describe the MIDI Machine Control (MMC) protocol.
31 - Why are modulation wheels often found on MIDI keyboards?
32 - Define the term polyphony.
33 - Define the term multi-timbral
34 - What is aftertouch?
35 - What features do mixing consoles offer that can be controlled by MIDI?
36 - How do MIDI messages such as modulation, expression attempt to recreate the nuances of 'real instruments'?
37 - List eight types of MIDI message which are either System Common or System Real Time. (Hint: these are messages that are NOT identified by MIDI Channel numbers).
38 - List four synchronisation strategies used in MIDI music production that can be used, with appropriate equipment, to synchronise a MIDI sequencer and a multitrack audio recorder. Expand any abbreviations.
39 - MIDI timecode quarter-frame, song position pointer, song select, tune request and end of exclusive are all what type of MIDI message?
40 - What does the first bit of each byte of a MIDI message signify?
41 - Explain the relationship of sequencer tracks, MIDI channels and synthesiser voices.
42 - In a MIDI set up using a MIDI keyboard controller and a computer sequencer what methods may you be able to use to physically input MIDI control data? Give three.
43 - You have a cable with a 5-pin DIN connector at each end. If it is suitable for copying a recording from one cassette deck to another, would it be suitable for MIDI?
44 - What data is provided by a MIDI THRU connector?
45 - What would you be most likely to use the MIDI OUT connector for on a keyboardless MIDI sound module
46 - You are using a MIDI sequencer to record many complex tracks to be played on a MIDI system where several modules are chained together, THRU to IN. What might happen if you use Pitch Bend or Control Change messages excessively?
47 - Some MIDI equipment processes data from the IN connector before sending it to the THRU. What effect does this have on timing?
48 - You are mixing MTC on the same cable as musical data. How might this affect the timing of notes?
49 - You have connected a keyboard with 32 note polyphony to a sequencer and you find that it is only capable of 16 note polyphony when played manually. If the keyboard can give the full 32 notes when disconnected from the sequencer what has happened?
50 - You are recording a melody into a sequencer. The melody contains a complex series of notes and pitch bend movements and you can’t get both the notes and pitch bend moves right simultaneously. What should you do?
51 - You have recorded a piano sound into a sequencer performed by a keyboard player who tends to use the sustain pedal a lot. What problem might you find if you record another piano part on the same MIDI channel?
52 - You have sampled a four bar drum loop and you trigger it from the sequencer on the first beat of bar 1. You also trigger it on the first beat of bar 5. What will happen if you play the sequence from bar 3?
53 - Describe and explain the difference between status bytes and data bytes with reference to MIDI.
54 - Give an example of the benefit of using active sensing in a MIDI system.
55 - Explain why pitch bend is not classed as a MIDI control change message.
Post Mon Oct 17, 2005 10:37 pm
 View user's profile Send private message Yahoo Messenger MSN Messenger
AndyBarber



Joined: 09 Sep 2005
Posts: 18
Location: North Wales
 Reply with quote  

Posted: Tue Oct 18, 2005 8:37 am Post subject: Week 8 - MIDI
ANDY BARBER
--------------------------------------------------------------------------------

01 - What does MIDI stand for?
Musical Instrument Digital Interface
MIDI is basically a remote control for electronic musical instruments
Popular means of controlling and storing sound information in an economical way

02 - Is MIDI a serial or parallel data flow?
The interface is serial which only requires a single communication channel between two devices. Bits of data making up a bite are transferred one after another, not transferred together as a group.
(Parallel data usually used ‘inside’ devices)

03 - How does MIDI data contain timing information?
MTC (MIDI TimeCode)

MIDI uses unidirectional (one direction only), asynchronous serial communication where data is transmitted without an accompanying clock signal. Receiver must lock on to incoming data when it arrives. Sender and receiver must be running at the same clock rate. Data must be sent to signal the start and end of a data word.

MIDI sequencers normally have a timing reference (internal or external) which determines the rate at which music and other data are replayed.

04 - What are the advantages and disadvantages of MIDI over digital audio?
MIDI handles digital information which controls the generation of sound. The stored MIDI data represent the events in a piece of music, making it possible to change the music by changing event data. MIDI sequencer is useless without sound generators. Cant be used with acoustic sounds like strings or vocals

With Digital Audio it stores, records and plays a digital representation of an audio waveform
DA allows sound to be stored and replayed without need for additional hardware


05 - Briefly describe the General MIDI standard
General MIDI is a defined standard set of patches in order to make sound modules more compatible.
Voices are mapped to set program numbers. This standardises some basic elements of sound generator control so MIDI files can be interchanged between systems. GM also specifies that a sound module must be able to receive MIDI data on all 16 channels simultaneously and polyphonically with a different voice on each channel.

There are 16 families of instruments each with a family of 8 instruments.

06 - What other standards have evolved from GM?
All patches must sound an A440 pitch when receiving a MIDI note number of 69.
Other minium requirements are that sound modules should all respond to Pitch and Modulation wheels with a minimum of 24-voice polyphony. Global settings also state modules should respond to velocity, channel pressure, and many other MIDI controller messages (channel volume, pan etc)

07 - What is the data rate of MIDI information in kbits?
MIDI standard specifies a data bit rate of 31.25 kbits +/- 1%
Has to be slow enough to travel over simple cables and interface hardware, but fast enough to control instruments without any noticeable delays giving perception of real time control.


08 - What is a UART? (Universal Asynchronous Receiver Transmitter)
It is an electric circuit that makes up a serial port. It converts parallel bytes to serial bits for transmission and vice versa.


09 - What purpose does a MIDI Thru connection serve?
MIDI through connections allow multiple MIDI devices to be used via daisy-chaining


10 - What is daisy-chaining in terms of MIDI connectivity, and what are its
disadvantages?
Allows MIDI data from a controller to be sent to multiple devices/receivers without the need for multiple outputs from the controller. MIDI data is passed along a chain of devices by connecting one’s THRU to the IN of the next.

This technique limit’s the system to 16 channels of data. Long daisy chains may result in a lag between the time information is originally sent from a master device and when it is received further down the chain (MIDI delay).


11 - What are the advantages of multi-port MIDI interfaces?
Multi port interfaces have a number of independent OUT ports. 16 channels can be addressed to each OUT, the overall number of channels is multiplied by the amount of ports present. Delay times are significantly reduced.

Both IN and OUT of each device is connected. This means each device can be used as a controller (sending information back to the computer)


12 - What is a MIDI channel?
There are two classes of message 1 - related to MIDI channel
2 - related to system as a whole

Messages are made up of bytes with each part of the message having a special purpose. One part defines which channel the message is on. Channels are used so controlling device can make a message device specific.


13 - With reference to the MIDI interface and the MIDI specification explain why MIDI systems can only have 16 channels?
The first byte in a MIDI message is normally the status byte containing information about which channel it’s data is for. 4 bits of status byte are used to specify the channel number. 24=16 possible channels.


14 - What channel must be used for drums/percussion under the GM standard?
Channel 10 is the standard for percussion instruments.


15 - What does Omni mean in terms of the reception of MIDI information on discrete channels?
When in omni mode an electronic instrument (i.e. Synth) will take all midi messages it receives, ignoring channel data, and play back all notes on the current channel.


16 - What is the status byte and what information will it typically include?
First byte in a message is usually a status byte. Status bytes always begin with a ‘1’ to distinguish them from data bytes which begin with a ‘0’. The first 4 bits of a status byte denotes the type of message and the second half denoting the channel number.


17 - What information is typically found in the data byte?
Data bytes come after the status bytes in a MIDI message. They contain the actual data values being transmitted for a particular message. There are 8 bits to a byte with the first bit denoting type of byte. This leaves 7 bits for data, 27=128 possible values.


18 - Describe the three bytes of a MIDI note-on message.
The most common ‘word’ in a MIDI stream is the ‘Note-On’ message which consists of three bytes

1. Status byte (identifying message type and channel number) here ‘Note On’
2. Data byte identifying the note (note number)
3. Data byte identifying loudness of note (loudness usually measured by velocity)


19 - What are control change (cc) messages?
Control change messages are MIDI messages from pedals, sliders and knobs on a MIDI controller keyboard. A MIDI Control Change number is followed by a value that sets the parameter in the MIDI device. The messages are standardised under GM with a table of control function commands (with values from 0-127).


20 - What is the purpose of system exclusive (sysex) messages?
They are used to send data (i.e. Patch parameters or sample data) between MIDI devices. Manufacturers of MIDI equipment usually define their own format of sysex messages.


21 - What is the difference between channel and system messages?
There are two main types of MIDI message,

Channel messages are transmitted on individual channels rather than globally to all devices in the MIDI network. System messages carry information which is not channel specific.


22 - What MIDI note number is the musical note C3 on a MIDI keyboard?
48 (middle C is 60)


23 - How many velocity values are there?
There are many different velocity curves available but the velocity values available are only from 0 to 127 (128 possible values)


24 - What is 'running status'?
Running status allows MIDI messages to be sent without the status byte providing the previous message has the same status. This maximises the efficiency of MIDI transmission.



25 - In running status, why is a velocity value of 0 treated as a note off message?
A note on with a velocity of ‘0’ is interpreted as a note Off. It allows you to turn multiple notes on and off without the need for a status byte for all but the first message.


26 - What is the purpose of the 'Local' setting on MIDI devices?
Local control defines whether a piece of hardware is in control of it’s onboard synth.

Local ‘on’ playing keys and changing controls will trigger patches that are activate in synth
Local ‘off’ playing keys will just output MIDI data to sequencer


27 - What are system real time messages?
Real time messages only consist of a status byte. They are concerned with timing/syncing functions and must be transmitted and received at a specific time without delay.


28 - What are Song position pointers (SPPs)?
This is a MIDI message held in sequencer/synchronizer telling external devices how many 16th notes have elapsed since the beginning of the track which is being played. Used when there is no MTC or SMPTE time code support.


29 - Briefly describe the MIDI TimeCode (MTC) protocol.
Used to synchronize MIDI controlled equipment to a real time reference. MTC is a means of transferring LTC (longitudinal time code) around a MIDI system. With LTC two data groups are assigned to each of hours, minutes, seconds and frames. Code must be turned (by MTC) into one that is compatible with MIDI devices

Two types of MTC synchronizing message

1. Updates a receiver regularly with a running time code (quarter frame message)
2. Transmits one time updates of time code position (full frame message)


30 - Briefly describe the MIDI Machine Control (MMC) protocol.
MMC is specifically designed as a remote control for hard disk recording systems and other machines used for recording or playback, over a MIDI cable. This can only be done with System Exclusive messages.

31 - Why are modulation wheels often found on MIDI keyboards?
They allow real time MIDI data to be created by the user. This data (0-127) can be assigned to various parameters on a number of connected MIDI devices.


32 - Define the term polyphony.
Polyphonic music consists of several independent voices playing together as apposed to monophonic where there is just one voice playing. Polyphony determines the number of voices (notes) that can be played at the same time by an electronic sound generator/synth.


33 - Define the term multi-timbral
The term Multi-timbral defines how many different instrument sounds (patches) a MIDI synthesiser can play back simultaneously

34 - What is aftertouch?
Pressure sensitivity is called after touch. Most modern keyboards are velocity sensitive but not all are pressure sensitive (produces key pressure MIDI messages)


35 - What features do mixing consoles offer that can be controlled by MIDI?
Common features of a mixer that can be controlled by MIDI sysex messages are volume, mute groups and amplifier controls. Recent developments like USB and mLAN are changing way MIDI devices are cabled together removing MIDI’s speed and bandwidth limitations


36 - How do MIDI messages such as modulation, expression attempt to recreate the nuances of 'real instruments'?
The more MIDI messages available to a synthesizer the more it can manipulate the sounds its creating. For example a varying velocity MIDI message can be assigned to a synths volume making it less static.


37 - List eight types of MIDI message which are either System Common or System Real Time. (Hint: these are messages that are NOT identified by MIDI Channel numbers).

System common (intended for all receivers in system)
MTC Quarter Frame (MIDI time code info for syncing MIDI and other equipment)
Song Select (used with sequencers and drum machines which store and recall different songs)
Song Position Pointer (sets sequencer to start playback of song at some point rather than at the beginning)
End of Exclusive/EOX (flags the end of a system exclusive message)

Real time (used for synchronisation between clock-based MIDI components) messages usually ignored by keyboards and synths.
Timing Clock, Start/Continue/Stop sequence


38 - List four synchronisation strategies used in MIDI music production that can be used, with appropriate equipment, to synchronise a MIDI sequencer and a multitrack audio recorder. Expand any abbreviations.

In electronics one device acts as Master with others responding to master’s timing data rather than following their internal timing

MIDI clock
Digital timing messages, examples of System Common Data. Here master MIDI clock emits 24 MIDI clock messages every ¼ note. When slave receives one of these messages it moves its internal clock by 1/24th of a quarter note.

SPP (song Position Pointer Messages)
Keeps track of how many 16th notes have elapsed since the beginning of the track. Message issued prior to continue command.

SMPTE-to-MIDI (Society of Motion Picture and Television Engineers)
System synchronizes audio to film and video. SMPTE time code generator generates timing markers which are recorded on one track of a tape at regular intervals. The tape then acts as an accurate index counter. Each marker gives the elapsed time in hours, minutes, seconds and frames (usually 24 frames per second). SMPTE is based on absolute time, were music is based on measures and beats which relate to relative time. An SMPTE-to-MIDI converter is required to change absolute time to musical time (SMPTE is converted into MIDI SPP data). Many computer interfaces have SMPTE-to-MIDI conversion built in. SMPTE generally provides the system master clock.


MTC (MIDI Time Code)
Allows SMPTE times to be communicated directly over MIDI, allowing MIDI devices to respond to absolute time if necessary.

With Multi-track digital tape recorder, recorder provides the sync signal which the sequencer synchronizes to. Sequencer in turn drive other MIDI devices. Starting and stopping the tape does the same to the sequencer.


39 - MIDI timecode quarter-frame, song position pointer, song select, tune request and end of exclusive are all what type of MIDI message?
These are all ‘System common’ messages.


40 - What does the first bit of each byte of a MIDI message signify?
It defines the type of byte in a message. If it begins with a binary ‘1’ it is a status byte and if it begins with a binary ‘0’ the system knows it’s a data byte.

41 - Explain the relationship of sequencer tracks, MIDI channels and synthesiser voices.
MIDI sequencer is similar to a multi-track audio tape recorder in that it stores a musical performance. It records the data about a sound not the sound itself.

The tracks within a sequencer can be either audio or MIDI. MIDI tracks are assigned a channel number and a destination so sequencer knows what instrument (synthesizer voice) is being controlling by which track. More than one track can be assigned to the same channel and/or destination.


42 - In a MIDI set up using a MIDI keyboard controller and a computer sequencer what methods may you be able to use to physically input MIDI control data? Give three.
Key Velocity, Modulation wheel, Pitch bend, foot pedal.


43 - You have a cable with a 5-pin DIN connector at each end. If it is suitable for copying a recording from one cassette deck to another, would it be suitable for MIDI?
Yes

44 - What data is provided by a MIDI THRU connector?
The data provided by a THRU connector is a direct relay of the data present at the devices MIDI IN port


45 - Why would you be most likely to use the MIDI OUT connector for on a keyboardless MIDI sound module
The data arriving at the module’s MIDI IN will be telling it what and when top play. Any MIDI data created by the synth can be sent back to the sequencer for recording if its MIDI OUT is connected to computers MIDI IN.










46 - You are using a MIDI sequencer to record many complex tracks to be played on a MIDI system where several modules are chained together, THRU to IN. What might happen if you use Pitch Bend or Control Change messages excessively?
This would create a lot of data to be processed by the system at any given time and may lead to timing/synchronizing problems (increased system latency)


47 - Some MIDI equipment processes data from the IN connector before sending it to the THRU. What effect does this have on timing?
This will increase the systems MIDI delay time especially for devices at the end of the daisy chain.


48 - You are mixing MTC on the same cable as musical data. How might this affect the timing of notes?
The MTC data will take priority over note data making note timing less accurate.


49 - You have connected a keyboard with 32 note polyphony to a sequencer and you find that it is only capable of 16 note polyphony when played manually. If the keyboard can give the full 32 notes when disconnected from the sequencer what has happened?

???

50 - You are recording a melody into a sequencer. The melody contains a complex series of notes and pitch bend movements and you can’t get both the notes and pitch bend moves right simultaneously. What should you do?
Firstly slowing down the tempo while recording will make the task easier. Record the notes first into the sequencer. Once done, play back the track and record the pitch bend moves over the top.

51 - You have recorded a piano sound into a sequencer performed by a keyboard player who tends to use the sustain pedal a lot. What problem might you find if you record another piano part on the same MIDI channel?
The MIDI data from the sustain pedal will be included in the same track/channel as the first keyboard recording. Any extra keyboard data recorded on the same channel will also be affected by the pre-recorded sustain data.


52 - You have sampled a four bar drum loop and you trigger it from the sequencer on the first beat of bar 1. You also trigger it on the first beat of bar 5. What will happen if you play the sequence from bar 3?
No sound will be heard for two bars until sequencer reaches the first beat of bar 5


53 - Describe and explain the difference between status bytes and data bytes with reference to MIDI.
The first byte in a MIDI message is usually a status byte with information about the channel number message is intended for, and also what type of message follows. A data byte contains the actual information of the message.





54 - Give an example of the benefit of using active sensing in a MIDI system.
Active sensing mode can be triggered on or off with a MIDI message
System used to verify a MIDI connection is working. When in ‘active sensing mode’, a device will silence all output if no messages are received for 300ms. This is used as a safety feature if there is a breakdown in communication between MIDI devices.


55 - Explain why pitch bend is not classed as a MIDI control change message.
Usually a continuous controller on many MIDI keyboards. Pitch bend is in its own category as it is something which is likely to be used frequently. 2 bytes are required to allow fine enough resolution making movement seem continuous rather than in steps.


http://www.atpm.com/5.10/music.shtml
http://jedi.ks.uiuc.edu/~johns/links/music/gm.htm
http://arts.ucsc.edu/EMS/Music/tech_background/MIDI/MIDI.html
http://www.midi.org/about-midi/tutorial/tutor.shtml
http://www.geocities.com/SunsetStrip/Studio/5821/midi-basics.html
http://www.fortunecity.com/emachines/e11/86/midiglos.html
Sound and Recording an Introduction (Francis Ramsey & Tim Mccormick
Post Fri Oct 21, 2005 8:14 pm
 View user's profile Send private message Yahoo Messenger

AndyBarber



Joined: 09 Sep 2005
Posts: 18
Location: North Wales
 Reply with quote  

Posted: Tue Oct 18, 2005 8:37 am Post subject: Week 8 - MIDI
ANDY BARBER
--------------------------------------------------------------------------------

01 - What does MIDI stand for?
Musical Instrument Digital Interface
MIDI is basically a remote control for electronic musical instruments
Popular means of controlling and storing sound information in an economical way

02 - Is MIDI a serial or parallel data flow?
The interface is serial which only requires a single communication channel between two devices. Bits of data making up a bite are transferred one after another, not transferred together as a group.
(Parallel data usually used ‘inside’ devices)

03 - How does MIDI data contain timing information?
MTC (MIDI TimeCode)

MIDI uses unidirectional (one direction only), asynchronous serial communication where data is transmitted without an accompanying clock signal. Receiver must lock on to incoming data when it arrives. Sender and receiver must be running at the same clock rate. Data must be sent to signal the start and end of a data word.

MIDI sequencers normally have a timing reference (internal or external) which determines the rate at which music and other data are replayed.

04 - What are the advantages and disadvantages of MIDI over digital audio?
MIDI handles digital information which controls the generation of sound. The stored MIDI data represent the events in a piece of music, making it possible to change the music by changing event data. MIDI sequencer is useless without sound generators. Cant be used with acoustic sounds like strings or vocals

With Digital Audio it stores, records and plays a digital representation of an audio waveform
DA allows sound to be stored and replayed without need for additional hardware


05 - Briefly describe the General MIDI standard
General MIDI is a defined standard set of patches in order to make sound modules more compatible.
Voices are mapped to set program numbers. This standardises some basic elements of sound generator control so MIDI files can be interchanged between systems. GM also specifies that a sound module must be able to receive MIDI data on all 16 channels simultaneously and polyphonically with a different voice on each channel.

There are 16 families of instruments each with a family of 8 instruments.

06 - What other standards have evolved from GM?
All patches must sound an A440 pitch when receiving a MIDI note number of 69.
Other minium requirements are that sound modules should all respond to Pitch and Modulation wheels with a minimum of 24-voice polyphony. Global settings also state modules should respond to velocity, channel pressure, and many other MIDI controller messages (channel volume, pan etc)

07 - What is the data rate of MIDI information in kbits?
MIDI standard specifies a data bit rate of 31.25 kbits +/- 1%
Has to be slow enough to travel over simple cables and interface hardware, but fast enough to control instruments without any noticeable delays giving perception of real time control.


08 - What is a UART? (Universal Asynchronous Receiver Transmitter)
It is an electric circuit that makes up a serial port. It converts parallel bytes to serial bits for transmission and vice versa.


09 - What purpose does a MIDI Thru connection serve?
MIDI through connections allow multiple MIDI devices to be used via daisy-chaining


10 - What is daisy-chaining in terms of MIDI connectivity, and what are its
disadvantages?
Allows MIDI data from a controller to be sent to multiple devices/receivers without the need for multiple outputs from the controller. MIDI data is passed along a chain of devices by connecting one’s THRU to the IN of the next.

This technique limit’s the system to 16 channels of data. Long daisy chains may result in a lag between the time information is originally sent from a master device and when it is received further down the chain (MIDI delay).


11 - What are the advantages of multi-port MIDI interfaces?
Multi port interfaces have a number of independent OUT ports. 16 channels can be addressed to each OUT, the overall number of channels is multiplied by the amount of ports present. Delay times are significantly reduced.

Both IN and OUT of each device is connected. This means each device can be used as a controller (sending information back to the computer)


12 - What is a MIDI channel?
There are two classes of message 1 - related to MIDI channel
2 - related to system as a whole

Messages are made up of bytes with each part of the message having a special purpose. One part defines which channel the message is on. Channels are used so controlling device can make a message device specific.


13 - With reference to the MIDI interface and the MIDI specification explain why MIDI systems can only have 16 channels?
The first byte in a MIDI message is normally the status byte containing information about which channel it’s data is for. 4 bits of status byte are used to specify the channel number. 24=16 possible channels.


14 - What channel must be used for drums/percussion under the GM standard?
Channel 10 is the standard for percussion instruments.


15 - What does Omni mean in terms of the reception of MIDI information on discrete channels?
When in omni mode an electronic instrument (i.e. Synth) will take all midi messages it receives, ignoring channel data, and play back all notes on the current channel.


16 - What is the status byte and what information will it typically include?
First byte in a message is usually a status byte. Status bytes always begin with a ‘1’ to distinguish them from data bytes which begin with a ‘0’. The first 4 bits of a status byte denotes the type of message and the second half denoting the channel number.


17 - What information is typically found in the data byte?
Data bytes come after the status bytes in a MIDI message. They contain the actual data values being transmitted for a particular message. There are 8 bits to a byte with the first bit denoting type of byte. This leaves 7 bits for data, 27=128 possible values.


18 - Describe the three bytes of a MIDI note-on message.
The most common ‘word’ in a MIDI stream is the ‘Note-On’ message which consists of three bytes

1. Status byte (identifying message type and channel number) here ‘Note On’
2. Data byte identifying the note (note number)
3. Data byte identifying loudness of note (loudness usually measured by velocity)


19 - What are control change (cc) messages?
Control change messages are MIDI messages from pedals, sliders and knobs on a MIDI controller keyboard. A MIDI Control Change number is followed by a value that sets the parameter in the MIDI device. The messages are standardised under GM with a table of control function commands (with values from 0-127).


20 - What is the purpose of system exclusive (sysex) messages?
They are used to send data (i.e. Patch parameters or sample data) between MIDI devices. Manufacturers of MIDI equipment usually define their own format of sysex messages.


21 - What is the difference between channel and system messages?
There are two main types of MIDI message,

Channel messages are transmitted on individual channels rather than globally to all devices in the MIDI network. System messages carry information which is not channel specific.


22 - What MIDI note number is the musical note C3 on a MIDI keyboard?
48 (middle C is 60)


23 - How many velocity values are there?
There are many different velocity curves available but the velocity values available are only from 0 to 127 (128 possible values)


24 - What is 'running status'?
Running status allows MIDI messages to be sent without the status byte providing the previous message has the same status. This maximises the efficiency of MIDI transmission.



25 - In running status, why is a velocity value of 0 treated as a note off message?
A note on with a velocity of ‘0’ is interpreted as a note Off. It allows you to turn multiple notes on and off without the need for a status byte for all but the first message.


26 - What is the purpose of the 'Local' setting on MIDI devices?
Local control defines whether a piece of hardware is in control of it’s onboard synth.

Local ‘on’ playing keys and changing controls will trigger patches that are activate in synth
Local ‘off’ playing keys will just output MIDI data to sequencer


27 - What are system real time messages?
Real time messages only consist of a status byte. They are concerned with timing/syncing functions and must be transmitted and received at a specific time without delay.


28 - What are Song position pointers (SPPs)?
This is a MIDI message held in sequencer/synchronizer telling external devices how many 16th notes have elapsed since the beginning of the track which is being played. Used when there is no MTC or SMPTE time code support.


29 - Briefly describe the MIDI TimeCode (MTC) protocol.
Used to synchronize MIDI controlled equipment to a real time reference. MTC is a means of transferring LTC (longitudinal time code) around a MIDI system. With LTC two data groups are assigned to each of hours, minutes, seconds and frames. Code must be turned (by MTC) into one that is compatible with MIDI devices

Two types of MTC synchronizing message

1. Updates a receiver regularly with a running time code (quarter frame message)
2. Transmits one time updates of time code position (full frame message)


30 - Briefly describe the MIDI Machine Control (MMC) protocol.
MMC is specifically designed as a remote control for hard disk recording systems and other machines used for recording or playback, over a MIDI cable. This can only be done with System Exclusive messages.

31 - Why are modulation wheels often found on MIDI keyboards?
They allow real time MIDI data to be created by the user. This data (0-127) can be assigned to various parameters on a number of connected MIDI devices.


32 - Define the term polyphony.
Polyphonic music consists of several independent voices playing together as apposed to monophonic where there is just one voice playing. Polyphony determines the number of voices (notes) that can be played at the same time by an electronic sound generator/synth.


33 - Define the term multi-timbral
The term Multi-timbral defines how many different instrument sounds (patches) a MIDI synthesiser can play back simultaneously

34 - What is aftertouch?
Pressure sensitivity is called after touch. Most modern keyboards are velocity sensitive but not all are pressure sensitive (produces key pressure MIDI messages)


35 - What features do mixing consoles offer that can be controlled by MIDI?
Common features of a mixer that can be controlled by MIDI sysex messages are volume, mute groups and amplifier controls. Recent developments like USB and mLAN are changing way MIDI devices are cabled together removing MIDI’s speed and bandwidth limitations


36 - How do MIDI messages such as modulation, expression attempt to recreate the nuances of 'real instruments'?
The more MIDI messages available to a synthesizer the more it can manipulate the sounds its creating. For example a varying velocity MIDI message can be assigned to a synths volume making it less static.


37 - List eight types of MIDI message which are either System Common or System Real Time. (Hint: these are messages that are NOT identified by MIDI Channel numbers).

System common (intended for all receivers in system)
MTC Quarter Frame (MIDI time code info for syncing MIDI and other equipment)
Song Select (used with sequencers and drum machines which store and recall different songs)
Song Position Pointer (sets sequencer to start playback of song at some point rather than at the beginning)
End of Exclusive/EOX (flags the end of a system exclusive message)

Real time (used for synchronisation between clock-based MIDI components) messages usually ignored by keyboards and synths.
Timing Clock, Start/Continue/Stop sequence


38 - List four synchronisation strategies used in MIDI music production that can be used, with appropriate equipment, to synchronise a MIDI sequencer and a multitrack audio recorder. Expand any abbreviations.

In electronics one device acts as Master with others responding to master’s timing data rather than following their internal timing

MIDI clock
Digital timing messages, examples of System Common Data. Here master MIDI clock emits 24 MIDI clock messages every ¼ note. When slave receives one of these messages it moves its internal clock by 1/24th of a quarter note.

SPP (song Position Pointer Messages)
Keeps track of how many 16th notes have elapsed since the beginning of the track. Message issued prior to continue command.

SMPTE-to-MIDI (Society of Motion Picture and Television Engineers)
System synchronizes audio to film and video. SMPTE time code generator generates timing markers which are recorded on one track of a tape at regular intervals. The tape then acts as an accurate index counter. Each marker gives the elapsed time in hours, minutes, seconds and frames (usually 24 frames per second). SMPTE is based on absolute time, were music is based on measures and beats which relate to relative time. An SMPTE-to-MIDI converter is required to change absolute time to musical time (SMPTE is converted into MIDI SPP data). Many computer interfaces have SMPTE-to-MIDI conversion built in. SMPTE generally provides the system master clock.


MTC (MIDI Time Code)
Allows SMPTE times to be communicated directly over MIDI, allowing MIDI devices to respond to absolute time if necessary.

With Multi-track digital tape recorder, recorder provides the sync signal which the sequencer synchronizes to. Sequencer in turn drive other MIDI devices. Starting and stopping the tape does the same to the sequencer.


39 - MIDI timecode quarter-frame, song position pointer, song select, tune request and end of exclusive are all what type of MIDI message?
These are all ‘System common’ messages.


40 - What does the first bit of each byte of a MIDI message signify?
It defines the type of byte in a message. If it begins with a binary ‘1’ it is a status byte and if it begins with a binary ‘0’ the system knows it’s a data byte.

41 - Explain the relationship of sequencer tracks, MIDI channels and synthesiser voices.
MIDI sequencer is similar to a multi-track audio tape recorder in that it stores a musical performance. It records the data about a sound not the sound itself.

The tracks within a sequencer can be either audio or MIDI. MIDI tracks are assigned a channel number and a destination so sequencer knows what instrument (synthesizer voice) is being controlling by which track. More than one track can be assigned to the same channel and/or destination.


42 - In a MIDI set up using a MIDI keyboard controller and a computer sequencer what methods may you be able to use to physically input MIDI control data? Give three.
Key Velocity, Modulation wheel, Pitch bend, foot pedal.


43 - You have a cable with a 5-pin DIN connector at each end. If it is suitable for copying a recording from one cassette deck to another, would it be suitable for MIDI?
Yes

44 - What data is provided by a MIDI THRU connector?
The data provided by a THRU connector is a direct relay of the data present at the devices MIDI IN port


45 - Why would you be most likely to use the MIDI OUT connector for on a keyboardless MIDI sound module
The data arriving at the module’s MIDI IN will be telling it what and when top play. Any MIDI data created by the synth can be sent back to the sequencer for recording if its MIDI OUT is connected to computers MIDI IN.










46 - You are using a MIDI sequencer to record many complex tracks to be played on a MIDI system where several modules are chained together, THRU to IN. What might happen if you use Pitch Bend or Control Change messages excessively?
This would create a lot of data to be processed by the system at any given time and may lead to timing/synchronizing problems (increased system latency)


47 - Some MIDI equipment processes data from the IN connector before sending it to the THRU. What effect does this have on timing?
This will increase the systems MIDI delay time especially for devices at the end of the daisy chain.


48 - You are mixing MTC on the same cable as musical data. How might this affect the timing of notes?
The MTC data will take priority over note data making note timing less accurate.


49 - You have connected a keyboard with 32 note polyphony to a sequencer and you find that it is only capable of 16 note polyphony when played manually. If the keyboard can give the full 32 notes when disconnected from the sequencer what has happened?

???

50 - You are recording a melody into a sequencer. The melody contains a complex series of notes and pitch bend movements and you can’t get both the notes and pitch bend moves right simultaneously. What should you do?
Firstly slowing down the tempo while recording will make the task easier. Record the notes first into the sequencer. Once done, play back the track and record the pitch bend moves over the top.

51 - You have recorded a piano sound into a sequencer performed by a keyboard player who tends to use the sustain pedal a lot. What problem might you find if you record another piano part on the same MIDI channel?
The MIDI data from the sustain pedal will be included in the same track/channel as the first keyboard recording. Any extra keyboard data recorded on the same channel will also be affected by the pre-recorded sustain data.


52 - You have sampled a four bar drum loop and you trigger it from the sequencer on the first beat of bar 1. You also trigger it on the first beat of bar 5. What will happen if you play the sequence from bar 3?
No sound will be heard for two bars until sequencer reaches the first beat of bar 5


53 - Describe and explain the difference between status bytes and data bytes with reference to MIDI.
The first byte in a MIDI message is usually a status byte with information about the channel number message is intended for, and also what type of message follows. A data byte contains the actual information of the message.





54 - Give an example of the benefit of using active sensing in a MIDI system.
Active sensing mode can be triggered on or off with a MIDI message
System used to verify a MIDI connection is working. When in ‘active sensing mode’, a device will silence all output if no messages are received for 300ms. This is used as a safety feature if there is a breakdown in communication between MIDI devices.


55 - Explain why pitch bend is not classed as a MIDI control change message.
Usually a continuous controller on many MIDI keyboards. Pitch bend is in its own category as it is something which is likely to be used frequently. 2 bytes are required to allow fine enough resolution making movement seem continuous rather than in steps.


http://www.atpm.com/5.10/music.shtml
http://jedi.ks.uiuc.edu/~johns/links/music/gm.htm
http://arts.ucsc.edu/EMS/Music/tech_background/MIDI/MIDI.html
http://www.midi.org/about-midi/tutorial/tutor.shtml
http://www.geocities.com/SunsetStrip/Studio/5821/midi-basics.html
http://www.fortunecity.com/emachines/e11/86/midiglos.html
Sound and Recording an Introduction (Francis Ramsey & Tim Mccormick
Post Fri Oct 21, 2005 8:15 pm
 View user's profile Send private message Yahoo Messenger
tobyh1000



Joined: 10 Jul 2005
Posts: 13
 Reply with quote  

MIDI 1 – Week 8

01 - What does MIDI stand for?
MIDI stands for Music Instrument Digital Interface.

02 - Is MIDI a serial or parallel data flow?
MIDI is a serial data flow.

03- How does MIDI data contain timing information?
MIDI data contains timing information by using system messages sent to and from the MIDI clock, where all slave devices are linked up to the tempo of the MIDI clock.

04 - What are the advantages and disadvantages of MIDI over digital audio?
Advantages of MIDI over digital audio are:
Any sound recorded can be played back with any different instrument sound available, storage of MIDI sounds is easier as the file size is smaller, editing of recorded sound is easier and high performance computer isn’t needed to run MIDI files.
Disadvantages of MIDI over digital audio
Need MIDI capable devices, which can often be expensive initially and also cannot record direct sound without these devices, i.e.: cannot record voice.

05 - Briefly describe the General MIDI standard
General MIDI has 128 banks for instruments, 16 of which are separate types of instrument sets, like brass, woodwind etc. There is a dedicated channel for percussion on MIDI channel 10. General MIDI allows the use of electronically mapping different sounds to different keys.

06 - What other standards have evolved from GM?
Other standards that have evolved from GM include GM2(General MIDI 2), XG(Extended General) and GS(General Synth).

07 - What is the data rate of MIDI information in kbits?
The data rate of MIDI information is 31.5 kbits.

08 - What is a UART?
UART – Universal Asynchronous Receiver Transmitter sorts the information via serial connection being received and transmitted.

09 - What purpose does a MIDI Thru connection serve?
The MIDI Thru connection sends an identical copy of the output of the original MIDI output to allow another device the ability to share the information.

10 - What is daisy-chaining in terms of MIDI connectivity, and what are its
disadvantages?
Daisy-chaining in terms of MIDI connection is basically several devices being linked up together (using MIDI Thru connection) so they can all share the same information using the same timing. Disadvantages are the longer than chain, the more risk of delay in the latter involved in the connection.

11 - What are the advantages of multi-port MIDI interfaces?
Advantages of multi port MIDI interfaces are that more devices could be linked up together directly without using daisy-chaining. Cutting down on possible delay problems.

12 - What is a MIDI channel?
A MIDI channel allows the use of the 16 channels of various possible instruments with the ability to switch between each. No midi channel would result in all instruments being played simultaneously.

13 - With reference to the MIDI interface and the MIDI specification explain why MIDI systems can only have 16 channels?

14 - What channel must be used for drums/percussion under the GM standard?
Channel 10 must be used for percussion.

15 - What does Omni mean in terms of the reception of MIDI information on discrete channels?
The reception of MIDI information depends on the status of Omni. If Omni is on all the instruments/channels will play. If off only one specific channel will be allowed to play.

16 - What is the status byte and what information will it typically include?
The status byte is the first part of MIDI message. It would typically include information about what function is about to occur.

17 - What information is typically found in the data byte?
The note being played and the note velocity

18 - Describe the three bytes of a MIDI note-on message.
Status byte – States that note about to occur - Note On message
Data Byte 1 – States the pitch of note being played
Data Byte 2 – States the velocity of the note being played.

19 - What are control change (cc) messages?
Control messages are the MIDI representation for knobs and controls that change different variables of the sound.

20 - What is the purpose of system exclusive (sysex) messages?
The purpose of system exclusive messages is to control properties specific to one device, usually a unique relationship exists for the manufacturer to link up only to the specific device.

21 - What is the difference between channel and system messages?
The difference between channel and system messages are that the channel messages contain a unique channel number in the status byte of the message, to specify which channel to use and system message do not.

22 - What MIDI note number is the musical note C3 on a MIDI keyboard?
The musical note C3 on a MIDI keyboard is MIDI note 60.

23 - How may velocity values are there?
There are 128 velocity values.

24 - What is 'running status'?
Running status is the function of cutting out duplicate status messages to quicken MIDI transmission.

25 - In running status, why is a velocity value of 0 treated as a note off message?
A velocity value of 0 is treated as a note off message in running status, as there would be no sound, so effectively the note is off. Also to quicken MIDI transmission.

26 - What is the purpose of the 'Local' setting on MIDI devices?
When an external sound module is connected to a MIDI keyboard its instruments will not be used straight away as the keyboard controller instruments will be the first (local) contact. The purpose of the local setting on the MIDI keyboard is to allow use of external sound modules – in this instance, turning the local setting off, will allow the different instruments to be used from the module.

27 - What are system realtime messages?
System realtime messages control the timing execution of sequences in MIDI, to ensure all sequences start together and tempo stays the same over all the tracks.

28 - What are Song position pointers (SPPs)?
Song position pointers are used by the master devices to direct the slave devices connected to them where its position is in a song. Based on musical timing instead of actual timing.

29 - Briefly describe the MIDI TimeCode (MTC) protocol.
MIDI TimeCode protocol is an alternative to SPPs and MIDI clocks when keeping external devices, that control timed performance, in sync with each other. Based on using actual timing instead of musical timing.

30 - Briefly describe the MIDI Machine Control (MMC) protocol.
Midi Machine Control in used in conjunction with MTC and basically has the ability to remotely control external devices. It can send control messages such as play, pause, stop etc.

31 - Why are modulation wheels often found on MIDI keyboards?
Modulation can make MIDI instruments sound more authentic and so they are usually standard on most MIDI keyboards, to allow the real-time modulation of sounds using such effects as pitch bend and vibrato.

32 - Define the term polyphony.
Polyphony is the ability to play more than one note of an MIDI instrument at a time.

33 - Define the term multi-timbral
Multi-timbral is the ability to play more than one MIDI instrument at a time.

34 - What is aftertouch?
Aftertouch is the sustain of a note that occurs after a key is pressed and released.

35 - What features do mixing consoles offer that can be controlled by MIDI?
Some of the features that can controlled by MIDI that are offered by mixing consoles are volume panning and control, fader automation, muting of channels and effects.

36 - How do MIDI messages such as modulation, expression attempt to recreate the nuances of 'real instruments'?
MIDI messages like modulation can recreate the nuances of ‘real instruments’ by using the effects like vibrato and aftertouch to create a more authentic sound of a ‘real instrument’.

37 - List eight types of MIDI message which are either System Common or System Real Time. (Hint: these are messages that are NOT identified by MIDI Channel numbers).
Eight types of MIDI message which are either System Common or System Real Time are as follows:
MTC, SPPs, song select, program change, tune request, MIDI clock, active sensing and system reset.

38 - List four synchronisation strategies used in MIDI music production that can be used, with appropriate equipment, to synchronise a MIDI sequencer and a multitrack audio recorder. Expand any abbreviations.
MTC (MIDI TimeCode), MMC (MIDI Machine Code), MIDI Clock, SMPTE (The Society of Motion Picture and Television Engineers).

39 - MIDI timecode quarter-frame, song position pointer, song select, tune request and end of exclusive are all what type of MIDI message?
All are MIDI system messages.

40 - What does the first bit of each byte of a MIDI message signify?
The first bit of each byte of a MIDI message signifies whether each byte is a data or system byte. It depends on the value – if 0 then it is a data byte, if 1 then it is a system byte.

41 - Explain the relationship of sequencer tracks, MIDI channels and synthesiser voices.
The midi channel would be initially set from a keyboard which would have a synthesizer plugged into it to produce synthesizer voices when keyboard played. When recorded – a sequencer track will be created.

42 - In a MIDI set up using a MIDI keyboard controller and a computer sequencer what methods may you be able to use to physically input MIDI control data? Give three.
Three methods of physically inputting MIDI control data are: - through a modulation wheel, through an external volume control pedal and through various effect modules.

43 - You have a cable with a 5-pin DIN connector at each end. If it is suitable for copying a recording from one cassette deck to another, would it be suitable for MIDI?
No, it would not be suitable for MIDI.

44 - What data is provided by a MIDI THRU connector?
The data provided by a MIDI THRU connector is the exact same as whatever data has come through the original MIDI IN connection.

45 - What would you be most likely to use the MIDI OUT connector for on a keyboardless MIDI sound module
Most likely use the MIDI OUT connector on a keyboardless MIDI sound module to store bulk sound data to be recalled and loaded in necessary.

46 - You are using a MIDI sequencer to record many complex tracks to be played on a MIDI system where several modules are chained together, THRU to IN. What might happen if you use Pitch Bend or Control Change messages excessively?
If you use Pitch Bend or Control Change excessively you could cause delay on the signal.

47 - Some MIDI equipment processes data from the IN connector before sending it to the THRU. What effect does this have on timing?
The effect caused is delay on the timing.

48 - You are mixing MTC on the same cable as musical data. How might this affect the timing of notes?
This would affect the timing of the notes by slowing the note on or off messages resulting in inaccuracies due to the priority of MTC.

49 - You have connected a keyboard with 32 note polyphony to a sequencer and you find that it is only capable of 16 note polyphony when played manually. If the keyboard can give the full 32 notes when disconnected from the sequencer what has happened?
If the keyboard can give the full 32 notes when disconnected from the sequencer the notes must be sounding twice.

50 - You are recording a melody into a sequencer. The melody contains a complex series of notes and pitch bend movements and you can’t get both the notes and pitch bend moves right simultaneously. What should you do?
You should record the melody separately and insert the effects like pitch bend afterwards on a separate track.

51 - You have recorded a piano sound into a sequencer performed by a keyboard player who tends to use the sustain pedal a lot. What problem might you find if you record another piano part on the same MIDI channel?
A problem that may occur is that the extra piano part may use the same sustain pedal settings regardless whether desired or not.

52 - You have sampled a four bar drum loop and you trigger it from the sequencer on the first beat of bar 1. You also trigger it on the first beat of bar 5. What will happen if you play the sequence from bar 3?
If you play the sequence from bar 3 the drum will not play till bar 5, as it hasn’t been triggered.

53 - Describe and explain the difference between status bytes and data bytes with reference to MIDI.
Within MIDI a status byte will send the information to a device telling what function is about to occur and data bytes will specify the properties of the various data (notes) sequence in a MIDI system.

54 - Give an example of the benefit of using active sensing in a MIDI system.
An example of the benefit of using active sensing is: If a MIDI system is linked up through daisy-chaining and is left idle for a while active sensing will send a message to the device linked up to make sure the devices carry on working properly and doesn’t sense any errors like no connection.

55 - Explain why pitch bend is not classed as a MIDI control change message.
Pitch bend is not classed as a MIDI control message as it cannot process the pitch bend change fast enough so is classed as a separate modulation function.
Post Sat Oct 22, 2005 7:04 pm
 View user's profile Send private message

Polarman



Joined: 24 Jun 2005
Posts: 55
Location: Barbados
 Reply with quote  

01 - What does MIDI stand for?
MIDI stands for Midi Instrument Digital Interface

02 - Is MIDI a serial or parallel data flow?
MIDI is a serial data flow.

03 - How does MIDI data contain timing information?
The timing clock is a single status byte and it is issued by the controlling device six times per MIDI beat. A MIDI beat is equivalent to a sixteenth note. The timing clock byte can temporarily interrupt other MIDI messages. This is necessary since it is a synchronising message. So the synchronising byte can appear between two data bytes of a note message. The receiving device increments its internal clock by the amount sent by the sending device.

04 - What are the advantages and disadvantages of MIDI over digital audio?
The advantages are that MIDI uses little memory and the sounds can be changed after recording or later to do an alternative version. MIDI is useless without any sound generators.

05 - Briefly describe the General MIDI standard
The problem when exchanging MIDI files is the allocation of different MIDI program changes. Program change 5 can mean a flute on one device and an altosax on another device. The General MIDI is an approach to the standardisation of a sound generator behaviour so that songs can be exchanged more easily between systems and device behaviour can be predicted by controllers. There are three versions of General MIDI, GM1, GM Lite and GM2.

06 - What other standards have evolved from GM?
Other standards that has evolved from General MIDI are Scalable polyphonic MIDI (SPMIDI) and Standard MIDI files (SMF). SPMIDI is mainly used for mobile devices have issues with battery life and processing power. It was mainly developed by Nokia and Beatnik and it has been adopted by 3GPP wirelss standard for structured audio control of synthetic sounds in ring tones and multimedia messaging. SMF is used by sequencers to interchange MIDI files between the different packages.

07 - What is the data rate of MIDI information in kbits?
The MIDI data stream is a unidirectional asynchronous bit stream at 31.25 Kbits/sec. with 10 bits transmitted per byte (a start bit, 8 data bits, and one stop bit).

08 - What is a UART?

The Universal Asynchronous Receiver/Transmitter (UART) controller is the key component of the serial communications subsystem of a computer. The UART converts parallelle bytes of data and transmits the individual bits in a serial stream.

09 - What purpose does a MIDI Thru connection serve?
The MIDI Thru lets the MIDI in signal be directly output on the MIDI Thru. With this feature it is possible to chain many MIDI devices together.

10 - What is daisy-chaining in terms of MIDI connectivity, and what are its disadvantages?
Information received on the MIDI IN connector of a MIDI device is transmitted back out (repeated) at the devices' MIDI THRU connector. Several MIDI sound modules can be daisy-chained by connecting the THRU output of one device to the IN connector of the next device downstream in the chain. The disadvantages with this is that you can only use 16 MDID channels in total and connecting to many device will cause delay in the chain.
The MIDI Thru is connected to the next device MIDI in

11 - What are the advantages of multi-port MIDI interfaces?
The advantages is that you can use 16 channels on each device used and delay can be avoided.

12 - What is a MIDI channel?
Each part of a MIDI message has a specific purpose and one of these is to specify which receiving channel the message refers to. There are 16 basic MIDI channels and instruments can be set to receive on any channel or channels, if omni set to off, or to all channels if omni mode is set to on,

13 - With reference to the MIDI interface and the MIDI specification explain why MIDI systems can only have 16 channels?
The MIDI standard only uses 4 bits to address the channel 4 bits has 16 combinations so the maximum channels to address is 16.

14 - What channel must be used for drums/percussion under the GM standard?
Channel number 10 is used for drums and percussion under the GM standard.

15 - What does Omni mean in terms of the reception of MIDI information on discrete channels?
Omni mode on => receive on all channels
Omni mode off => receive on a specific channel

16 - What is the status byte and what information will it typically include?
There are two different types of MIDI message bytes, the status byte and the data byte. The first byte in a MIDI message is (normally) the status byte. The status byte always starts with binary 1 to distinguish them from data bytes. Since the status byte has seven remaining bits it can hold values between 0-127. The first three bits withholds the message type and the rest four bits sets the channel. Since there are only three bits to the message type it can theoretically have 8 different values.
The status is Note off, Note on, Polyphonic after touch, Control change, Program change, Channel after touch, Pitch Wheel.

17 - What information is typically found in the data byte?
The maximum standard MIDI message is three bytes one status byte and two data bytes but not all messages need three bytes. The data bytes is usually used to address note number, controller number, program number and values like the velocity and pressure.

18 - Describe the three bytes of a MIDI note-on message.
To describe the first Note on message we need thrre bytes. One status byte and two data bytes. The status byte will tewll the receiving device that is isd a note on message coming. The data byte nr 1 will tell the reveiving device which note is pushed down and the third data byte will tell the recebing device the velocity that the key is pushed down. The message will look alike this (if & means a hexadecimal value):

Status byte - [&8n]
Data Byte 1 – 0 followed by the note number for ex 60 if it is C3
Data Byte 2 – 0 followed by the velocity value (0-127)

19 - What are control change (cc) messages?
A MIDI device is also capable to transmit and receive information that corresponds to various switches, control wheels and pedals associated with it. All these messages comes under the control change group and should be distinguished from program change messages. The syntax for control change message is:
[&Bn] [Controller number] [Data]

20 - What is the purpose of system exclusive (sysex) messages?
System exclusive messages are exclusive to each manufacturer and even often to one particular instrument. The purpose of these messages is to give manufactures, programmers, and desigeners the freedom to communicate any device specific data and unrestricted length.

21 - What is the difference between channel and system messages?
The system message is transmitted globally in the MIDI network channel message is directed to a specific channel.

22 - What MIDI note number is the musical note C3 on a MIDI keyboard?
The MIDI note number for the musical note C3 on a MIDI keyboard is 60.

23 - How may velocity values are there?
There are 128 velocity values (0-127).

24 - What is 'running status'?
Running status is used to reduce the amount of data transfer. When using running status is assumed that the same status is used until a new status is sent. In this way there is no need to send the same status byte over and over again.

25 - In running status, why is a velocity value of 0 treated as a note off message?
To reduce the amount of data transfer the message note on with velocity 0 is used instead of a note off message. In this way a new status byte doesn’t have to be sent every time a long sting of notes is played.

26 - What is the purpose of the 'Local' setting on MIDI devices?
Local on/ local off switch decides if the keyboard should be connected or disconnected from its sound generators. If the link is disconnected the instrument will be acting as two devices a keyboard and a sound module. This is necessary if the instrument is used as a master keyboard. If the local off was not one would always hear the internal sound of the instrument together with other addressed modules.

27 - What are system realtime messages?
The MIDI System Real Time messages are used to synchronize all of the MIDI clock-based equipment within a system, such as sequencers and drum machines. Most of the System Real Time messages are normally ignored by keyboard instruments and synthesizers. To help ensure accurate timing, System Real Time messages are given priority over other messages, and these single-byte messages may occur anywhere in the data stream (a Real Time message may appear between the status byte and data byte of some other MIDI message).
The System Real Time messages are the Timing Clock, Start, Continue, Stop, Active Sensing, and the System Reset message. The Timing Clock message is the master clock which sets the tempo for playback of a sequence. The Timing Clock message is sent 24 times per quarter note. The Start, Continue, and Stop messages are used to control playback of the sequence.

28 - What are Song position pointers (SPPs)?
SPPs are used when one device needs to tell another device where it is in the song. Song means any stored sequence. An SPP represents the position in a stored song in terms of number of MIDI beats (not clocks) from the start of the song. It uses two data bytes so it can specify up to 16384 MIDI beats. SPP is a system common message not a real time message.

29 - Briefly describe the MIDI TimeCode (MTC) protocol.
MIDI time code allows production environments to easily translate time code into to time-stamped messages that can be transmitted via MIDI. This allows Midi devices to be locked and triggered to SMPTE time code. MTCs second purpose or part is to make it possible to inform MIDI devices of an upcoming event that has to be performed at a specific time such as load, play, stop, Punch in/out, reset). MTC is made up of three message types: quarter frame messages, full messages and MIDI cuing messages.

Quarter frame
This is transmitted when the system is running in real or variable speed time in either forward or reverse direction. Four quarter frame messages a gener<aated for each time code frame. A full SMPTE address needs 8 quaretr frame messages the coma+lete SMPTE address is updated every two frames. That means that 25fr/sec is 100 quarter frame messages would be transmitted every second. Each quarter frame contains 2 bytes (the common header and the message number with the encoding of the time filed digit).

Full messages
Quarter frame messages cant be sent in fast forward/reverse/locate because it would clog the MIDI data line. When in one of these modes a full message is sent to encode a complete time code address within a single message. Once playback again MTC will send quarter frame messages.

MIDI cueing messages
These messages are used to address individual devices or program within a system. It´s a thirteen bit message that could instruct play, punch in, load, stop etc.

30 - Briefly describe the MIDI Machine Control (MMC) protocol.
MMC is designed to remotely control tape machines and other studio equipment as well as musical instruments. MMC uses universal real time System exclusive messages. MMC transmits a command from the controller to a particular device, using its device ID as a means of identifying the destination of the command. Basic MMC controls are stop, play, fast forward, rewind, record etc.

31 - Why are modulation wheels often found on MIDI keyboards?
Modulation wheels on MIDI keyboards are used to send real time data ranging from 0-127 to controlvariousd parameters such as VCFs, VCOs, VCAs etc.

32 - Define the term polyphony.
Polyphony is the number of notes a device can produce simultaneously

33 - Define the term multi-timbral
Multi-timbral is the ability to play multiple instrument sounds (patches) simultaneously.

34 - What is aftertouch?
Aftertouch refers to key pressure messages which is the amount of pressure placed on a key at the bottom of its travel and used for effects based on how much the player leans on the key after depressing it usually used for vibrato. Since every key transmits aftertouch is very data consuming it is often shut of with a MIDI filter or switched off on the keyboard.

35 - What features do mixing consoles offer that can be controlled by MIDI?
Features that mixing consoles offer that can be controlled by MIDI is fader automation, mute controls or any number of realtime effects. Syncronisation to a sequencer via MTC.

36 - How do MIDI messages such as modulation, expression attempt to recreate the nuances of 'real instruments'?
MIDI messages such as modulation, vibrato etc can be sent in real time making it possible for the musician to imitate bending a string on a guitar or a nice vibrato of a flute, these messages can also be manipulated afterwards.

37 - List eight types of MIDI message which are either System Common or System Real Time. (Hint: these are messages that are NOT identified by MIDI Channel numbers).

System Common messages
Song Position
Song Select
Tune Request

System real Time messages include
MIDI Clock
Start
Continue
Stop
Active Sensing
Reset

38 - List four synchronisation strategies used in MIDI music production that can be used, with appropriate equipment, to synchronise a MIDI sequencer and a multitrack audio recorder. Expand any abbreviations.
- MTC (MIDI Time Code)
- SMART FSK
- MIDI Clock and or Song Position Pointers
- SMPTE Society of Motion Picture and Television Engineers

39 - MIDI timecode quarter-frame, song position pointer, song select, tune request and end of exclusive are all what type of MIDI message?
MIDI timecode quarter-frame, song position pointer, song select, tune request and end of exclusive are System Common Messages

40 - What does the first bit of each byte of a MIDI message signify?
The first bit of each byte of a MIDI message distinguishes if it is a status byte or a data byte. A byte that begins with a 1 means a system byte and a byte that begins with a 0 means a data byte.

41 - Explain the relationship of sequencer tracks, MIDI channels and synthesiser voices.
The sequencer tracks can be set to play specific MIDI channel. The synthesisers voices can also be set to receive MIDI data on a specific channel.

42 - In a MIDI set up using a MIDI keyboard controller and a computer sequencer what methods may you be able to use to physically input MIDI control data? Give three.
Methods use to enter MIDI data into a computer sequencer with a MIDI controller are:
- Keyboard
- Faders
- Knobs
- Modulation Wheel

43 - You have a cable with a 5-pin DIN connector at each end. If it is suitable for copying a recording from one cassette deck to another, would it be suitable for MIDI?
Yes and no. For short runs, up to about 2m, you may very well get away with other cable, such as a tape recorder (that is, NOT reversal, mirror, or cross-connected) stereo DIN to DIN audio lead. Proper MIDI cables are, however, to be preferred. If the DIN is connected as the MIDI cable check before.

44 - What data is provided by a MIDI THRU connector?
The thru connector is a direct relay of the data that is present at the MIDI Input. It is simply a buffered feeand it is not processed in any way.

45 - What would you be most likely to use the MIDI OUT connector for on a keyboardless MIDI sound module
The MIDI out on a keyboard less synth can be used to dump data and save it on an external device or if it has any controllers it can be used to transmit data messages to other devices.

46 - You are using a MIDI sequencer to record many complex tracks to be played on a MIDI system where several modules are chained together, THRU to IN. What might happen if you use Pitch Bend or Control Change messages excessively?
Using control change messages frequently can choke up the MIDI transmission since it is aserial standard.

47 - Some MIDI equipment processes data from the IN connector before sending it to the THRU. What effect does this have on timing?
The result of processing data between MIDI In and MIDI Thru is latency.

48 - You are mixing MTC on the same cable as musical data. How might this affect the timing of notes?
MTC is has always priority over musical data this can result in that the timing of the notes can be off time.

49 - You have connected a keyboard with 32 note polyphony to a sequencer and you find that it is only capable of 16 note polyphony when played manually. If the keyboard can give the full 32 notes when disconnected from the sequencer what has happened?
The Local switch is set to on which results in double notes one note directly from the keyboard and one note via the sequencer.

50 - You are recording a melody into a sequencer. The melody contains a complex series of notes and pitch bend movements and you can’t get both the notes and pitch bend moves right simultaneously. What should you do?
The best way to resolve this is to first record the notes then record the pitch bend moves. This will reduce the amount of data recorded each time.

51 - You have recorded a piano sound into a sequencer performed by a keyboard player who tends to use the sustain pedal a lot. What problem might you find if you record another piano part on the same MIDI channel?
The first recorded sustain pedal data will be as default on the next recorded piano part.

52 - You have sampled a four bar drum loop and you trigger it from the sequencer on the first beat of bar 1. You also trigger it on the first beat of bar 5. What will happen if you play the sequence from bar 3?
Bar 3 and 4 will be silent the bar will be triggered from bar 5.

53 - Describe and explain the difference between status bytes and data bytes with reference to MIDI.
The status byte determines the message type and the channel number.
The data byte(s) contains the actual data such as note number and velocity.

54 - Give an example of the benefit of using active sensing in a MIDI system.
The Active Sensing signal is used to help eliminate "stuck notes" which may occur if a MIDI cable is disconnected during playback of a MIDI sequence. If a cable is disconnected without Active Sensing, during playback, then some notes may be left playing indefinitely because they have been activated by a Note On message, but the corresponding Note Off message is not received.

55 - Explain why pitch bend is not classed as a MIDI control change message.
Pitch band is not classified as a control change message because it has a status byte of its own. The reason for this is that it uses two bytes together instead of two bytes separate as with control change, two bytes resolution, control change messages.

_______________________________________________________________________
SOURCES:
Huber, D.M., & Runstein, R.E. (2005). Modern Recording Techniques, 6th ed. Burlington: Focal Press
Rumsey, F. (2004). Desktop Audio Technology: digital audio and MIDI principles. Oxford: Focal Press
Rumsey, F. & McCormick, T. (2004). Sound and Recording: An Introduction, 4th ed. Oxford: Focal Press

http://www.harmony-central.com/MIDI/Doc/tutorial.html
http://www.midi.org/about-midi/tutorial/tutor.shtml
http://www.philrees.co.uk/midiplug.htm
Post Sun Oct 23, 2005 2:30 am
 View user's profile Send private message Yahoo Messenger ICQ Number
Polarman



Joined: 24 Jun 2005
Posts: 55
Location: Barbados
 Reply with quote  

01 - What does MIDI stand for?
MIDI stands for Midi Instrument Digital Interface

02 - Is MIDI a serial or parallel data flow?
MIDI is a serial data flow.

03 - How does MIDI data contain timing information?
The timing clock is a single status byte and it is issued by the controlling device six times per MIDI beat. A MIDI beat is equivalent to a sixteenth note. The timing clock byte can temporarily interrupt other MIDI messages. This is necessary since it is a synchronising message. So the synchronising byte can appear between two data bytes of a note message. The receiving device increments its internal clock by the amount sent by the sending device.

04 - What are the advantages and disadvantages of MIDI over digital audio?
The advantages are that MIDI uses little memory and the sounds can be changed after recording or later to do an alternative version. MIDI is useless without any sound generators.

05 - Briefly describe the General MIDI standard
The problem when exchanging MIDI files is the allocation of different MIDI program changes. Program change 5 can mean a flute on one device and an altosax on another device. The General MIDI is an approach to the standardisation of a sound generator behaviour so that songs can be exchanged more easily between systems and device behaviour can be predicted by controllers. There are three versions of General MIDI, GM1, GM Lite and GM2.

06 - What other standards have evolved from GM?
Other standards that has evolved from General MIDI are Scalable polyphonic MIDI (SPMIDI) and Standard MIDI files (SMF). SPMIDI is mainly used for mobile devices have issues with battery life and processing power. It was mainly developed by Nokia and Beatnik and it has been adopted by 3GPP wirelss standard for structured audio control of synthetic sounds in ring tones and multimedia messaging. SMF is used by sequencers to interchange MIDI files between the different packages.

07 - What is the data rate of MIDI information in kbits?
The MIDI data stream is a unidirectional asynchronous bit stream at 31.25 Kbits/sec. with 10 bits transmitted per byte (a start bit, 8 data bits, and one stop bit).

08 - What is a UART?

The Universal Asynchronous Receiver/Transmitter (UART) controller is the key component of the serial communications subsystem of a computer. The UART converts parallelle bytes of data and transmits the individual bits in a serial stream.

09 - What purpose does a MIDI Thru connection serve?
The MIDI Thru lets the MIDI in signal be directly output on the MIDI Thru. With this feature it is possible to chain many MIDI devices together.

10 - What is daisy-chaining in terms of MIDI connectivity, and what are its disadvantages?
Information received on the MIDI IN connector of a MIDI device is transmitted back out (repeated) at the devices' MIDI THRU connector. Several MIDI sound modules can be daisy-chained by connecting the THRU output of one device to the IN connector of the next device downstream in the chain. The disadvantages with this is that you can only use 16 MDID channels in total and connecting to many device will cause delay in the chain.
The MIDI Thru is connected to the next device MIDI in

11 - What are the advantages of multi-port MIDI interfaces?
The advantages is that you can use 16 channels on each device used and delay can be avoided.

12 - What is a MIDI channel?
Each part of a MIDI message has a specific purpose and one of these is to specify which receiving channel the message refers to. There are 16 basic MIDI channels and instruments can be set to receive on any channel or channels, if omni set to off, or to all channels if omni mode is set to on,

13 - With reference to the MIDI interface and the MIDI specification explain why MIDI systems can only have 16 channels?
The MIDI standard only uses 4 bits to address the channel 4 bits has 16 combinations so the maximum channels to address is 16.

14 - What channel must be used for drums/percussion under the GM standard?
Channel number 10 is used for drums and percussion under the GM standard.

15 - What does Omni mean in terms of the reception of MIDI information on discrete channels?
Omni mode on => receive on all channels
Omni mode off => receive on a specific channel

16 - What is the status byte and what information will it typically include?
There are two different types of MIDI message bytes, the status byte and the data byte. The first byte in a MIDI message is (normally) the status byte. The status byte always starts with binary 1 to distinguish them from data bytes. Since the status byte has seven remaining bits it can hold values between 0-127. The first three bits withholds the message type and the rest four bits sets the channel. Since there are only three bits to the message type it can theoretically have 8 different values.
The status is Note off, Note on, Polyphonic after touch, Control change, Program change, Channel after touch, Pitch Wheel.

17 - What information is typically found in the data byte?
The maximum standard MIDI message is three bytes one status byte and two data bytes but not all messages need three bytes. The data bytes is usually used to address note number, controller number, program number and values like the velocity and pressure.

18 - Describe the three bytes of a MIDI note-on message.
To describe the first Note on message we need thrre bytes. One status byte and two data bytes. The status byte will tewll the receiving device that is isd a note on message coming. The data byte nr 1 will tell the reveiving device which note is pushed down and the third data byte will tell the recebing device the velocity that the key is pushed down. The message will look alike this (if & means a hexadecimal value):

Status byte - [&8n]
Data Byte 1 – 0 followed by the note number for ex 60 if it is C3
Data Byte 2 – 0 followed by the velocity value (0-127)

19 - What are control change (cc) messages?
A MIDI device is also capable to transmit and receive information that corresponds to various switches, control wheels and pedals associated with it. All these messages comes under the control change group and should be distinguished from program change messages. The syntax for control change message is:
[&Bn] [Controller number] [Data]

20 - What is the purpose of system exclusive (sysex) messages?
System exclusive messages are exclusive to each manufacturer and even often to one particular instrument. The purpose of these messages is to give manufactures, programmers, and desigeners the freedom to communicate any device specific data and unrestricted length.

21 - What is the difference between channel and system messages?
The system message is transmitted globally in the MIDI network channel message is directed to a specific channel.

22 - What MIDI note number is the musical note C3 on a MIDI keyboard?
The MIDI note number for the musical note C3 on a MIDI keyboard is 60.

23 - How may velocity values are there?
There are 128 velocity values (0-127).

24 - What is 'running status'?
Running status is used to reduce the amount of data transfer. When using running status is assumed that the same status is used until a new status is sent. In this way there is no need to send the same status byte over and over again.

25 - In running status, why is a velocity value of 0 treated as a note off message?
To reduce the amount of data transfer the message note on with velocity 0 is used instead of a note off message. In this way a new status byte doesn’t have to be sent every time a long sting of notes is played.

26 - What is the purpose of the 'Local' setting on MIDI devices?
Local on/ local off switch decides if the keyboard should be connected or disconnected from its sound generators. If the link is disconnected the instrument will be acting as two devices a keyboard and a sound module. This is necessary if the instrument is used as a master keyboard. If the local off was not one would always hear the internal sound of the instrument together with other addressed modules.

27 - What are system realtime messages?
The MIDI System Real Time messages are used to synchronize all of the MIDI clock-based equipment within a system, such as sequencers and drum machines. Most of the System Real Time messages are normally ignored by keyboard instruments and synthesizers. To help ensure accurate timing, System Real Time messages are given priority over other messages, and these single-byte messages may occur anywhere in the data stream (a Real Time message may appear between the status byte and data byte of some other MIDI message).
The System Real Time messages are the Timing Clock, Start, Continue, Stop, Active Sensing, and the System Reset message. The Timing Clock message is the master clock which sets the tempo for playback of a sequence. The Timing Clock message is sent 24 times per quarter note. The Start, Continue, and Stop messages are used to control playback of the sequence.

28 - What are Song position pointers (SPPs)?
SPPs are used when one device needs to tell another device where it is in the song. Song means any stored sequence. An SPP represents the position in a stored song in terms of number of MIDI beats (not clocks) from the start of the song. It uses two data bytes so it can specify up to 16384 MIDI beats. SPP is a system common message not a real time message.

29 - Briefly describe the MIDI TimeCode (MTC) protocol.
MIDI time code allows production environments to easily translate time code into to time-stamped messages that can be transmitted via MIDI. This allows Midi devices to be locked and triggered to SMPTE time code. MTCs second purpose or part is to make it possible to inform MIDI devices of an upcoming event that has to be performed at a specific time such as load, play, stop, Punch in/out, reset). MTC is made up of three message types: quarter frame messages, full messages and MIDI cuing messages.

Quarter frame
This is transmitted when the system is running in real or variable speed time in either forward or reverse direction. Four quarter frame messages are generated for each time code frame. A full SMPTE address needs 8 quarter frame messages the complete SMPTE address is updated every two frames. That means that 25fr/sec is 100 quarter frame messages would be transmitted every second. Each quarter frame contains 2 bytes (the common header and the message number with the encoding of the time filed digit).

Full messages
Quarter frame messages cant be sent in fast forward/reverse/locate because it would clog the MIDI data line. When in one of these modes a full message is sent to encode a complete time code address within a single message. Once playback again MTC will send quarter frame messages.

MIDI cueing messages
These messages are used to address individual devices or program within a system. It´s a thirteen bit message that could instruct play, punch in, load, stop etc.

30 - Briefly describe the MIDI Machine Control (MMC) protocol.
MMC is designed to remotely control tape machines and other studio equipment as well as musical instruments. MMC uses universal real time System exclusive messages. MMC transmits a command from the