Home »

Export MIDI from GarageBand

GarageBand likes to keep MIDI data hidden and inaccessible. Here’s how to extract it anyway.

GarageBand icon with MIDI cable superimposed

Apple’s GarageBand makes it relatively easy to sketch out an audio demo, but it does have some severe, intentionally-crippled limitations.

One of the biggest drawbacks is the lack of built-in support for exporting MIDI data.

Performances are stored inside the session file in some sort of MIDI fashion, but Apple doesn’t give users an easy way to get that information out. Major bummer. *looks west towards Cupertino, squints eyes, shakes fist in air, mutters under breath*

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

The article is in German, but instructions in English are found near the bottom of the article (just before the comments section). Getting the MIDI data out involves several steps. Here’s my summary of the process.

How to Extract MIDI Data from GarageBand

  1. Join (Command-J) regions of a track you want to export
  2. Convert that region to a loop via Edit > Add to Loop Library (NOTE: In GarageBand 10.1.0 this menu item is now located under File > Add Region to Loop Library )
  3. Find the newly created loop file (an .AIF with MIDI data hidden inside it) in the folder: Macintosh HD (or whatever your system drive is named)/Users/(your home folder)/Library/Audio/Apple Loops/User Loops/SingleFiles/
    or the abbreviated: ~/Library/Audio/Apple Loops/User Loops/SingleFiles/
  4. Drop that .AIF file on Lars’ GB2MIDI droplet
  5. Grab the freshly extracted .MID file, which should appear in the same folder where the .AIF loop was. If not, see the comment section below.
  6. Import the .MID file into a respectable DAW (basically almost anything other than GarageBand).
  7. Make next hit record.

That last step is optional, but I say go for it. 😉 Let me know if this helped you.

Locating The Files

UPDATE 2014-08-10

If you’re having trouble locating the loop file, it may be because your Library and/or Users folders are hidden, as later OS X versions have been wont to do.

To unhide the Library folder, open the Terminal application, which is found in the /Applications/Utilities/ folder. At the prompt type the following:
chflags nohidden ~/Library/

To unhide the Users folder, type this into Terminal:
sudo chflags nohidden /Users
Then enter your administrator password.

Look for the newly unhidden Users folder in your hard drive’s root folder. It should look something like this:

screenshot highlighting location of User folder

After running “sudo chflags no hidden /Users” you should see the Users folder (highlighted in red in the image above) appear under the root folder of your hard drive (often named “Macintosh HD” by default).

For more on the hidden Users folder issue check this article from The Mac Observer. It seems the problem was introduced with iTunes 11.2 when Find My Mac is enabled. Another blog suggests that updating to iTunes 11.2.1 fixes the issue.

GarageBand Alternatives

UPDATE 2016-02-04

This GarageBand MIDI article has regularly been one of the most popular posts on my site. That means there are a lot of people using GarageBand and discovering its unfortunate MIDI limitations. The best bit of advice I can give to any musician or audio engineer still using GarageBand is STOP. I know that may sound harsh, but GarageBand is intentionally made to be consumer-grade software. If you’re serious about recording, take the time to investigate other DAWs. Find an alternative solution. There are many to choose from and nearly every one of them is less limited than GarageBand. They range from super affordable to “professionally priced.” Here’s a list to get you started. (Some links are affiliated.)

Pick any of the DAWs above (or find another — this list is by no means exhaustive) and you’ll find it much easier to work with MIDI. Let me know what software you chose.

64 Comments >

