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 2003


Author Thread
ben m



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

Ok, loads of questions on MIDI this week - it's a big topic but we only have one week to cover it so lets get cracking;

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?

Good Luck,
ben m
_________________
ben@audiocourses.com
Post Mon Oct 20, 2003 10:59 pm
 View user's profile Send private message Yahoo Messenger MSN Messenger
mommi



Joined: 21 Apr 2003
Posts: 47
Location: Tallinn, Estonia
 Reply with quote  

Alright it seems I can't crasp all the world's knoledge in a week. Dear heaven is there a lot of matters 8O Being encouraged by Chris' e-mail I now post my "masterwork" here.

Happy reading happy bunnies Laughing

http://www.midi.org/about-midi/abtmidi.shtml
http://www.lammertbies.nl/comm/info/RS-232_uart.html
http://tomscarff.tripod.com/midi_analyser/midi_note_numbers_for_octaves.htm
http://www.sfu.ca/sca/Manuals/247/midi/MTCSpec.html
http://www.borg.com/~jglatt/tech/mtc.htm
http://www.borg.com/~jglatt/tech/mmc.htm
http://www.soundonsound.com/sos/1994_articles/dec94/midicontrollers.html
http://www.soundonsound.com/sos/1995_articles/jan95/midicontrollers2.html
http://www.soundonsound.com/sos/1994_articles/jan94/allenheathgs3v.html
http://www.soundonsound.com/sos/1995_articles/dec95/midibasics5.html


01 - What does MIDI stand for?
MIDI is an acronym for Musical Instrument Digital Interface. The term comprises three components, the communications protocol, the hardware interface and the distribution format called Standard MIDI Files.

02 - Is MIDI a serial or parallel data flow?
MIDI data is sent in serial from with the data transmission speed of 31.25 kbits per second. Transmission is unidirectional and asynchronous (meaning not occurring at predetermined or regular intervals). For every byte, ten bits are sent – a start bit, eight data bits and a stop bit.

03 - How does MIDI data contain timing information?
MIDI communication is accomplished through MIDI messages. There is a special type of messages called System Real Time Messages intended for synchronization of MIDI clock-based equipment. These messages include the Timing Clock message, which sets the tempo for playback and is sent 24 times per quarter note. System Real Time messages are given priority over other messages and can occur anywhere in the data stream.

04 - What are the advantages and disadvantages of MIDI over digital audio?
The advantages:
a) Storage space. Since MIDI data contains only instructions instead of audio data, MIDI files are much smaller than sampled audio files.
b) Smaller files result in less data transmission bandwidth used.
c) Editing MIDI files is easy.
d) It also is easy to change the playback speed and pitch independently of each other.

The disadvantage is that MIDI files are no good per se. Synthesizers and/or samplers are used to actually get the sound off from MIDI information.

05 - Briefly describe the General MIDI standard
General MIDI standard, or GM (GM1), defines a set of general capabilities for GM instruments. The aim is to get consistency in patch or program numbering so that you can rely on certain patch numbers to produce certain instrument sounds. So GM includes the definition of GM Sound Set (a patch map), GM Percussion map (mapping note numbers to percussion sounds) and a set of GM Performance capabilities (number of voices, types of MIDI messages recognized etc)
GM settles that channels 1-9 and 11-16 should be used for chromatic instrument sounds, and channel 10 is reserved for percussion sounds. Sounds are grouped into sets, so that patch (program) numbers 1-8 represent piano sounds, 9-16 chromatic percussion sounds, 17-24 are organ sounds etc. GM specifies sounds for program numbers up to 128.
Channel 10, as stated above, is used for “key-based” percussion sounds. Here the played note (represented by note-on message) determines what instrument sound should be used.

06 - What other standards have evolved from GM?
- General MIDI 2 or GM2. This is a set of extensions to GM1, increasing both the number of simultaneously available sounds (from 24 to 32) and the amount of control over editing and performance. Two channels (10 and 11) are devoted to percussions. All GM2 devices are backward compatible with GM1.
- General MIDI Lite or GML. That specification is intended for equipment that does not have the capability to support the full GM1 feature set (mobile applications).
- Scalable Polyphony MIDI Specification or SP-MIDI. This utilizes a new MIDI message that can be used to indicate how a MIDI data should be performed by devices with different polyphony. For example, music written for GM2's 32-note polyphony, could also be made to play on GM1 and GM Lite devices, by eliminating certain instrument parts according to the composer's choice.

07 - What is the data rate of MIDI information in kbits?
31.25 kbits per second.

08 - What is a UART?
UART, short for Universal Asynchronous Receiver / Transmitter, is a device responsible for translating parallel data of a computer into serial form and vice versa. All serial communications between computers and other devices involve UART in a form of a chip.

09 - What purpose does a MIDI Thru connection serve?
MIDI Thru connection transmits out the same MIDI information that is input from the MIDI In connection. The idea is to link several MIDI devices in a chain. Different devices are set to listen to different channel numbers, so each one reacts only to the messages meant for it. A MIDI sequencer can operate several devices this way.

10 - What is daisy-chaining in terms of MIDI connectivity, and what are its
disadvantages?

Daisy-chaining is accomplished by connecting the MIDI Thru output of a listening MIDI device to the MIDI In input of another listening device. The latter could be connected to the next device in turn. The disadvantages stem from latency issues. For example, a single Note On message consists of 3 bytes, and for each byte, 10 bits are sent. On the MIDI communications link it takes ca 1ms to send. While this is completely acceptable, the delays sum up when more notes are used, and long chains can make the matter even worse.

11 - What are the advantages of multi-port MIDI interfaces?
http://www.soundonsound.com/sos/1995_articles/dec95/midibasics5.html
Multi-port MIDI interface allows to break free from the limit of 16 MIDI channels. Multi-port means there are two or more MIDI output sockets, each of which has its own set of MIDI channels. To use multi-port capabilities, the sequencer software must support multi-port operation.
Normally, the separate MIDI output ports are numbered A, B, C, D, and so on, and inside the sequencer software, the MIDI channel number may be followed by a letter. For example, MIDI channel 8 on MIDI port B would simply be Ch 8B.
One further benefit of using a multi-port interface is that MIDI data can be spread over the different ports to avoid data bottleneck problems.

12 - What is a MIDI channel?
MIDI channel is a logical channel indicated by it's number and used to represent one instrument. 16 channels are available. Any MIDI instrument can be set to transmit on any one of these channels. Sound sources (synthesizers) are assigned channel numbers they respond to, multitimbral sound modules can listen to several channels at a time. Necessary sounds (patch numbers) are assigned to the channels. As a result, sending a note-on message to some channel is interpreted by the sound module as an instruction to play a note, using the instrument (sound) associated with the respective channel number.

13 - With reference to the MIDI interface and the MIDI specification explain why MIDI systems can only have 16 channels?
MIDI messages utilizing the concept of channels include a 4-bit channel number in their status byte. By means of four bits, sixteen different values can be represented, from 0 to 15.

14 - What channel must be used for drums/percussion under the GM standard?
For “key-based” sounds, channel 10 (GM1), channel 10 or 11 (GM2). Key-based means that every note corresponds to different instrument (note number 59 is Ride Cymbal 2, 60 is Hi Bongo)
Chromatic percussion instruments (like vibraphone or marimba) are not different from non-percussion instruments in this sense – channels 1 to 9 and 11 to 16 can be used.

15 - What does Omni mean in terms of the reception of MIDI information on discrete channels?
When Omni mode is turned on, the synthesizer will respond to incoming MIDI messages on all channels. Turning Omni mode off makes the synth to respond to only one channel.

