Logic has always been an especially powerful and flexible program when it comes to editing MIDI performances, and one of its main selling points is that a lot of MIDI edits can be done in real time, non-destructively'"that is, without permanently changing the MIDI data. The most basic way to accomplish this is by using the Region Inspector, located at the top of the Inspector section at the left of Logic Pro X's Main (formerly Arrange) window.
The Region Inspector (on the left).
While you can also visit the various MIDI editor panes'"the Piano Roll editor, Score editor, Step editor and List editor'"and make changes by dragging individual notes around or editing and drawing in controller data, the Region Inspector lets you apply the most common MIDI edits to MIDI Regions quickly and non-permanently. Any adjustment you make can be changed or undone at any time, on a per-Region basis, simply by restoring the original settings, which are always preserved.
When a MIDI region has been recorded, selecting it displays the MIDI editing parameters for that region. If multiple regions are selected, you can adjust parameters for them all at once, making it easy to perform a MIDI edit on an entire track'"just select the track by clicking its name in the Track List (or Option-clicking it, depending on how you've set that Preference), and with all the regions selected, make the desired MIDI edits.
If there are selected regions with different settings for the same parameters, you'll be warned'"an asterisk will be shown instead of the value of that parameter, letting you know that you'll have to make separate edits to preserve those individual region settings.
The Region Inspector Parameters, with settings for the selected Region.
If no regions are selected, the Region Inspector shows MIDI editing values for MIDI Thru. These will be applied in real time as you play (with the exception of time-based edits, like Quantize or Delay), so you can play and record a MIDI part and hear it, say, Transposed as you perform, for example. When the recording is done, the MIDI Thru values are assigned to that region, so it sounds and plays just as you recorded it, but you can still restore the actual performance values at any time.
So what are the MIDI parameters that can be accessed from the Region Inspector? From top to bottom, they are: Mute, Loop, Quantize, Swing, Transpose, and Velocity, and when you open the 'More' tab: Delay, Dynamics, Gate Time, Clip Length, Score, and several advanced Quantize functions, like Q-Strength, etc.
Many of these are self-explanatory, like Mute and Loop (which loops the region indefinitely). Quantize provides the usual options, including triplets, swing values, and Groove templates, and Q-Swing lets you set your own swing value.
Transpose lets you change key in Semitones or Octaves, and Velocity adds or subtracts (offsets) the velocities in the region. Under the 'More' parameters, Delay lets you delay or advance a region in time by MIDI Ticks (typically 1-2 milliseconds/tick, depending on Tempo).
Dynamics Options: MIDI Velocity Compression/Expansion.
Dynamics is a cool feature, it's kind of a compressor/expander for MIDI Velocity. A setting of 100% preserves the MIDI Velocities as played. Settings lower than 100% compress them, as if the player played the loudest notes a little softer and the softest notes a little louder. Settings higher than 100% expand them, as if the player's loud notes were played even louder, and the soft notes even softer. The effect is very different than what you get with an audio compressor or expander'"you're changing the performance, not just the levels.
In conjunction with the regular Velocity (offset) parameter, you can compensate for a player whose touch is less than ideal, or a Virtual Instrument whose Velocity response is not a good match for the player's style, or for a particular MIDI performance originally recorded with a different instrument'"I find this very handy in a lot of different situations. There's also an option to set a fixed Velocity for all notes, when that would be appropriate.
Gate Time adds or subtracts (offsets) the lengths of notes, and Clip Length, when on, makes sure a MIDI note that extends past the end of a region is cut off at the region's right boundary, to avoid unexpected hanging note tails after region editing. Score simply enables or disables that region's display in the Score editor (for regions with non-note MIDI data). The rest of the parameters are various advanced Quantize
While the idea is to always be able to change your mind about any MIDI edit, there are times when you will want to commit (render), and make some edits permanent. This is easily done from the Functions sub-menu in the Main workspace. Under MIDI Region Parameters, you'll find options for applying either some (Quantization) or all MIDI parameter settings to the selected region. Once this is done, the values in the Region Inspector for that region are reset to neutral (off), and the edits are permanent.
Rendering MIDI edits.
Of course there are many other places to change MIDI data, some in real time, some permanent, but the Region Inspector is one of the quickest and easiest ways to make the kind of quick adjustments that, aside from individual note tweaks, probably make up the bulk of MIDI editing in a typical session.
Want to become a master of MIDI in Logic Pro? Watch this video course.