Learning About Event Types
This section covers the different types of events that can be viewed, and changed, in the Event List.
Note Events
Note events are used to trigger (play) software instruments and external MIDI sound modules or keyboards.
Num(ber): MIDI note number (or pitch). The range is from C −2 (note #0) to G8 (note #127). Middle C is note #60. It’s known as C3 in MIDI terminology. On some keyboards and synthesizer modules (notably those made by Korg and Roland), the note range is from C −1 (note #0) to G9 (#127). Middle C is called C4 on such devices. The Display Middle C As pop-up menu in the Logic Pro > Preferences > Display pane allows you to alter the display to match your device.
Val(ue): Velocity of a note from 1 to 127. The zero value (0) acts as a note off message, and cannot be used.
Length/Info: Length of the note. Although MIDI can only transfer note on or note off messages, Logic Pro actually stores the position and length of all notes, which makes them easier to access musically. The note off message is generated automatically during playback.
Mapped Instrument Notes
If the edited MIDI region is played through a mapped instrument, the names defined for each individual note appear in the Status column. A small note symbol to the left of each name aids in identifying these named events as note events.
Viewing and Changing Note Release Velocity
You can edit the release velocity of a note event when the Additional Info button is active.
To view release velocity data
Control Change Events
These event types are used to transfer MIDI controller information (modulation, sustain, volume, and pan, for example) to software instruments or external MIDI keyboards and modules.
Num(ber): The number of the controller. Each MIDI controller (such as the modulation wheel or sustain pedal) is assigned a specific Continuous Controller (CC) number (CC#1 or CC#64 respectively). This can vary from device to device. Several controllers (apart from the two above) are defined in the same way by most manufacturers; these standardized controllers include volume (CC#7) and pan (CC#10).
Length/Info: Shows the name of standardized controllers defined in the MIDI Specification.
Val(ue): Value of the controller. Continuous controllers have a range of 0 to 127. Switch controllers (CC#64-CC#90) transfer two states: off (val = 0) and on (any value between 1 and 127).
Pitch Bend Events
Pitch bend events are used to continuously vary the pitch. They are usually generated by a centered pitch bend wheel or joystick on your keyboard.
Num(ber): Fine pitch bend division (LSB: Least Significant Byte). Many keyboards transmit a value of 0. If the pitch bend wheel has an 8-bit resolution, you see values of 0 or 64 in this column.
Val(ue): The effective pitch value (MSB: Most Significant Byte), ranging from 0 to 127. A value of 64 corresponds to the half-way setting of the wheel.
Length/Info: The 14-bit value is displayed in this column as a decimal figure ranging from −8192 to 8191 (if your keyboard transmits 14-bit pitch bend data). The value in this column can be edited in the usual ways.
Program Change Events
Program change events transmitted to connected MIDI devices are used for patch (preset or setting) selection. These may be sounds in a synthesizer, programs in an effects unit, or snapshots in an automated mixing desk, for example.
Val(ue): A program number between 0 and 127.
Some manufacturers (such as Yamaha) number the programs in their devices from 1 to 128, not 0 to 127. If you have devices that follow this numbering protocol, you need to subtract 1 from the program number shown on the device itself, when adding or altering a program change event.
Other manufacturers use various methods of dividing internal memory locations into groups (or banks) and sounds. The most common is divisions into 8 groups of 8 sounds, each numbered 1 to 8. These devices respond to program numbers 0 to 63 by addressing storage locations 11 to 88. The instruction manuals for these devices should contain conversion tables to assist you.
Num(ber): Bank select. Normally you will see this symbol (-), which means no bank select message will be sent. If you assign a number between 0 and 126, a bank select event is sent before the program change event.
This allows you to address the different sound banks (preset, internal, card, and so on) of connected MIDI keyboards and modules. The synthesizer must be able to recognize controller 32 as bank select, but unfortunately this standard is not used by all manufacturers.
If you have any problems with bank select, check your synthesizer’s manual to see whether, and how, it responds to bank select commands.
Note: You can change the type of bank select messages sent by Logic Pro (see Custom Bank Selects), if necessary for your devices.
Aftertouch Events
Aftertouch (or channel pressure) events are generated by a mechanical pressure sensor beneath some MIDI keyboards. These events can be used to modulate the synthesizer sound. All note events on a particular MIDI channel are affected. This means that applying pressure to one note in a held chord affects all notes in the chord.
Num(ber): This column is unused, as aftertouch events only have one data byte.
Val(ue): Displays the amount of pressure on the keyboard (0 to 127).
Poly Pressure Events
Poly(phonic) pressure events are generated by mechanical pressure sensors beneath each individual key on some MIDI keyboards. The resulting sound modulation only affects the particular note that is pressed harder (after the initial keystrike). Only a few keyboards offer this capability.
Num(ber): Displays the MIDI note name (C3, G4, and so on).
Val(ue): Displays the amount of pressure on the key (0 to 127).
SysEx Events
System exclusive data (SysEx) is unique to individual MIDI devices. You can record these events by using the dump utilities of your synthesizers. This allows you to save patch information, or other data, outside of the MIDI device (in a Logic project or MIDI file). The arrows in front and behind EOX are used to add or remove bytes.
Warning: Editing SysEx Events requires a thorough understanding of the data format used by the MIDI device in question. Incorrect edits can lead to the corruption, or loss, of sound or other data.
SysEx Data in Hex Format
You can choose whether SysEx data is displayed in hexadecimal or decimal, in the Event List or the SysEx fader editors, with the View > SysEx in Hex Format command.
Hexadecimal digits are preceded by a $ symbol in Logic Pro.
For more information on manually programming a SysEx message, see Working with SysEx Faders.
Meta Events
Meta events are control messages that are specific to Logic Pro. They are used to automate specific Logic Pro functions, and to organize and arrange Score Editor elements (particular notation symbols and formatting) which can’t be represented by MIDI events.
The Num(ber) determines the meta event function, and Val(ue) determines the value that is sent. You should only ever insert and edit the following Num(ber) column values in the Event List.
Num = 47 (Send Byte to MIDI): This sends the track instrument any byte value (Val) between 0 and 255 ($00-$FF). As a usage example of this meta event: if you send 246 as the byte, this is equivalent to a MIDI tuning request message. The display will show Send Byte $F6. Only use this meta event if you know what you’re doing—if you don’t, your sound modules and synths may start to behave very oddly.
Num = 48 (Switch Fader): This sends MIDI events to a particular output number (Val) on a cable switcher. You first need to connect a cable between a track instrument and the cable switcher in question. For full details about cable switchers, see Cable Switchers. Num = 49 (Go to screenset): This event selects a screenset. Val determines the screenset number.
Num = 50 (Project Select): This event switches projects on a MIDI data filer or player. Val determines the stored project number.
Num = 51 (Go to Marker): When this event is sent, playback jumps to another marker. Val determines the marker number.
Num = 52: This meta event stops playback.
Meta events can also be generated by fader objects in the Environment.