16 - What is the status byte and what information will it typically include?
The eight-bit status byte is the first part of a MIDI message, being generally followed by one or two data bytes. The status byte indicates the message type and, for channel messages, also the target channel number.

17 - What information is typically found in the data byte?
Data byte(s) contain information about message parameters (“which one”, “how much”), eg patch number (for Program Change message) or pitch bend value (for Pitch Bend message).
For note-on / note-off messages, the (two) data bytes specify which key was pressed (in terms of the key number) and velocity.

18 - Describe the three bytes of a MIDI note-on message.
The status byte contains the note-on message along with a 4-bit channel number. The two data bytes indicate the key number (which key was pressed) and velocity (how hard it was pressed).

19 - What are control change (cc) messages?
Control change messages control a variety of functions. These are channel-specific, so the status byte contains the target channel number. Of the two data bytes, the first one indicates the “controller number” while the other specifies the “control value”. Examples cotld be the Bank Select operation, corresponding to the controller number zero, or channel mode messages (Local Control on/off, Omni Mode on/off, Mono / Poly).

20 - What is the purpose of system exclusive (sysex) messages?
System Exclusive messages can be used to send data such as patch parameters or sample data between MIDI devices. MIDI equipment manufactures can define their own format for sysex data. For this, they are granted an unique ID number by the MIDI Manufacturers Association (MMA) or the Japan MIDI Standards Cnmmittee (JMSC). The ID number ir included as part of the System Exclusive message. ID is followed by any number of data bytes, and the EOX message is used to terminate the data transmission.
Some IDs are reserved for special purposes, eg the MIDI Sample Dump Standard, designed for the transmission of sample data between MIDI devices.

21 - What is the difference between channel and system messagas?
Channel messages are channel-specific and include the channel number in their status byte. System messages are system-wide, not addressed to specific channels.

22 - What MIDI note number is the musical note C3 on a MIDI keyboard?
If the C3 is to mean the middle C, this is MIDI note number 60. If to read the octaves so that the lowest is considered to be number 0, then C3 is note number 36. If this is how I’m used to, then middle C is C4 and C3 has the note number of 48!
There is quite a messy business around the octave numbering. Quote:
The MIDI specification only defines note number 60 as "Middle C", and all other notes are relative.
...
There is a discrepancy that occurs between various models of MIDI devices and software programs, and that concerns the octave numbers for note names. If your MIDI software/device considers octave 0 as being the lowest octave of the MIDI note range, then middle C's note name is C5. The lowest note name is then C0 (note number 0), and the highest possible note name is G10 (note number 127).
Some software/devices instead consider the third octave of the MIDI note range (2 octaves below middle C) as octave 0. In that case, the first 2 octaves are referred to as -2 and -1. So, middle C's note name is C3, the lowest note name is C-2, and the highest note name is G8.

For me it seems, if we have octave –2 and –1 and 0 (which is supposed to be two octaves below middle C), then two octaves from 0 make octave no 1 and 2. Meaning we should get C2 instead of C3 for middle C. So much mess there Confused

23 - How may velocity values are there?
As the data byte represents velocity with it's seven lowest bits, it seems there are 128 different velocity values ranging from 0 to 127.

24 - What is '2unning status'?
Running status is a way of optimizing the MIDI data transfer performance. Since it often happens that a series of consecutive messages consists of messages of the same type, it is unnecessary redundancy to transmit the status bytes every time. When running status is used, a status byte is sent only when the message is not of the same type as the last message transmitted on the channel. The status byte of messages of the same type is not transferred, only the data bytes are sent.

25 - In running status, why is a velocity value of 0 treated as a note off message?
Because this way there is no need to send a note-off message explicitly. The notes are made to sound by means of the note-on message and, when using running status, it is now enough to transmit only data bytes (containing the note number and velocity) both to make a specific note to sound (velocity ] 0) or to make it stop sounding (velocity = 0). This enhances the effectiveness of running status.

26 - What is the purpose of the 'Local' setting on MIDI devices?
MIDI data is usually generated in a MIDI controller (like a MIDI keyboard) or MIDI sequencer. When sent to the MIDI In connector of a MIDI sound generator or sound module, those will produce the sound. Many MIDI instruments include both a controller and a MIDI sound module. The controller and the sound module are linked internally on these instruments. The link can be enabled or disabled through the 'Local' setting.

27 - What are system realtime messages?
System Real Time messages are used to synchronize the MIDI clock-based equipment (like sequencers and drum machines) in a system; keyboard instruments and synthesizers usually ignore these messages. Real time messages are given priority over other messages in order to ensure accurate timing, they may even appear between the status and data bytes of other messages.
System Real Time messages are:
Timing Clock. This is the master clock determining the playback tempo. Timing Clock message is sent 24 times per quarter note.
Start, Continue, Stop. These control playback of the sequence.
Active Sensing is used to stop playing of “stuck notes” which may occur if a MIDI cable is disconnected while notes are being played as a result of note-on messages.
System Reset, generally not sent automatically and must be initiated manually by a user.

28 - What are Song position pointers (SPPs)?
Song Position Pointer is one of System Common messages. Used to set a sequencer to start playback at some specific point other than the beginning, the Song Position Pointer value is related to the number of MIDI clocks which would have elapsed between the beginning of the song and the desired point in the song. This message can only be used with equipment which recognizes MIDI System Real Time Messages.

29 - Briefly describe the MIDI TimeCode (MTC) protocol.
MIDI Time Code is an absolute timing reference, whereas MIDI Clock and Song Position Pointer are relative timing references.
Quoting verbatim and not briefly at all from http://www.borg.com/~jglatt/tech/mtc.htm since there is too much new info for me.
MIDI Time Code (MTC) is a sub-protocol within MIDI, and is used to keep 2 devices that control some sort of timed performance (ie, maybe a sequencer and a video deck) in sync. MTC messages are an alternative to using MIDI Clocks and Song Position Pointer messages. MTC is essentially SMPTE mutated for transmission over MIDI. SMPTE timing is referenced from an absolute "time of day". On the other hand, MIDI Clocks and Song Position Pointer are based upon musical beats from the start of a song, played at a specific Tempo. For many (non-musical) cues, it's easier for humans to reference time in some absolute way rather than based upon musical beats at a certain tempo.

There are several MIDI messages which make up the MTC protocol. All but one are specially defined SysEx messages.
The most important message is the Quarter Frame message (which is not a SysEx message). It has a status of 0xF1, and one subsequent data byte. This message is sent periodically to keep track of the running SMPTE time. It's analogous to the MIDI Clock message. The Quarter Frame messages are sent at a rate of 4 per each SMPTE Frame. In other words, by the time that a slave has received 4 Quarter Frame messages, a SMPTE Frame has passed. So, the Quarter Frame messages provide a "sub-frame" clock reference. (With 30 fps SMPTE, this "clock tick" happens every 8.3 milliseconds).

But the Quarter Frame is more than just a quarter frame "clock tick". The Quarter Frame message's data byte contains the SMPTE time (ie, hours, minutes, seconds, and frames). SMPTE time is normally expressed in 80 bits. Obviously, this is too many bits to be contained in 1 8-bit data byte. So, each Quarter Frame message contains just one piece of the time (for example, one Quarter Frame may contain only the hours). In order to get the entire SMPTE time at any given point, a slave needs to receive several Quarter Frame messages, and piece the current SMPTE time together from those messages. It takes 8 Quarter Frame messages to convey the current SMPTE time. In other words, by the time that a slave can piece together the current SMPTE time, two SMPTE frames have passed (ie, since there are 4 Quarter Frame messages in each frame). So, MTC's version of SMPTE time actually counts in increments of 2 SMPTE Frames per each update of the current SMPTE time.

