From Scott Troyer: Export MIDI from GarageBand*:
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
Once you have downloaded GB2MIDI and you have your MIDI performance in GarageBand, you may create a MIDI file (.mid) using the following steps:
- Join the regions of the track you want as a MIDI file (command + J)
- Convert that region to a loop (File > Add Region to Loop Library or drag-and-drop into loops area)
- Find that loop (.aif) file you just created in your hard drive
- /Users/User'sName/Library/Audio/Apple Loops/User Loops/SingleFiles
- Put the loop thru GB2MIDI converter by simply dragging-and-dropping it onto the icon for the GB2MIDI converter
- 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)
Now 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.
*See the sourced article for additional details and/or troubleshooting if needed. So far, these steps have worked great for me. :)