How to capture audio with Soundflower
Your Mac is capable of producing sound as well as playing sound channeled from outside sources—devices plugged into the Mac’s USB- and sound input ports as well as audio streamed from the Internet. Wouldn’t it be great if you could captures some of those sounds for later listening? You can. And you can for free with Soundflower. Here’s how it works.
Step 1: Download Soundflower
The first step involves finding a way to grab audio playing in one application—a Web browser, for example—and route it to an application that can capture that audio. Cycling ’74’s free Soundflower is that way. Soundflower is a system extension that lets you channel audio from one application to another. For example, you can take the audio playing from a movie in your Web browser and channel it into QuickTime Player’s audio input where you then record it.
Step 2: Configure Soundflower
After you’ve installed Soundflower launch the Sound system preference and you’ll see evidence of Soundflower in the Output and Input tabs. Select the Output tab and choose Soundflower (2ch). Do this and any sound that would normally come out of your Mac’s speakers is now routed through Soundflower. Any is the key word here. If your Mac makes any sound—not just the sound you’re trying to capture but also e-mail and Twitter alerts, for example—it will route that too.
Step 3: Configure your capture application
You have a couple of applications on your Mac that can capture Soundflower’s audio—QuickTime Player and GarageBand. To configure QuickTime Player choose File -> New Audio Recording. In the Audio Recording window that appears click on the downward-pointing triangle to the right of the Record button. From the menu that appears choose Soundflower (2ch). When you’re ready to begin your capture, just click Record.
You set up GarageBand by launching the application and in the New Project window that appears choosing Acoustic Instrument. This creates a GarageBand project that contains a single digital audio track. Use the default tempo and time- and key-signature settings that appear in the New Project Template window and click the Create button. Open GarageBand's preferences, select the Audio/MIDI tab and from the Audio Output and Audio Input pop-up menus choose Soundflower (2ch). Close the Preferences window. If the Info pane for the track doesn’t appear, choose Track -> Show Track Info. In the Browse tab of the Info pane choose Stereo 1/2 Soundflower (2ch) from the Input source pop-up menu. When your Mac makes sound you should see it register in the track’s meters. Click Record to capture the audio.
Step 4: Monitor the Mac’s sound
When you choose Soundflower as your Mac’s audio output you can no longer hear it through attached speakers or headphones. In order for you to monitor what’s happening, launch the Soundflowerbed application (found in /Applications/Soundflower). Click the Soundflowerbed menu bar item that appears and choose your speakers or headphones from the menu. Now, not only will your audio application capture what your Mac plays, but you’ll be able to listen to the source audio as well. (You may want to do this before setting up QuickTime or GarageBand to capture your audio, but that's up to you.)
Again, any sound your Mac makes will be channeled through Soundflower so you’ll want to disable alert sounds or quit those applications that make them. Additionally, if you change your Mac’s volume, that change will be captured by the application that’s recording Soundflower’s sound. So, lay off the volume and mute controls.
You can avoid both of these issues by using an application such as Ambrosia Software’s $69 WireTap Studio or Rogue Amoeba’s $32 Audio Hijack Pro. Each of these applications allows you to capture sound from specific applications. You can adjust volume or fire off system alerts all you like and they won't affect the audio the applications capture. (If you go the Audio Hijack Pro route consider purchasing the $50 Audio Hijack Pro/Fission bundle, which includes the Fission sound editor. WireTap Studio includes an editor.)