For cueing the slave to a particular start point, Quarter Frame messages are not used. Instead, an MTC Full Frame message should be sent. The Full Frame is a SysEx message that encodes the entire SMPTE time in one message. The Full Frame simply cues a slave to a particular SMPTE time. The slave doesn't actually start running until it starts receiving Quarter Frame messages. (Which implies that a slave is stopped whenever it is not receiving Quarter Frame messages). The master should pause after sending a Full Frame, and before sending a Quarter Frame, in order to give the slave time to cue to the desired SMPTE time.
During fast forward or rewind (ie, shuttle) modes, the master should not continuously send Quarter Frame messages, but rather, send Full Frame messages at regular intervals.

30 - Briefly describe the MIDI Machine Control (MMC) protocol.
MIDI Machine Control (MMC) is a protocol specifically designed to remotely control hard disk recording systems, and other machines used for record or playback, over a MIDI cable. The only way to do this is with System Exclusive messages, and so several specific SysEx messages were defined in order to implement MIDI Machine Control. Many devices support this protocol (although a more elaborate protocol was later created called MIDI Show Control, which features a command set to control non-musical equipment such as lights and effects devices).
Every device which can respond to MIDI Machine Control messages should have a unique (ie, individual) ID number. Usually, a device will allow the user to set its individual ID, so that any conflicts between devices can be resolved.
The Goto message allows recording or playback to be cued to a specific position in terms of SMPTE time (ie, a specific hour, minute, second, SMPTE frame number, and subframe number).
It is possible to query an MMC device to find out it's identity. To do so, you send the device an Indentity Request message. The reply is device/manufacturer specific.

31 - Why are modulation wheels often found on MIDI keyboards?
A Modulation Wheel can be found on many keyboards and controllers for sending MIDI modulation signals to the sound module to modulate the sound of the synthesized sound in real time.

32 - Define the term polyphony.
Polyphony refers to the device's capability to produce several notes at a time as opposed to monophonic devices (as there were earlier) that only can play one sound at a time. Common way to indicate that the synthesizer can play up to 32 sounds together is to say it has 32-note polyphony.

33 - Define the term multi-timbral
A device is multi-timbral if it can produce several different timbres (different instrument sounds) at a time. On multi-timbral device's (samplers or sound modules, for example), different channels can be (and usually are) assigned different sounds. Depending on what channel a note-on/note-off message is sent, the respective instrument sound will be produced/stopped.

34 - What is aftertouch?
Aftertouch is a device's ability to sense the amount of pressure which is being applied to the keys while they are depressed. This pressure information may be used to control some aspects of the sound produced by the synthesizer, eg vibrato. If the keyboard has a pressure sensor for each key, then the resulting "polyphonic aftertouch" information would be sent in the form of Polyphonic Key Pressure messages. These messages include separate data bytes for key number and pressure amount. If the keyboard can follow only a single pressure level for the entire keyboard, this "Channel aftertouch" information is sent using the Channel Pressure message, which needs only one data byte to specify the pressure value.

35 - What features do mixing consoles offer that can be controlled by MIDI?
A lot of automating can be controlled by MIDI. For analogue consoles, this mostly means automated muting. Digital consoles are much more versatile in the automation sense, offering features like mix scene recalls or remote control of mix parameters. MIDI can be used for automix synchronization (through MTC messages) or for implementing a ‘fader start’ function. Bulk Dump function can be used for data transfer between consoles, or for backup either to a sequencer or to a MIDI data filer. A console can be used for controlling remote MIDI devices (eg to start/stop playback on a sequencer).