64 Comments

  1. 1 Yusef Rosales 7:04 pm Aug 18, 2014

    Thanks it’s work!

  2. 2 Jerry Krinock 6:59 pm Sep 27, 2014

    Amazing. I’ve been wanting this for a couple years, but never enough to spend the money for Logic. Now, I don’t need to 🙂 Hiding MIDI data in an .aif file – Ha!

    Oh, in my GarageBand 10 on OS X, the needed menu item is “Add Region to Loop Library” and it’s in the File menu, not the Edit menu.

    Thank you, Scott!

  3. 3 Dipendra 3:50 pm Oct 5, 2014

    Thank you so much! I thought I was going to have to redo several hours of midi editing when I realized I wasn’t able to export from GarageBand!

  4. 4 Katie 5:00 am Nov 2, 2014

    Hi, Thanks so much for this it worked a dream but when we imported the midi file into Pro tools it is playing at half speed…have you any experience of this?

  5. 5 Scott Troyer 10:19 am Nov 4, 2014

    Katie, I’ve not experienced that with Lars’ GB2MIDI. Perhaps your sessions are set to different tempos? I would double-check what tempo the Garageband session is set to and what the destination session is set to.

  6. 6 Stephen 1:09 pm Nov 16, 2014

    Hi there!

    I got a little problem. I’ve got the most recent version of GB and the previous one on my computer. I’d like to find the loop files for the previous version but after many tries, I failed. Could you help me out with that issue, please?

    Thanks!

  7. 7 Stephen 1:27 pm Nov 16, 2014

    Nevermind! I finally found it! Thanks for your article, it has been really helpful! =)

  8. 8 Josh 10:02 pm Jan 23, 2015

    Worked perfectly. Garageband ’11, OS X Lion. Freude! Liebe! Danke schoen.

  9. 9 Anna 5:20 pm Jan 29, 2015

    Hi! This looks great, but Apple have hidden my UserLoops file… All I can see is:

    Users/Library/Audio/Apple Loops/Apple
    and then folders with individual categories. I.e. Hip Hop.
    I believe I have the latest version of Apple and Garage band. I can see my loop file in Garage Band itself under loops, but can’t access the file via search/drag and drop/anything.

    Any ideas??

  10. 10 Scott Troyer 8:08 pm Jan 29, 2015

    Anna,

    If you are running OS X 10.10 Yosemite and Garageband 10.0.3, which are the latest operating system and application (as of the posting of this comment), then the above information should work for you. According to Apple, that’s where they say the loops should be found. http://support.apple.com/en-us/HT201503

    Have you tried unhiding the ‘Library’ and ‘Users’ folders as described under the UPDATE 2014-08-10 section?

    I had trouble finding those folders when I did a fresh install of OS X and Garageband. The folders did appear at first, but once I made a new user loop the folders were generated in the expected place.

    But you said that you do see your loop in Garageband though, so making a new loop probably wouldn’t help in your situation (though it may not hurt either).

    I’ve read else where that reindexing the loops can fix problems with loops. Perhaps try that?

    Let me know if and what works for you!

  11. 11 Anna 10:24 pm Feb 11, 2015

    Hi Scott,

    Thanks for getting back to me. Unfortunately I couldn’t get that to work, I still don’t have access to the files themselves. I have worked out a bit of a run around for what I was trying to do though using TuxGuitar, so the problem is sorted. Thanks for your help,

    Anna

  12. 12 Scott Troyer 12:30 pm Feb 13, 2015

    Anna,

    Sorry I couldn’t help. Glad you got it sorted though!

  13. 13 Valori 5:44 pm Mar 2, 2015

    I’m having a little problem with the program. For whatever reason my file isn’t converting! I tried the program on other files in the folder and it worked fine, but nothing happens when I try to convert the one I need a MIDI for. Is there a size limit as to what can be converted?

  14. 14 Scott Troyer 6:18 pm Mar 2, 2015

    Valori, I’m not aware of any size limitation. A couple things to try:

    1. Split the performance in half and export the 2 regions. Or perhaps cut it into even more portions. Move the playhead to where you want to split the region and choose Edit > Split, or press Command-T to split it.

    2. Copy the whole performance and paste into into a new song file. Perhaps it is corrupted somehow?

    3. Consolidate the track. If you have multiple regions on the track timeline, try joining all of them to make one track. I’ve experienced issues with cut up regions. To join regions, select the regions and choose Edit > Join, or hit Command-J.

  15. 15 zoey 7:43 am Apr 10, 2015

    Hi Scott,

    Thanks a lot for your post! Helped a great deal.

    I’ve a problem with exporting my garageband file to MIDI though; for some reason all the instruments automatically change to Piano when I hit command+J. Do you have any clue why this might be the case?

    Hope you can help me out, thanks! 🙂

  16. 16 Scott Troyer 12:19 pm Apr 10, 2015

    Hi, Zoey!

    When you say that all the instruments turn to piano, do you mean:

    A. The tracks inside Garageband change from synthesizers, drums, etc. into piano?

    —-or—-

    B. That the exported MIDI plays back with a piano sound?

    If it’s scenario A, then I’m not sure what’s going on. Sounds like a glitch. Try the typical update-all-your-software trick and see if changes anything.

    But if it’s scenario B, then that would be expected. The default sound for MIDI is what’s called GM Acoustic Grand Piano. GM is an acronym for General MIDI, which is a set of built-in voices predefined in the MIDI specification. Most computers have these generic MIDI voices built in. When you export from Garageband, there is no voice assignment, so playing back the MIDI file would sound like piano by default. Try importing the MIDI into a DAW and assigning it a plugin with a different voice patch.

    Here’s a link to more information about GM: http://en.wikipedia.org/wiki/General_MIDI

    Let me know if this is helpful.

  17. 17 Van 6:34 pm Apr 28, 2015

    Everything seems to work fine except … no midi file produced. Created aif loop, found the aif and loaded into the droplet but it then just opens the folder that the loop is in but there’s no midi file anywhere, just the aif. Baffled. Have tried numerous times, same result. Any ideas? Thanks!

  18. 18 Scott Troyer 7:43 pm Apr 28, 2015

    Van, good question. I’ve no idea. Let me know what you find out.

  19. 19 Kristin 4:28 pm Jun 4, 2015

    Hi Scott! I’m about to give this a try, but am thwarted already. My system won’t let me install GB2MIDI because it’s not from an “Mac App Store Identified Developer.” Hmmm … it’s probably just a security setting I need to change, but thought I’d reach out and get your advice. Thank you!

  20. 20 Kristin 4:35 pm Jun 4, 2015

    I figured this out! Thanks!

  21. 21 Kristin 5:19 pm Jun 4, 2015

    This worked and I’m very excited, thank you!!

  22. 22 Scott Troyer 8:36 pm Jun 4, 2015

    Kristin, glad you got it sorted. For those that might be hitting the same roadblock, here’s a link to Apple’s support page about their Gatekeeper feature: https://support.apple.com/en-us/HT202491

  23. 23 Van 2:30 pm Jul 11, 2015

    Still can’t find the midi file! Can anyone tell me what folder theirs are being extracted to?? Thanks!

  24. 24 Petri 5:41 am Jul 22, 2015

    Hi and thanks! What do you think about use case below? Is it possible in Garageband or should I move to some more advanced DAW (e.g. Logic ProI) to “humanize” self-made drum tracks?

    Goal: Modify self-made drum track to make it sound more like a human has played it.

    Steps:

    1. Modify and create midi drum track in Garageband from EzDrummer file. DONE
    2. Convert own Garageband drum track to midi file. DONE (According to instructions on this page)
    3. Modify drum midi file in some other application to make it sound more like human has played it.
    4. Import modified and hopefully more natural sounding drum midi file back to Garageband.

    How steps 3-4 could be possible in Garageband?

  25. 25 Scott Troyer 9:58 am Jul 22, 2015

    Petri, I would recommend using another DAW. Garageband is just not intended for music production beyond a consumer level interaction. Humanizing MIDI drum tracks requires fine grain control of MIDI events. Although Garageband allows importing of MIDI and does use it to under the hood, it does not officially and fully support MIDI to the degree that professional audio makers have come to expect in a DAW.

  26. 26 Van 12:59 pm Jul 22, 2015

    Hey Scott (and others) – have you actually used GB2MIDI to produce a midi file from Garageband? If so, where exactly did the midi file appear? Thanks!

  27. 27 kyle 2:24 pm Jul 27, 2015

    ok so i exported the loop file and found it, i downloaded GB2MIDI and when i select which file to “convert” to midi the program looks like its doing something then disappears and i can’t find a new .mid file. can anyone help me

  28. 28 Van 5:12 pm Jul 27, 2015

    EXACT same problem I’m having, Kyle – can’t find the midi file anywhere. Starting to wonder – has anyone out there actually got this working??

  29. 29 Scott Troyer 5:22 pm Jul 27, 2015

    Van and Kyle, I have used this GB2MIDI applet on multiple sessions on 2 different Macs running Mavericks and Yosemite with different versions of GarageBand. I can verify that it does work. There are many places where problems can happen. Can you post what computer, OS, and version of GarageBand you are using? Also can you verify the file paths you have? And did you read the updates at the bottom of the post?

  30. 30 Van 5:35 pm Jul 27, 2015

    Hey, thanks Scott! Using GB 11 (version 6.0.5) on an iMac running OSX 10.8.5. Yup, read the updates. No problem finding the loops – it’s the midi file that is nowhere to be found. (Have searched thoroughly and tried this numerous times. Like Kyle, looks like GB2MIDI does something, but can’t find the midi file that is supposed to be produced.)

  31. 31 kyle 9:38 pm Jul 27, 2015

    late 2011 mac core i5 OSX 10.9.5 GB 10.1.0

  32. 32 Scott Troyer 1:47 pm Jul 28, 2015

    Van, the latest release of GarageBand is version 10.1.0. Your version of GarageBand may behave differently. I have no way of testing to know for sure.

    Kyle and Van, I just retested the droplet and can confirm that it works in Mavericks with GarageBand 10.1.0. The .MID file should appear in the same folder as the original .AIF loop file – i.e. in the folder:
    ~/Library/Audio/Apple Loops/User Loops/SingleFiles/

    As a side note, I have noticed that GarageBand doesn’t always handle the MIDI data within the regions well. Sometimes I’ve had loops that output empty or glitchy MIDI files. I think the error may be in the region joining process. GarageBand seems to use a sort of pseudo-MIDI. (Another reason to avoid GarageBand.)

    Also, only regions that are green can be made into loops with embedded MIDI. Trying to convert regions of other types (blue, purple, orange) will result in a .AIF loop file, but won’t output a .MID file when run through GB2MIDI.

  33. 33 Van 3:09 pm Jul 28, 2015

    Thanks, Scott.

    Yeah, that’s where I looked first for the midi file – nothing unfortunately. And did a thorough search elsewhere. Nothing. Might try again but I seem to be doing everything correctly by the instructions.

    And yeah, old version of GB so maybe that’s the problem. But it’s working well for me at the moment (aside from the midi aspect ;-)) and I’m in the midst of a bunch of projects so not willing to risk a potential excursion into ‘Update Hell.’

    Cheers.

  34. 34 David 8:28 pm Sep 3, 2015

    Fantastic! Thank you Scott and thanks for the link to the apple page as I was having difficulty finding the single files loop folder.

  35. 35 How to export MIDI in Garageband | usuallydistinguishedhologram 4:45 pm Nov 1, 2015

    […] http://scotttroyer.com/2014/05/export-midi-from-garageband/ […]

  36. 36 Martin 3:51 am Nov 8, 2015

    Is it possible to do convert midi files with Garageband 5.1 or 6.0? I suck at engineering and would love to not have to go thru another learning curve…Thanks for your great advice!

  37. 37 Scott Troyer 10:42 am Nov 9, 2015

    Martin, I am not sure about older versions of Garageband. Sorry!

  38. 38 Susan 2:58 pm Dec 28, 2015

    Hi Scott,
    I am trying to take a Garageband clip of 4 lines of Lou’s music and loop it. I can’t figure out how to do it. Instructions in Create Your Own Apple Loops says drag an audio region from the Tracks area to the Loop browser but I can’t figure out how to drag anything anywhere. When I open the clip in New Project, and then do File/Add Region to Loop Library, it doesn’t allow me to select Loop within Type – all greyed out. Can you help please? Thanks if you can.

  39. 39 Scott Troyer 3:55 pm Dec 29, 2015

    Susan, I don’t use GB regularly, so I can’t offer any advice on that. Sorry. Hope you figure it out.

  40. 40 David McCall 11:59 pm Jan 28, 2016

    I have a yamaha keyboard, midi interface and Macbook pro. I just want to play the keyboard and create a MIDI file. I’ll take it from there. All I have is garageband and the workaround is tough. All I want is a simple way to play the keyboard and create the MIDI file. Please help.

  41. 41 Scott Troyer 10:04 am Jan 29, 2016

    Hi David! If your goal is to get a MIDI file easily, I suggest you NOT try to use GarageBand. It really is not suited for that purpose. I found another app on the App Store that might work for you. It’s called Capture Midi. I’ve not used it before, but it looks to be able to do what you want to do. Let me know if that works for you.

  42. 42 David McCall 4:55 pm Jan 29, 2016

    Thanks, Scott! I’ll download Capture MIDI and give it a shot. Appreciate the fast response!

  43. 43 Tim 11:33 am Feb 4, 2016

    Hi Scott,

    The Terminal command sudo chflags nohidden /Users isn’t unhiding the User Loops folder. I get Library > Audio > Apple Loops > Apple. Any ideas? Thanks!

  44. 44 Scott Troyer 12:50 pm Feb 4, 2016

    Tim,
    What version of OS X are you running? When you ran that command in Terminal, were you prompted for your password?

  45. 45 Tour -Ettes syndrome | Jazzmouse's Blog 10:50 am Feb 10, 2016

    […] file but not midi. A nice chap called Lars Kobbe has written an applet GB2MIDI. In order to do this Scott Troyer‘s work around is lumpy but workable. You will have had to export the .aif file from your iPad […]

  46. 46 Dick 2:27 pm Feb 29, 2016

    Am running OS X 10.11.3 El Capitan. To access the library folder under User, press and hold GO and then hold down the Option key. The library folder will suddenly appear.

  47. 47 Noah 2:40 pm Jun 30, 2016

    I’m getting caught up where I’m supposed to find a ‘User Loops’ Folder…not showing up at all! Any help?

  48. 48 Scott Troyer 4:46 pm Jun 30, 2016

    Noah, did you check out the part about the Users folder under the section titled “Locating The Files”? Can you provide details about what OS you are using and what you tried?

  49. 49 Agustyin 6:30 pm Jul 5, 2016

    Is there a solution for windows? I have an ipad but I use in a DAW for Windows.

  50. 50 Scott Troyer 10:49 pm Jul 5, 2016

    Agustyin, I don’t know of a Windows solution. Let me know if you find something!

  51. 51 Jakamo 7:30 pm Jul 14, 2016

    It’s unfortunate that you chose to keep saying bad things about Garageband. With recent upgrades it moves closer to Logic, which is a great DAW, I’ve used both. The recent addition of the Live Drummer feature moves it up a notch and makes buying a 3rd party drummer app unnecessary (with the older versions it was 100% necessary). Professional grade plug-ins work fine with it. This “free” app is trimmed down for sure but for making great sounding multi track recordings, it can’t be beat.

  52. 52 Scott Troyer 5:05 pm Jul 15, 2016

    Jakamo, correction: I am not “saying bad things about GarageBand” by stating facts about it’s intentionally designed limitations. While you may find that it suits your standards, that doesn’t change the fact that it doesn’t meet industry standards as a fully capable DAW. Apple does release GB for free, but they are doing so with the intent that it will entice users to purchase Logic, their fully capable DAW. Logic is not intentionally crippled the way that GarageBand is. Logic allows recording at 48kHz and higher sample rates, gives full use and access to MIDI data, and has way more options and features that are necessary in professional settings.

    Sure GarageBand might be cool for those just getting started, but for users that are taking themselves and their audio work seriously they really should be aware that creating their work in a consumer-grade application like GarageBand may come back to haunt them when they go to hand it off to an engineer at a professional studio. Many people are finding out that the recordings they worked so hard on are actually pretty tough to work with in any other digital environment. That you found this blog post and thousands of other people have too shows that GarageBand has a problem with exporting MIDI. The application in general can be a headache to get to work with other DAWs.

    And there are other free DAW options that don’t have these same limitations. I suggest to readers of this post that they do have options when it comes to DAWs and to explore them. What’s wrong with informing users of factual realities and encouraging them to try other DAWs? Answer: nothing’s wrong with that.

    On a somewhat funny and related note: The number one Google search result for your email address is an Apple forum where you are asking about a GarageBand content problem that looks to have gone unresolved. 😉

  53. 53 Sherrie 3:44 pm Sep 18, 2016

    Scott I love what you said above. BOOM and there it is. You have a great mind and a great attitude and this is VERY kind of you to post!!! You are a GENIUS!! Fact.

    Thanks
    Sher

  54. 54 Sherrie 3:44 pm Sep 18, 2016

    I think Jakamo works at Apple.

  55. 55 Mike B 11:17 pm Oct 17, 2016

    Worked like a charm. I grabbed midi performances from an iPad using this method. Saved hours ($$$) at the studio, thanks for this article!

  56. 56 CJC 9:29 am Nov 21, 2016

    Should this work on a loop that was created from a Magic Garageband song?
    I was able to export a loop from a drum track from a Magic Garageband song. I found it in the appropriate loops folder, but dropping it onto the conversion app didn’t produce anything at all.

  57. 57 Scott Troyer 9:56 am Nov 21, 2016

    Good question. I’ve not tried that. Let me know if you figure it out.

  58. 58 CJC 10:43 am Nov 21, 2016

    I can’t seem to get it to work. If I drop the .aif file onto the application nothing happens. If I open the application first and then select the .aif file from the open dialog screen then it just launches GB. Maybe those Magic Garageband songs aren’t MIDI based and are just audio loops.

  59. 59 Man 12:41 am Nov 22, 2016

    so i tried to convert it and nothing happened. I tried multiple times and still nothing. What do i do?

  60. 60 Butch Ross 1:50 pm Jan 16, 2017

    So I had trouble getting it to work (I’m using GB11 {v6.0.5} on Snow Leopard) until I pulled the .aif file on to the desktop, then it worked perfectly.

  61. 61 Connie 9:24 am Jan 28, 2017

    Thanks a lot for the great help!!! 🙂

  62. 62 Dominik Sauer 3:08 am Apr 5, 2017

    The other good DAWs are Ardour (https://ardour.org/) and derived Mixbus (http://harrisonconsoles.com/site/mixbus.html)

  63. 63 John 12:49 am May 7, 2017

    Thanks for this. Annoying how they don’t say “we do not allow export of midi” but make you waste time going trough menus, i have enough experience with recording that I wouldn’t think I’d need to start web searching for something as simple as exporting a midi file. I was surprised you can’t just drag it off the damn tracks window onto the desktop. Of course, had i known exporting midi wasn’t an option i wouldn’t have written a sick bass line on garage band on my phone on the plane, so thanks to you and the German dude for getting around Apples bulls#t. Ever try removing iTunes so you don’t have to deal with the constant stupid updates and annoying user-unfriendliness and primitive clutter for any kind of professional listening/monitorisng? Good luck.

  64. 64 Evan Shoes 9:29 pm Jun 29, 2017

    Thank you for your expertise, generosity, and sense of iCitizenship. Seriously. I thought I would save time by working on things in GB and exporting midi to Sibelius, because if you can drag the midi INTO GB, surely you can drag it back out…

Leave a Reply