Working with Standard MIDI Files

Standard MIDI files are not specific to a particular sequencing program, hardware sequencer, or type of computer. They contain the following information:

Logic Pro allows you to import, open, and export Standard MIDI file formats 0 and 1:

Neither format recognizes any division of a track (into several MIDI regions, for example).

Importing Standard MIDI Files

An import only loads MIDI region data (notes, controller, SysEx, pitchbend, specific meta events) into an opened project, with global data (such as tempo events, signatures, chords, track names, SMPTE start, and so on) being ignored.

Important: To import the global data, you must open the MIDI file. See Opening Standard MIDI Files for further details.

To import a MIDI file at the playhead position
Do one of the following:
  • Choose File > Import from the main menu bar (or use the corresponding key command, default assignment:  Command-I), then select a MIDI file in the dialog that appears.

  • Locate and select the MIDI file in the Browser, then click the Import button.

The MIDI file is placed at the playhead position, rounded to bars.

To import a MIDI file at the mouse position
  • Drag a MIDI file from the Browser or Finder into the Arrange area.

The mouse position—when the mouse button is released—determines the position (rounded to the nearest bar) and destination of the first track in the imported file.

Opening Standard MIDI Files

If you want to load all information contained in a MIDI file—both MIDI region and global data—you must open it.

To open a MIDI file
  1. Choose File > Open from the main menu bar (or use the corresponding key command, default assignment:  Command-O), then select a MIDI file in the dialog that appears.

    Note: If you choose the MIDI files option in the File Type pop-up menu, only MIDI files are displayed in the dialog.

    If a project is loaded, a dialog asks if you want to create a new environment or copy the current environment for the MIDI file.

  2. Do one of the following:

    • Click Copy to replicate the existing environment. The tracks of the MIDI file are automatically assigned to suitable instruments.

    • Click New to load the environment of the default project template.

The MIDI file is loaded as a new project that contains all MIDI events—inclusive of time positions and channel assignments, names of individual tracks, names and positions of markers, tempo changes, and copyright marks. The copyright mark is read as marker text.

Note: As a default behavior, Logic Pro automatically creates software instrument tracks for each MIDI track, and assigns an appropriate GarageBand instrument to each, when you open a MIDI file. If you want to use external MIDI tracks for each MIDI track, press Option while opening the MIDI file.

Saving Standard MIDI Files

If you want to play a Logic MIDI project on another sequencer, you can do so by saving it as a Standard MIDI file. Consult the manual of the other sequencer to determine what Standard MIDI file formats it supports.

Due to limitations of the Standard MIDI file format (in comparison to the Logic project format), you need to prepare your Logic project for export by following these steps:

To prepare all MIDI regions for a Standard MIDI file export
  1. Select all MIDI regions by choosing Edit > Select All (or using the Select All key command, default assignment:  Command-A).

  2. Normalize all playback parameters by choosing MIDI > Region Parameters > Normalize Region Parameters in the Arrange area (or use the Normalize key command, default assignment:  Control-N).

  3. Convert all playback quantization by choosing MIDI > Region Parameters > Apply Quantization Settings Destructively (or use the corresponding key command, default assignment:  Control-Q).

  4. Convert all aliases into real copies by choosing MIDI > Alias > Convert to a Region Copy (or using the Convert Alias to a Region Copy key command).

  5. Convert all loops into real copies by choosing Region > Loops > Convert to Real Copies (or using the Convert Loops to Real Copies key command, default assignment:  K).

  6. Convert all MIDI regions on each track into a continuous MIDI region by choosing Region > Merge > Regions per Tracks (or use the Merge Regions per Tracks key command).

    Note: Because Standard MIDI file type 0 format files can only save one MIDI region, you must also merge all MIDI regions into one if you want to export in file format 0. You can do this by choosing Region > Merge > Regions.

  7. Insert all instrument MIDI settings as events by choosing MIDI > Insert Instrument MIDI settings as Events.

To save MIDI regions as a Standard MIDI file
  1. Select all of the required MIDI regions.

  2. Choose File > Export > Selection as MIDI File (or use the Export Selection as MIDI File key command, default assignment:  Option-Command-E).

  3. Choose the destination directory, enter a name, then click Save. The selected MIDI regions are saved as a Format 1 MIDI file.

Note: Remember that most hardware sequencers can only read MS-DOS formatted disks, so limit your filename to an 8.3 character name; for example, “proj0001.MID.”

To save a MIDI region in file format 0
  • Select the “‘Export MIDI File…’ saves single MIDI Regions as Format 0” checkbox in the Project Handling tab of the General preference pane (Logic Pro > Preferences > General).

When this preference is turned on, choosing File > Export > Selection as MIDI File when only one MIDI region is selected automatically exports the region as file format 0 MIDI file.