36 - How do MIDI messages such as modulation, expression attempt to recreate the nuances of 'real instruments'?
http://www.borg.com/~jglatt/tech/midispec/exp.htm
http://midistudio.com/Faculty/Enh_Expression.htm
Modulation (controller #1) is generally used to control LFO depth, for effects like pitch vibrato. Vibrato can also be applied by other methods, such as aftertouch. Most synths respond to CC#1, and can have various functions assigned to respond to it. Assigning filter cutoff and/or resonance to respond to the modulation wheel makes basic timbral changes possible. Even more effect is achieved when VCA level can be simultaneously assigned to the same wheel; this enables imitative sounds to have a natural tonal change in sync with the volume variations.
Expression (controller #11) can be used to create crescendos and decrescendos, to expand and diminish intensity. The overall volume relations between different voices remain same, as expression controls the volume in percents scale.

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).
MTC Quarter Frame
Song Select
Song Position Pointer
Tune Request
End Of Exclusive
Timing Clock
Start, Continue, Stop
Active Sensing
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.
http://www.soundonsound.com/sos/1994_articles/jul94/synchronisation.html
- FSK (Frequency Shift Keying) system records a series of electronic tones (output from a drum machine) onto a spare track of the tape machine. These tones are related to the tempo clock of the drum machine, so as the tempo is increased, the electronic sync track follows. To run the drum machine in sync with the tape machine, the tape output from the sync track is plugged into the Sync In socket on the drum machine, the drum machine switched to Tape Sync, and the tape started from the beginning. The drum machine will automatically start when it receives the sync code from the tape machine and should stay in time with the tape until you stop the tape machine.
- Smart FSK, a refinement of the original FSK sync code, still works by recording the code to tape in the form of tones. The advantages are that being designed to work with MIDI SPPs (Song Position Pointers), the tape machine can be started anywhere in the song and the sequencer will always find the right place.
- SMPTE (stands for the Society of Motion Picture and Television Engineers). SMPTE is based on real time measured in hours, minutes and seconds, with further subdivisions to accommodate individual frames of TV and film material. Because SMPTE code is independent of tempo, a whole tape can be recorded or 'striped' with code before any recording or programming starts. The starting tempo and the SMPTE location, plus any subsequent tempo changes, are stored in the form of a 'tempo map' which must be used alongside the sequencer data whenever the sequence is run sync'ed to tape.
- MTC (MIDI Time Code), essentially a MIDI interpretation of the traditional SMPTE protocol. Again this system requires that you create a tempo map.

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

40 - What does the first bit of each byte of a MIDI message signify?
The first (most significant) bit of a byte indicates whether this is a status byte or a data byte. Status bytes have 1 on the first bit, while data bytes have 0.
The first bit of a byte in MIDI data stream signifies the start of a byte data. MIDI data is transferred serially, using ten bits for every byte: a start bit, eight data bits and a stop bit.

41 - Explain the relationship of sequencer tracks, MIDI channels and synthesiser voices.
You generally devote each instrument sound you need a MIDI channel of it’s own. Each instruments’ performance is represented by MIDI Channel messages like note-on/note-off. You record the performance to a sequencer, individual MIDI channels being stored to different sequencer tracks. You then play back the MIDI sequence from a sequencer, here the MIDI channels correspond to voices on the synth. The instrument sound is chosen for each voice (MIDI channel) via a Program Change message.

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.
Question

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?
http://www.midi.org/about-midi/electrical.shtml
http://www.leadsdirect.f9.co.uk/din.htm
http://www.amabilidade2002.com/audio54.htm
If the cable has just two “data” leads (left/right), then it connects pin 3 to 3 and bin 5 to 5, bin 2 being connected to the shield (earth). MIDI connection uses pin 4 to 4 and 5 to 5 plus shielding (bin 2). So this cable is not suitable for MIDI. On the other hand, standard 5-pin DIN connects all other pins except bin 2 (shield) straight through. So it seems this cable would transmit MIDI data.

44 - What data is provided by a MIDI THRU connector?
A device transfers the same data out from a MIDI Thru connector that was input from a MIDI In connector. Output from MIDI Thru is used to make link several MIDI devices in a daisy chain.

45 - What would you be most likely to use the MIDI OUT connector for on a keyboardless MIDI sound module
Bulk data transfer Question

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?
These messages involve a lot of data. When combined with a need to drive several modules, this can produce data traffic overload manifesting itself in increased latency problems.

47 - Some MIDI equipment processes data from the IN connector before sending it to the THRU. What effect does this have on timing?
This behaviour must induce time delays, ie increased latency.

48 - You are mixing MTC on the same cable as musical data. How might this affect the timing of notes?
MTC includes transmission of a two-byte MTC Quarter Frame message. This is done four times for each SMPTE frame, making MTC Quarter Frame messages to appear every 8.3 ms (since SMPTE has 30 frames per second). For each byte, ten bits are transferred. This makes a total of 30 x 4 x 2 x 10 = 2400 bits per second overhead on a communication channel, which is 7.7 % of the bandwidth of a 31.25 bps data link. Well I don't know whether 7.7% is very much, but delays in timing are likely to occur, especially in the case of several modules chained.

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?
Could it be that the sequencer had only 16 note polyphony Question

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?
I should record the notes first and pitch bend movements afterwards. Pitch bend movements are transferred by means of Control Change message and contain lot of data. But how the heaven this can be done Question

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?
Question

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?
I see two possibilities here, the loop either sounds till it’s natural end while the other playing on top of it, or the playback of the first loop is stopped before starting the other one at bar 3. I’m not in a position to judge which one of these possibilities is the right one. Confused
Post Sat Oct 25, 2003 1:52 am
 View user's profile Send private message Visit poster's website ICQ Number

julesf



Joined: 31 Aug 2003
Posts: 58
Location: Southampton, UK
 Reply with quote  

Sorry for the delay Ben. Embarassed

Thanks for the referance Mommi Wink

Errors and omissions accepted Laughing


<b>01 - What does MIDI stand for?</b>

Musical instrument digital interface.

<b>02 - Is MIDI a serial or parallel data flow?</b>
Serial data flow.

<b>03 - How does MIDI data contain timing information?</b>
All MIDI data is sent via MIDI protocol. MIDI events are streamed serially and each event
Contains it's own special PCM encoded instruction. MIDI system real-time messages are sent 24 times every 1/4 note and these messages have priority over other messages.

www.mommi.com


<b>04 - What are the advantages and disadvantages of MIDI over digital audio? </b>

<b><u>PROS</b></u>
MIDI allows easy editing of recorded events, good for experimenting and trying different sounds.
Performance errors can be easily corrected or piece can be quantized.
Generated files are small and can be quickly sent over the Internet.
MIDI can be used to trigger other devices.

<b><u>CONS</b></u>
System now dated.
Timing can be sloppy due to latency.
Universal formats such as GM limited and if format not used no guarantee of result when played on another sound source or sequencer.

<b>05 - Briefly describe the General MIDI standard</b>

GM uses a pre-set programme format to allow GM MIDI files to be played back accurately on any GM compatible keyboard or sound module. There are Standard patches used, which are grouped into pads, basses, strings, organs, Sound effects etc. Each patch will be identical on any GM based keyboard or module although the actual quality of the sounds produced may vary considerably which is a limitation of the system. When the GM MIDI file is played back on a suitable sequencer patch change messages are sent first which assigns the appropriate patches as were used to create the original GM MIDI file. Messages are also sent to fix the volume, pan, reverb and chorus of the patches, these may change in real time as the song is played back.
The MIDI channels 1-16 are also designated for certain types of instruments and channel 10 is always reserved for drums. The system allows cross compatibility for standard GM midi files, however the replay results can still vary depending on the quality of the system that is used
To play back the midi file.

<b>06 - What other standards have evolved from GM?</b>

GM2 followed GM1 which extended the number of instruments that could be used at once and added a 2nd drum track. Legacy support was available for GM1 though some instruments will not play back.

XG (Extended General) was developed by Yamaha which offers higher quality voices and more control over effects when used with XG compatible systems while remaining fully compatible with GM

GS (General Synth) was developed by Roland and again specifies further enhancement and control over voices and timbres when used on Roland GS platforms but is still compatible with normal GM files.

http://www.btinternet.com/~kimbosattic/main/lessons/pdfs/ElectronicMusic/MIDIStan.pdf

<b>07 - What is the data rate of MIDI information in kbits? </b>

31.25K bits/sec Though Korg supports 38.4Kbits/sec via their PCIF serial link.

<b>08 - What is a UART? </b>

UART (Universal Asynchronous receiver transmitter) A chip in a computer
That allows parallel DAT to be converted to serial data and vice versa. These chips
Used to be quite slow and caused bottlenecks in the system. The later generation of chips are much faster.

http://www.kevinboone.com/compdict/compdict_UART.html


<b>09 - What purpose does a MIDI Thru connection serve? </b>
A MIDI through port echoes all data entering the MIDI in port. Though some systems
Allow filtering of certain messages say SYSEX to prevent them from being echoed to the through port. The purpose is to allow other MIDI devices to also receive MIDI data from the source controller or sequencer. Using through the MIDI units can be daisy chained together however this can cause timing problems due to MIDI latency.

<b>10 - What is daisy-chaining in terms of MIDI connectivity, and what are its
Disadvantages? </b>

Daisy chaining is when a number of MIDI devices are connected together using the MIDI in ports and MIDI through ports the main disadvantage is the latency which causes the devices further down the chain to react later than the devices at the beginning of the chain. As a rough guide approx. 1ms per event per device should be assumed when daisy chaining. Therefore with much data activity and many devices timing errors can soon become a problem. Steinbergs LTC protocol as used with the Midex 3 and Midex 8 attempts to address latency issues but this will only help tighten up data leaving a PC DAW and the same latency issues will still be a problem
When daisy chaining.

<b>11 - What are the advantages of multi-port MIDI interfaces?</b>
By using a Multi port device such as the Midex 8 each MIDI device can have its
Own direct connection avoiding the need to daisy chain and thus reducing latency.
It can also be much easier to manage MIDI devices when each has its own port number in a sequencer.

<b>12 - What is a MIDI channel?</b>

Each MIDI port has the ability to transmit and receive MIDI data on up to 16 MIDI channels.
Each channel can receive any type of MIDI message however some protocols such as GM do reserve certain channels for certain instruments the main one being drums on channel 10. Each device receives all data transmitted from the MIDI out or through port that it is connected to but only responds to the data on the channel that it is set to unless it is set to OMNI whereas it will respond to messages on any channel.


<b>13 - With reference to the MIDI interface and the MIDI specification explain why MIDI systems can only have 16 channels? </b>
The header that is sent out before the event that defines which channel the next packet is for is only a 4 Bit header which constrains the ID number to 16 if 0 is seen as 1.

<b>14 - What channel must be used for drums/percussion under the GM standard?</b>
Channel 10 is reserved for drums and percussion in GM1, 10 & 11 in GM2.

<b>15 - What does Omni mean in terms of the reception of MIDI information on discrete channels?</b>

If a MIDI device is set to receive OMNI then it will respond to messages from any channel 1-16.

<b>16 - What is the status byte and what information will it typically include?</b>
The status byte is the header message that is sent prior to the data byte. It holds information relating to the type of event that will follow and which channel it is targeted for.

<b>17 - What information is typically found in the data byte? </b>
The data byte holds the data for the event this will depend on the type of event but for a note on message this would typically be the note number and the velocity of the note. For a CC event it would be the CC number and the value.

<b>18 - Describe the three bytes of a MIDI note-on message.</b>
The first byte is the status byte, which indicates the event type and target channel. The second and third bytes indicate the note number and velocity.
19 - What are control change (cc) messages?
Continuous Controller messages are used to control various parameters of a MIDI device in real-time. A good example is the Mod wheel of a synth when moved up MIDI CC messages will start to be sent out, how these are used will very much depend on the MIDI device receiving them and how that unit is set up. The sustain pedal is another example.

<b>20 - What is the purpose of system exclusive (sysex) messages?</b>
System Exclusive messages are exclusive to each individual device and will normally be ignored by other devices on the same channel as each device has its own firmware ID number. These messages are used to carry out processes such as bulk data dumps and data uploads.

<b>21 - What is the difference between channel and system messages?</b>
Channel messages are received by the targeted channel only, or a channel that is set to OMNI. Systems messages are received and acted upon by all connected devices if the system command is implemented by the device.

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

Going to need to check this one.

23 - How may velocity values are there?

128 (0-127)

<b>24 - What is 'running status'?</b>
Running Status is a method of reducing traffic on the MIDI interface and thus improving response times. Since a large number of events are the same such as note on and note off the status
Byte is not sent until the next event is seen to be of a different type in which case a new status byte is sent.

<b>25 - In running status, why is a velocity value of 0 treated as a note off message?</b>

This system further enhances the running status as it removes the need to send MIDI note off messages further reducing traffic on the bus. If a velocity message is 0 it is assumed that the note should be ceased.

<b>26 - What is the purpose of the 'Local' setting on MIDI devices? </b>
The local mode on a keyboard connects or disconnects MIDI data from the local keyboard to the local sound generator.

<b>27 - What are system real-time messages?</b>
These messages are used for timing and real-time control of certain devices on the MIDI bus.
The messages control tempo as well as start play pause play. They are received by all devices on the MIDI bus (system messages) but are only acted upon by devices that implement real-time messages. These may include drum machines and sequencers, workstations etc.

<b>28 - What are Song position pointers (SPPs)?</b>
The song position pointer allows devices that implement the commands to start playing from a point other than the beginning of the song. They are used with drum machines and sequencers some hard disc recorders and work with system real time messages. They work by sending out a number of clock pulses after the SPP message that indicates how far to move along the song. A system real-time start message then instructs playing to start.

<b>29 - Briefly describe the MIDI TimeCode (MTC) protocol.</b>
MTC is a sub protocol within the MIDI protocol. It is basically a revamped form of SMPTE that has been rewritten to work with MIDI. It is a real-time code rather than the relative reference that is used with SSP. It is used to keep two or more devices that support the protocol locked in real time. This the best system to use for syncing devices.
http://www.borg.com/~jglatt/tech/mtc.htm & mommi.


<b>30 - Briefly describe the MIDI Machine Control (MMC) protocol.</b>

MMC protocol was devised to allow the control of audio and video recorders to be controlled by a master machine or remote control. It usually runs hand in hand with MTC. MMC controls the
Transport while MTC controls the sync. Also, if tape is the used as the recording medium on the machine(s), and the master controller, say a sequencer is moved on in a song by say a couple of minutes then the system will allow the MTC to hold while a FF MMC code is sent. When the MTC sees that the time is approaching the actual frame in the song then a PLAY MMC is sent and the MTC locks the machines back together again. This is how my ADAT machine locks to CUBASE VST 5/32 via a JL COOPER DATA SYNC 2 using MTC & MMC.

<b>31 - Why are modulation wheels often found on MIDI keyboards? </b>
The modulation wheel sends CC, which can be used to control a number of parameters dependent on the device that is connected. It basically allows real-time control of expression from the keyboard.

<b>32 - Define the term polyphony.</b>

Polyphony describes a system that can play more that one note at a time where as monophonic defines a system that can only play one note at a time.

<b>33 - Define the term multi-timbral</b>

Multi timbral refers to a system that allows a number of voices or timbres to be layered and played simultaneously This could be say a choir, strings, and a piano timber all playing together on one keyboard or sound module when a key or keys are held sdown. Each timbre will use one note of polyphony.

<b>34 - What is aftertouch?</b>
Aftertouch allows further expression. After the key is pressed pressure can be applied to the keys witch cause aftertouch CC messages to be generated. These messages can be used to provide further modulation.

<b>35 - What features do mixing consoles offer that can be controlled by MIDI?</b>
Normally mutes and VCA control.



<b>36 - How do MIDI messages such as modulation, expression attempt to recreate the nuances of 'real instruments'?</b>

By providing vibrato and pitch bend.


<b>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). </b>

