How to save/export as a MIDI file in GarageBand

Opening a midi file (.mid) in GarageBand is the easiest thing ever, but how do I go the other direction? I want to take a piece I recorded as a midi performance in GarageBand and turn it into a midi file. How can this be done?


Background:

  • I have GarageBand 10.1.6
  • I record midi performances all the time in GarageBand and can easily export them as an MP3
  • I want to save/export them as midi files so that I can open them in Synthesia (Synthesia only opens midi files)

Solution 1:

You can get MIDI from GarageBand using these free application or browser conversion methods

One of the biggest drawbacks [of GarageBand] is the lack of built-in support for exporting MIDI data. (...) However, a nice guy named Lars Kobbe has put together a workaround/hack that extracts MIDI data from the reluctant clutches of GarageBand.

You can download his GB2MIDI Apple droplet script from his site: MIDI-Export in Apples Garageband. Here’s the direct download: GB2MIDI.ZIP

source: Scott Troyer: Export MIDI from GarageBand

Kobbe also created an experimental JavaScript-based version of the GB2MIDI app which works directly in your browser. This is great because, if the application ever stops working (e.g. after updating your operating system), the browser version still works wonderfully!

Conversion Process

Once you have your MIDI performance in GarageBand, you may create a MIDI file (.mid) using the following steps:

  1. Join the regions of the track you want as a MIDI file (command + J)
  2. Convert that region to a loop (File > Add Region to Loop Library or drag-and-drop into loops area)
  3. Find that loop (.aif) file you just created in your hard drive
    • /Users/User'sName/Library/Audio/Apple Loops/User Loops/SingleFiles
  4. Put the loop through the conversion process below
    • Application method:
      • simply drag-and-drop it onto the GB2MIDI converter icon
      • Click "Run" when the GB2MIDI prompt pops up
      • Grab the freshly extracted .mid file (now found in the same folder where the .aif loop was)
    • Browser method:
      • Go to the browser version of GB2MIDI
      • Select "Choose Files" (or just drag-n-drop onto "Choose Files" button)
      • Click "Convert"
      • Grab the freshly extracted .mid file (now found in the download folder)

Now you can use the MIDI file for whatever you wanted. In my case, I'd open the MIDI file in Synthesia. Thanks to this process, I can make videos like this one.

Solution 2:

Unfortunately, Garageband doesn't support MIDI export.

However, you could consider buying Apple's Logic Pro X, which is the "pro version" of GarageBand. It is quite pricey and might be overkill if you are just dealing with simple MIDI projects but it offers a great deal of features.

With Logic you can open your Garageband projects and export your tracks as MIDI files.