I am trying to record two USB mics as separate tracks on our MacBook Pro. I don't want to purchase an expensive mixer, as I don't have the money. I'd also rather not have two separate programs running, just one. How do I do this?

  • Is there a specific reason you need multiple mics to record at the same time? I could go off on a list of reasons why this is not a good idea unless of course you are in a studio with multiple sound proofed rooms. Since this is obviously not the case, I would recommend only using one mic at a time as to not get cross chatter from having two mics recording at the same time.
    – Travis Dtfsu Crum
    Commented Sep 17, 2012 at 17:00
  • @TravisDtfsuCrum This is audio for video and I'd like to have multiple mics going into the computer so I don't have to sync them in post.
    – daviesgeek
    Commented Sep 17, 2012 at 19:28
  • Ah that makes sense. Ease of use sort of thing.
    – Travis Dtfsu Crum
    Commented Sep 18, 2012 at 13:08
  • Yah. It'll save time later.
    – daviesgeek
    Commented Sep 18, 2012 at 15:55

3 Answers 3


The traditional way to accomplish this is with a multichannel audio interface. It doesn't have to be a full-on mixer, but it does need to have more than one input channel. PreSonus makes good-quality, reliable, and relatively cost-effective solutions for this. Note the two XLR connectors on the front of the interface. You will need two traditional microphones and XLR cable. The USB microphones you already have combine a number of different components: the microphone itself, the mic preamp, and the audio interface. This allows you to do one thing and do it well, but limits you in the long run in terms of how flexible you can be with how you use them.

After you have the right hardware setup, the software shouldn't be too much of an issue--in fact, the current version of GarageBand has support for multitrack recording under Track -> Enable Multitrack Recording. Then just set your two tracks to the two channels of input on your interface and go to town.

  • Thanks! As a side note, the mics actually will either be a 3.5mm to USB or an XLR to USB, so they aren't just USB mics.
    – daviesgeek
    Commented Sep 16, 2012 at 22:00
  • 1
    Hm--then you're leaving out important information about your equipment. It's possible that one of those X->USB interfaces is capable of multichannel input.
    – NReilingh
    Commented Sep 17, 2012 at 1:25
  • Oh. What would I be looking at for that? (I haven't started looking at X>USB devices yet)
    – daviesgeek
    Commented Sep 17, 2012 at 2:35
  • Well, you said you had two USB microphones, but then you mentioned some kind of 3.5mm to USB or XLR to USB somethingorother. Model #'s would be useful to help figure out what you actually have--I'd be wondering if the 3.5mm microphone you have is suitable for recording.
    – NReilingh
    Commented Sep 17, 2012 at 2:53
  • No, I said 3.5mm/XLR to USB. :-) This is more of a theoretical situation, than a real one, so I don't have item #'s.
    – daviesgeek
    Commented Sep 17, 2012 at 5:51

In OSX, multiple audio devices can be combined into one "logical" device in software by creating an aggregate audio device. The link is for 10.6, but it should be basically the same thing in any other OS. All this does is allow separate interfaces to be addressed as separate channels in a recording program. It does not guard against phasing or jitter issues or any other inconsistencies between your devices.

Now, the comments on NReilingh's answer suggest that you don't necessarily have two separate USB audio devices, but rather just want to hook up two ordinary mics without a mixing board. If this is the case, then his suggestion of a multichannel audio interface is generally the best approach. Think of it as one USB adapter for both microphones at once.

  • +1: Wow, I completely forgot about aggregate audio devices. I'll edit my answer to only provide the traditional setup information.
    – NReilingh
    Commented Sep 17, 2012 at 16:12
  • I'd say edit in something about aggregate audio devices to yours - it's better to have one canonical answer, I think.
    – Warrior Bob
    Commented Sep 17, 2012 at 16:29
  • Yes, aggregate devices will work, but I'm trying to record each mic as a separate track. However, aggregate devices are great for someone who doesn't have the need to have separate tracks, so +1
    – daviesgeek
    Commented Sep 18, 2012 at 15:59
  • @daviesgeek Aggregate audio devices expose the inputs separately. Two USB mics can show up in a single aggregate device as two separate inputs.
    – Warrior Bob
    Commented Sep 18, 2012 at 17:36
  • So I'd be able to split up the recording into two tracks? If so, can you provide a little more detail? What software can do this and how?
    – daviesgeek
    Commented Sep 18, 2012 at 20:08