Tune Request
Song position
Song Select
System Reset
All Notes off
Active sensing
MIDI Clock
Program Change


<b>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. </b>


MIDI Time code
MIDI Clock Cycle and song position pointer
Time code striping with Frequency Shift Key code or Midi Time Code for analogue multitrack.
SMPTE



<b>39 - MIDI timecode quarter-frame, song position pointer, song select, tune request and end of exclusive are all what type of MIDI message? </b>

System real time messages


<b>40 - What does the first bit of each byte of a MIDI message signify?</b>

The MSB of the first byte indicates whether the byte is a status or data byte 0 or 1.

41 - Explain the relationship of sequencer tracks, MIDI channels and synthesiser voices.

A sequencer may have many tracks, each track will have 16 channels and can hold MIDI data to play 16 voices. Therfore a sequencer that had 8 tracks could play 128 voices.


<b>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. </b>

The standard MPU-401 interfaces on the joystick socket with the correct breakout lead.
A USB midi device this may have one or more inputs and usually has at least three outs.
A PCIF interface host if supported by the device which allows input at 38.4Kb/sec through
The RS232 port of the PC.

<b>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? </b>

No this would be a crossover cable MIDI requires pin 2 to 2 pin 4 to 4 pin 5 to 5 on a 5 pin DIN plug. Pins 1 & 3 are not used.

<b>44 - What data is provided by a MIDI THRU connector? </b>
All data is echoed to the through connector unless there is a system on the device or PC software
To filter messages to the through connector.

<b>45 - What would you be most likely to use the MIDI OUT connector for on a keyboardless MIDI sound module </b>

Sysex bulk data dumps.

<b>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?</b>

You may find that all of the modules respond to the Mod or Pitch bend CC messages when you only wanted one module to. You can try to disable these messages in the modules that you wish to ignore them, or place the module that you wish to respond to the CC messages first and then use a filter on the through port of that module to filter the messages out and prevent the other modules from seeing them.

<b>47 - Some MIDI equipment processes data from the IN connector before sending it to the THRU. What effect does this have on timing?</b>

This can cause latency when many modules are daisy chained together.


<b>48 - You are mixing MTC on the same cable as musical data. How might this affect the timing of notes?</b>

Using MTC on the same cable as MIDI data may cause the note timing to become unstable.
This can happen because the MTC will have priority over the note on note off messages.


<b>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? </b>

The sequencer is allowing midi through to send the original data back to the keyboard and is thus triggering the notes twice. This will reduce the polyphony and normally make the keyboard sound kinda out of phase too.



<b>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?</b>

Record in the notes to the sequencer and then merge record the CC messages for pitch bend and modulation separately.

<b>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?</b>

The notes will stick on.

<b>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?</b>

Well I see that the loop will not trigger until the sequencer reaches bar 5, but I am not sure how this may effect the track apart from the fact the that 2 bars will be playing the track with no drums. Depends on the sequence and how it is put together.


Cheers,


Jules Wink
Post Sun Oct 26, 2003 1:38 am
 View user's profile Send private message Send e-mail Visit poster's website
Fenderocks



Joined: 09 Aug 2003
Posts: 26
Location: Music City, USA
 Reply with quote  

01 - What does MIDI stand for? MIDI stands for musical Instrument digital interface.
02 - Is MIDI a serial or parallel data flow? MIDI is a serial data flow. The flow of the data does not occur in any predetermined or regular intervals.
03 - How does MIDI data contain timing information? By the system real time messages which MIDI connecting with clocked based equipment.
04 - What are the advantages and disadvantages of MIDI over digital audio? MIDI files are smaller since it’s not audio data, which makes timing a lot easier and being able to change tempo’s easier, which makes edit a simpler. The disadvantages are that digital audio will not sound so fake.
05 - Briefly describe the General MIDI standard – it capabilities to gm in instruments relates to different patches for different instruments. The GM specification runs through a patch map all the way from 1 to 128, you set up the patches to how you want the instruments. So generally 1-9 can be you instruments sounds and 10-16 can be you percussion and so forth. The have different channels as well for example channel 10 is you percussion sounds and channel 1 would be you instruments.
06 - What other standards have evolved from GM? That Gm2 and Gm1 are compatible, which increases both the number of available sounds, with control with overall performance on the GM2.
07 - What is the data rate of MIDI information in kbits? 31.25 kbits per second.
08 - What is a UART? Universal Asynchronous Receiver / Transmitter, what UART does, is it transmits parell data into serial and serial data into parell if needed.
09 - What purpose does a MIDI Thru connection serve? It translates out the same information received. You set different channels to each different device so that each one reacts to the channel number programmed too.
10 - What is daisy-chaining in terms of MIDI connectivity, and what are its
disadvantages? Daisy chaining is connecting one to another and then to another and then to another well you get the point. Disadvantages are the more you hook the more latency you will receive. With long chains you will be having problems.
11 - What are the advantages of multi-port MIDI interfaces? Multi-port is when a MIDI channel has more than a few outputs, which each contains its own MIDI channels.
12 - What is a MIDI channel? Used to represent one channel of one instrument set through you 1- 128 numbers. So you assign you number to the channel to the instrument you wish to use.
13 - With reference to the MIDI interface and the MIDI specification explain why MIDI systems can only have 16 channels? Because of it’s 4 bit channel number it with 16 different values.
14 - What channel must be used for drums/percussion under the GM standard? Channel 10 or 11
15 - What does Omni mean in terms of the reception of MIDI information on discrete channels? Omni means that the signal will respond to all channels vs. just the pre set ones. With omni only one channel can be used vs. any of them.
16 - What is the status byte and what information will it typically include? The status byte is sent first before the data, the main message. It tells us what type of event is coming and what channel it’s referring to.
17 - What information is typically found in the data byte? It tells us what type of message is coming, the patch number, also tells us note on and note off, and the key of the note.
18 - Describe the three bytes of a MIDI note-on message. The status byte relays the channel number as well as note on and so forth and the two data bytes tell us the control number and the control value.
19 - What are control change (cc) messages? It’s where the message that is sent, contain data that reads, what needs to be changed as far as the status bytes with there channel numbers and with the data bytes the control numbers and the control values.
20 - What is the purpose of system exclusive (sysex) messages? System exclusive messages determine what is sent to MIDI devices, patches, patch parameters, or samples. MIDI is something I just don’t get but after reading around I found that id’s are required that MIDI manufactures program there own with these, and are sent as well with the message, as well as data bytes
21 - What is the difference between channel and system messages? The names kind of gives it away, but channel messages are channel specific only meaning to the channel it was intend for, bringing there status byte and their channel number with them. As far as system messages it sends the message system wide, with no assigned number.
22 - What MIDI note number is the musical note C3 on a MIDI keyboard? The Middle C or number 60 with out changing the specific instrument shown for your piano roll view.
23 - How may velocity values are there? 128 starting at 0.
24 - What is 'running status'? Running status is a way of messing with the MIDI performance on transferring data back and forth. What this is doing is taking the status byte and only sending it when the message is first going out, what happens is so many messages are going back and forth that when the messages repeat it won’t send the status byte but will send the data byte, Every time a message is sent the first time, it sends both the status byte and the data byte.
25 - In running status, why is a velocity value of 0 treated as a note off message? So theirs no point in sending one. Running status take care of that for us but sending data that shows when the notes on and when should it stop. By containing the note number and the velocity to make it note sound and velocity 0 to stop the note.
26 - What is the purpose of the 'Local' setting on MIDI devices? The “local” setting on a MIDI device enables or disables the link that is attached. When using a MIDI keyboard of course you have to connect through the MIDI input to produce the sound, but how the Local settings comes into play is by the Midi’s controller and sound module that is linked to it.
27 - What are system realtime messages? There basic function is used to operate MIDI clock-based equipment such as drum machines. System real time messages are the timing clock, the basic functions that control playback start, pause, stop, and maybe system reset.
28 - What are Song position pointers (SPPs)? SPPs are common messages, to start the playback anywhere besides the very beginning. Related to the number of MIDI clocks playback during through the destination of the song.
29 - Briefly describe the MIDI TimeCode (MTC) protocol. MIDI time code is one protocol within MIDI that is great for syncing devices, but used to keep two or more devices locked in real time.
30 - Briefly describe the MIDI Machine Control (MMC) protocol. Used to control audio and video through remote, used with MTC, a deadly weapon to have complete control with every thing in time by relay messages to each other, to hold up or keep going.
31 - Why are modulation wheels often found on MIDI keyboards? The modulation wheels are used for modulating the sound of synchronized sounds in real time by sending signals to the sound module.
32 - Define the term polyphony. Polyphony is the device's capability to produce several notes at a time as to monophonic devices that only can play one sound at a time.
33 - Define the term multi-timbral a multi-timbral device can produce several different timbres (instruments) at a time.
34 - What is aftertouch? Aftertouch is an ability in a device to sense the amount of pressure which is being used to the keys while they are pressed. This pressure information may be used to control some aspects of the sound produced by the device.
35 - What features do mixing consoles offer that can be controlled by MIDI? automix synchronization, start, stop, playback, automation, mutes and VCA control.
36 - How do MIDI messages such as modulation, expression attempt to recreate the nuances of 'real instruments'? Pitch bends and vibrato.
37 - List eight types of MIDI message which are either System Common or System Real Time.
Tune Request
Song position
Song Select
System Reset
All Notes off
Active sensing
MIDI Clock
Program Change (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.
- (MTC) MIDI time code, make tempo map.
-SMPTE(society of motion picture and television engineers) tempos are stored in a tempo map when brought down to tape needs to have a sequencer data running next to it ,based on hours, min, seconds, and even could go lower depending on what you recording.
39 - MIDI timecode quarter-frame, song position pointer, song select, tune request and end of exclusive are all what type of MIDI message? The systems real time messages.
40 - What does the first bit of each byte of a MIDI message signify? If it a status byte 1 or data byte 0.
41 - Explain the relationship of sequencer tracks, MIDI channels and synthesiser voices. With sequencer tracks you have multiple tracks each one of those tracks has up to 16 different channels that can hold up 16 different voices via midi. The relationship of all these is that there all found under the same category
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. A USB device with the right xlr, a guitar head or pedal containing midi outs, and a boss MG3 that contains MIDI outs.
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 for the cassette deck to each other because it would be the right type of DIN and with MIDI NO as well because MIDI requires 2, 4, 5, but not 1 and 3.
44 - What data is provided by a MIDI THRU connector? The same as for a MIDI in, the MIDI thru would be use to link one MIDI to another MIDI up to as many as needed.
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? Latency
47 - Some MIDI equipment processes data from the IN connector before sending it to the THRU. What effect does this have on timing? Delays in timing
48 - You are mixing MTC on the same cable as musical data. How might this affect the timing of notes? Timing becomes unstable because of the messages that go to the MTC have more ranks that the messages going towards the musical data.
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? Well I think it would have to trigger the notes twice by sending the data back in forth
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?- Record them separately ????
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 Difference in the two unless it was the same keyboard artist but on time due to the sequencer.
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? Either the volume would be louder or you will have no drum part on the first two bars.
Post Sun Oct 26, 2003 8:58 am
 View user's profile Send private message Send e-mail Visit poster's website AIM Address

ruiabreu



Joined: 15 Sep 2003
Posts: 12
Location: Portugal
musical technology_week1  Reply with quote  

These are just part of the answers. I'll post the others as soon as I can.

Cheers

Rui

01 - What does MIDI stand for?

Musical Instrument Digital Interface

02 - Is MIDI a serial or parallel data flow?

It’s a serial data flow.

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

32Kbits/sec.

08 - What is a UART?

UART (universal asynchronous receiver / transmitter) it’s a device that is incorporated in a MIDI interface and transforms MIDI messages (serial data) into information that the computer (sequencer) can understand (parallel data) and vice-versa.

09 - What purpose does a MIDI Thru connection serve?

When a device receives MIDI messages through the input and wants to send an exact copy of the input information to another device, it uses the MIDI thru connection.


10 - What is daisy-chaining in terms of MIDI connectivity, and what are its disadvantages?

"Daisy-chaining" is the process of connecting MIDI capable devices in serial connections. This means that a first device connects to a second device, this second device is connected to a third device and so on. One device only receives one input and sends one output.

11 - What are the advantages of multi-port MIDI interfaces?

With multi-port MIDI interfaces you have a "star" configuration MIDI interface instead of a "daisy chain" configuration. With a "star" configuration, if you have a problem with one of the MIDI devices that are connected with the multiport interface, this problem doesn’t spread to other devices. Also in a "daisy chain" there is a very small delay of the MIDI messages when it passes from device to device. This delay is in the order of the microseconds and it can only be noticeable when you have many MIDI devices connected in series, or one of the devices delays the signal. With multi-port you don’t have problem because each device receives the input data device first hand.

12 - What is a MIDI channel?

MIDI channels are settings that enable the performer to assign a certain MIDI message to one device and not another. Each channel message as a four bit code embedded on his status byte. This code determines witch channel the message is assigned for. If the code says channel 5 then all the devices set up to receive messages on channel 5 will perform the MIDI message, if not it will ignore it. Because a channel is defined by a 4 bit code then you can have 16 possibilities hence 16 channels.

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

See last question.

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

Channel 10.

15 - What does Omni mean in terms of the reception of MIDI information on discrete channels?
Omni is a setting to define if a device receives data on all channels (omni on) or just on his designated channel (omni off).

16 - What is the status byte and what information will it typically include?

Status byte is present on every MIDI message and has information on the type of message and, if needed, the MIDI channel the message is intended for. This type of message always starts with a 1 in the first binary.

17 - What information is typically found in the data byte?

Usually pith or velocity information. Data byte it’s a numeric type of data that has 128 steps and defines "how much" of the type of message defined by the status byte you want to transmit.

18 - Describe the three bytes of a MIDI note-on message.

Status byte starts with a binary one and the 7 binaries left define the message as being a note-on message. The first data byte defines the pitch. The second data byte defines the velocity (it’s defined by the speed of the key struck).

19 - What are control change (cc) messages?

Control change messages define the type of mechanism (other than a keyboard) that is being used to enter MIDI performance messages to the system. Examples are the modulation wheel and the breath controller (controller 1 and 2)

20 - What is the purpose of system exclusive (sysex) messages?

They are intended to send information for the entire MIDI network and not just for a part of the MIDI network or for just one device.

21 - What is the difference between channel and system messages?

Channel are messages intended for one or more devices that respond to the information of the message assigned channel. System messages concern all the devices in a MIDI setup.

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


23 - How may velocity values are there?

From 0 to 127 in a total of 128 steps.

24 - What is 'running status'?

It’s a MIDI setting that defines the status byte that is active at one time. This means that, when a status byte comes down the MIDI cable, the next data bytes will be related to him. This prevents the need for a status byte for every MIDI message if the message type is the same. “Running status” was intended to prevent doubling of note-on status bytes when a performer was playing lots of keys at the same time.

25 - In running status, why is a velocity value of 0 treated as a note off message?

Because if you send a note-off, then you are sending a status byte that indicates a note-off. This way you have to send a note on status byte next time you play a key and the purpose of running status is defeated

26 - What is the purpose of the 'Local' setting on MIDI devices?

‘Local’ setting is found on MIDI devices that receive and send MIDI messages using in, out and thru ports. When ‘Local’ setting is off then the device sends an exact copy of the MIDI information that he is receiving through the thru port. This enables “daisy chain” connections within MIDI devices.

27 - What are system realtime messages?

They are system messages that controls the tempo of a song, and synchronize different MIDI equipment.
Post Mon Oct 27, 2003 1:26 am
 View user's profile Send private message Send e-mail ICQ Number
Albow



Joined: 02 Sep 2003
Posts: 27
Location: Spain
 Reply with quote  

Hi everyone. Sorry this is in late. I've got no excuses, it's just that I
do the tech exercise second as the recording techniques is a bit more
intuitive, and I didn't get to finish it before the weekend. The good
thing about midi is that there is a lot of stuff out there on it. The bad
thing is that it meant there was so much stuff to sift through. As I was
determined to finish this today, from question 35 onwards, I have mostly
read the 3 posts in here already and thrown them back at the questions.
Thanks for that guys.

Smile

http://crystal.apana.org.au/ghansper/midi_introduction/terms.html#omni
http://www.evolution.co.uk/pub/manuals/uc33_extra_help_guide.pdf


01 - What does MIDI stand for?

Musical Instrument Digital Interface

02 - Is MIDI a serial or parallel data flow?

It is a serial data flow that can use USB. Serial data is sent down data
cables one bit at a time.

03 - How does MIDI data contain timing information?

It contains a facility to keep track of absolute time which is fixed, this
is time as we know it in an everyday sense - structured with hours, minutes
and seconds. It can also track relative time, which is represented by a
tempo, for example 80bpm, which can be sped up or slowed down.

04 - What are the advantages and disadvantages of MIDI over digital audio?

One of the advantages is storage and speed - MIDI is far more efficient in
that it takes up to 10 times less storage space than digital samples and
can be processed more quickly. This has knock on throughput benefits in
terms of data transfer and economy of a computer's processing power.

05 - Briefly describe the General MIDI standard

The heart of General MIDI (GM) is the Instrument Patch Map. This is a list
of 128 sounds, with corresponding MIDI program numbers. Most of these are
imitative sounds, though the list includes synth sounds, ethnic instruments
and a handful of sound effects.

06 - What other standards have evolved from GM?

Yamaha XG and Roland GS

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

31.5KbAud

08 - What is a UART?

A Universal Asynchronous receiver/transmitter. This handles conversions
from a serial byte stream to a parallel byte stream and vice versa as
required.

09 - What purpose does a MIDI Thru connection serve?

This sends a copy of the MIDI signal that can link several instruments /
sounds together by connecting them serially.

10 - What is daisy-chaining in terms of MIDI connectivity, and what are its
disadvantages?

This is the phenomena referred to above, where devices are connected
serially - one after the other. The disadvantages of this are that you can
only build the chain so long before it becomes overlength. The performance
issues such as latency can begin to appear. It also provides a single
point of failure which will affect devices later in the chain. If the
first device has a fault then it will take out the devices later in the
chain, and it can be arduous finding out which device has the fault through
process of elimination.

11 - What are the advantages of multi-port MIDI interfaces?

Multi-port interfaces avoid the above problem of daisy chaining by
providing a single point of contact for each device. This gives the
opportunity of adding more devices through more channels - up to 256, and
if the interface has its own controller, can give more effective data
transfer between devices and their host.

12 - What is a MIDI channel?

A MIDI channel will be the interface between the source of data processing
(the system) and one MIDI instrument or device.

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 is allocated as the default standard.

15 - What does Omni mean in terms of the reception of MIDI information on
discrete channels?

A MIDI receiver normally only responds to Channel Voice messages on one
particular MIDI Channel. If the receiver mode is changed to 'Omni On', the
receiver will respond to Channel Voice messages on any MIDI channel.

16 - What is the status byte and what information will it typically
include?

The status byte exists at the head of a midi data packet and identifies the
type of the midi data packet. This will give instructions to the system to
reproduce a sound under the categorisation of the following:

8 = Note Off 9 = Note On A = AfterTouch (ie, key pressure) B = Control
Change C = Program (patch) change D = Channel Pressure E = Pitch Wheel

17 - What information is typically found in the data byte?

Volume, tempo, ADSR

18 - Describe the three bytes of a MIDI note-on message.



19 - What are control change (cc) messages?

The CC delivers messages to the device to assign a channel a particular
mode. For example, CC 147 puts a channel in note on/off mode.

20 - What is the purpose of system exclusive (sysex) messages?

The sysex messages contain the manufacturer's ID code, and accompany data
samples that are transferred between midi devices. This is to ensure
compatibility between a manufacturer's devices and the midi controller.

21 - What is the difference between channel and system messages?

Channel messages are directed at a single device on a particular channel.
System messages are standard MIDI messages held by the system to
communicate with any midi compatible instruments.

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

114 60 64

23 - How many velocity values are there?



24 - What is 'running status'? Running status maximises the efficiency of
MIDI transmission. With each data packet, the accompanying information
about the destination of the data can be taken off, saving one byte per
packet if the data of one type is being sent consistently to one channel



25 - In running status, why is a velocity value of 0 treated as a note off
message?

A note off status in running status is basically a note on with a value of
0. With this there is no need to allocate a space to note off, it is
assumed that if the note on is not on - a status of 0 - then it is a note
off.

26 - What is the purpose of the 'Local' setting on MIDI devices?

The local setting enables the sound of an instrument itself to be played
directly as opposed to through a midi sequencer. You would normally have
the local setting on if only playing the keyboard itself, but would have it
off if playing other instruments through the keyboard as the local note
would interfere with the midi-processed note.

27 - What are system realtime messages?

These messages are used to control midi instruments that are applied in
realtime, and controlled by the system clock, that is drums and system
sequencers and the system clock itself. Such application commands that are
controlled in real time are: Start, Continue, Stop, Active Sensing,

28 - What are Song position pointers (SPPs)?

Song position pointers act as cues in a particular stretch of music for
other midi programs that are sections of music inserted during the song.

29 - Briefly describe the MIDI TimeCode (MTC) protocol.

The MTC (Midi Time code) protocol is used to control two timed processes so
that they are in sync with each other. MTC is essentially SMPTE mutated
for transmission over MIDI. It is an alternative to using SPPs or the midi
clocks.

30 - Briefly describe the MIDI Machine Control (MMC) protocol.

Midi Machine Control protocol enables the user to use commands on a PC/Mac
from a midi cable. This is made possible with sysex messages.

31 - Why are modulation wheels often found on MIDI keyboards?

They can be used to bend the pitch of a sound upwards or downwards.

32 - Define the term polyphony.

Polyphony is the ability of an instrument to play more than one note
at-a-time. If a device has 24 note polyphony, then 24 notes can be played
simultaneously.

33 - Define the term multi-timbral

Multi-timbral is the ability of the device to play more than one kind of
sound at the same time. For example, this might be the sound approximating
a guitar and a piano.

34 - What is aftertouch?

Aftertouch is a synth technique that enables the volume to be raised by
touching a key harder after is has been first touched to produce the sound.
With mono aftertouch, the application of more pressure to the key will make
all the current sounds being output rise in volume. Polyphonic aftertouch
will only raise the volume of the specific note allocated to the key
pressed

35 - What features do mixing consoles offer that can be controlled by MIDI?

Automation, mutes, VCA control, automix syncronisation.

36 - How do MIDI messages such as modulation, expression attempt to
recreate the nuances of 'real instruments'?

Modulation adds pitch bend and vibrato to the sound, therefore altering the
simulated sound in a way that can be done by the instrument itself. This
is done by applying filter cut off to the sound when the modulation wheel
is used.

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).