One of the possible solutions is to use ffmpeg
to record many input interfaces by merging them to one file:

ffmpeg.exe  -f dshow -i audio="AT2020 (AT2020USB+)"
            -f dshow -i audio="micro (Realtek High Definition Audio)"
            -filter_complex "[0:a][1:a]amerge=inputs=2[aout]" 1.wav

Two stereo microphones will produce a WAV file with 4 channels.

2 microphones

File opened in Audacity:

Audacity crop

To list devices:

ffplay.exe -hide_banner -list_devices true -f dshow -i dummy


[dshow @ 004977a0] DirectShow video devices   0KB sq=    0B f=0/0
[dshow @ 004977a0]  "A4 TECH PC Camera H"
[dshow @ 004977a0]  "screen-capture-recorder"
[dshow @ 004977a0] DirectShow audio devices
[dshow @ 004977a0]  "AT2020 (AT2020USB+)"=    0KB sq=    0B f=0/0
[dshow @ 004977a0]  "virtual-audio-capturer"
[dshow @ 004977a0]  "Line 3 (Virtual Audio Cable)"
[dshow @ 004977a0]  "VoiceMeeter Output (VB-Audio VoiceMeeter VAIO)"
[dshow @ 004977a0]  "micro (Realtek High Definition Audio)"
dummy: Immediate exit requested
    nan    :  0.000 fd=   0 aq=    0KB vq=    0KB sq=    0B f=0/0

Example batch file

for this job:

Drop it to ffmpeg.exe folder and run in cmd window:

 save_2mics.cmd 0 4

Console output(empty lines added):

List of available dshow audio devices:
0: (selected)  micro (Realtek High Definition Audio)
1:             virtual-audio-capturer
2:             Line 3 (Virtual Audio Cable)
3:             Line 1 (Virtual Audio Cable)
4: (selected)  AT2020 (AT2020USB+)
5:             Mic 1 (Virtual Audio Cable)
6:             VoiceMeeter Output (VB-Audio VoiceMeeter VAIO)

Guessed Channel Layout for  Input Stream #0.0 : stereo
Input #0, dshow, from 'audio=micro (Realtek High Definition Audio)':
  Duration: N/A, start: 14595.623000, bitrate: 1411 kb/s
    Stream #0:0: Audio: pcm_s16le, 44100 Hz, 2 channels, s16, 1411 kb/s

Guessed Channel Layout for  Input Stream #1.0 : stereo
Input #1, dshow, from 'audio=AT2020 (AT2020USB+)':
  Duration: N/A, start: 14596.160000, bitrate: 1411 kb/s
    Stream #1:0: Audio: pcm_s16le, 44100 Hz, 2 channels, s16, 1411 kb/s

[Parsed_amerge_0 @ 0070bd40] No channel layout for input 1
[Parsed_amerge_0 @ 0070bd40] Input channel layouts overlap: output layout will be determined by the number of distinct input channels

Output #0, wav, to '2mic_2015-04-01_21-59-45.wav':
    ISFT            : Lavf56.9.100
    Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 44100 Hz, 4.0, s16, 2822 kb/s (default)
      encoder         : Lavc56.4.101 pcm_s16le

Stream mapping:
  Stream #0:0 (pcm_s16le) -> amerge:in0
  Stream #1:0 (pcm_s16le) -> amerge:in1
  amerge -> Stream #0:0 (pcm_s16le)

Press [q] to stop, [?] for help

size=    1895kB time=00:00:05.51 bitrate=2816.9kbits/s
video:0kB audio:1895kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.005257%
Received signal 2: terminating.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.