MIDI Clock MIDI Start MIDI Continue MIDI Stop Active Sense Reset Tune
request Song position


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.

SMPTE - used to chart real time for TV /film frames MTC - Midi Time Code -
an approximation of the above, but aimed at MIDI audio data. FSK -
Frequency Shift Keying - used to syncronise beats from a drum machine with
tape Smart FSK - Used with SPPs - song position pointers, so that FSK can
be charted accurately at any position of the tape.

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

System Real Time messages

40 - What does the first bit of each byte of a MIDI message signify?

The first byte identifies the type of MIDI message. The type is either a
staus byte or a data byte.

41 - Explain the relationship of sequencer tracks, MIDI channels and
synthesiser voices.

A sequencer track will have 16 MIDI channels each of which has 16 possible
sequencer voices. They are like Russian Dolls, I suppose.

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.

I imagine that this means connecting MIDI inputs to the computer sequencer,
not the other way round. In that case, you would connect to the midi input
through a USB connection, a PCI card with matching midi I/O sockets, or an
effects pedal/console with midi IO.

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, because out of the 5, pins 1 and 3 are not used to transfer MIDI

44 - What data is provided by a MIDI THRU connector?

All data transferred from one MIDI device to another that is not filtered
through an alternative controller.

45 - What would you be most likely to use the MIDI OUT connector for on a
keyboardless MIDI sound module

Sysex data dumps (taken from Julesf)

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?

You may find the latency suffers as you would be transferring more data all
the way down a populated serial bus. This may affect the sound which could
start producing blips and pockets of distorted sound.

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

It is an extra stage in processing the data, so latency could suffer.

48 - You are mixing MTC on the same cable as musical data. How might this
affect the timing of notes?

The MTC has priority of the note on note off data. This could upset the
regularity of the timing of the 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?

The sequencer is imposing a 16 note polyphony on the keyboard. This is
probably because it is sending back the same note 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?

Apparently you record the melody first and then add the pitch bend
separately.


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?

I imagine that the piano notes might perform with sustain aswell, as if a
piano player had his/her foot on the sustain pedal.

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?

Guessing here, surprie surprise, but I'll go for the idea that you will hear
the first drum loop fade out and start up again, thus hearing 2 halves of
the sample in the wrong order Confused
Post Mon Oct 27, 2003 9:10 pm
 View user's profile Send private message Visit poster's website

indigojf