Mac Stuff‎ > ‎

How to use the IAC Driver

The IAC (Inter-application communication) Driver in Mac OS allows you to create virtual MIDI cables between applications inside the box, so to speak. This lets you share midi information without the restrictions of Rewire!


2) Open the MIDI window
    • in OS 10.5, click on the "MIDI" tab
    • in OS 10.6 (Snow Leopard), go to WINDOW > MIDI WINDOW

3) Once there, you should see something like this:

4) Double click on "IAC Driver" to open it, then you should see something like this:
    (if you only see some of it, try clicking on the little arrow next to "More information")

5) To use the IAC Driver, first you must TURN IT ON! Click on the "device is online" checkbox

6) In the "Ports" list, each one of those is a virtual MIDI cable, through which you have 16 channels to send MIDI! It's helpful to rename these so you know what they are when you're choosing them in your DAWs. (To rename, double-click on the port and enter a new name)

7) In a DAW, like Logic, "IAC Bus 1" (or whatever you named it) will be an option as a MIDI input and MIDI output (as if you plugged in a new MIDI interface). To send MIDI from an "External MIDI" track to somewhere else, choose the "IAC Bus 1" as a port in the Inspector

Looking at the image above, that means any MIDI played (or read) on the "Grand Piano" external midi track is going to be sent out the IAC Bus 1 on channel 1.

8) In another application (in this case, let's use Plogue) the IAC Bus 1 will also show up as an input and output MIDI device
    - To use it, create a new "MIDI device" module - you'll want "Input" if you want MIDI from Logic's external midi track to trigger sounds in Plogue

9) Now you've got a module/bidule that is receiving midi from IAC Bus 1 (in this case, from the "Grand Piano" external midi track in Logic)
    - The bidule below is outputting all 16 channels through one plug:

    - If we want to route the MIDI channels separately, just add a "midi splitter" - this will divide the MIDI signal into 16 discrete channels, which you can then route to plugins, etc

10) In the setup below, we're sending MIDI from the "Grand Piano" external midi track is sending MIDI through channel 1 on the "IAC Bus 1" - that bus is routed to Plogue, where the signal is divided into 16 discrete MIDI channels - channel 1 is routed to an audio unit instrument called "Chip 32" (a great chiptune/video game sound instrument), which is then routed to output 1 and 2 of the main audio interface.

Notice the change of TYPE of cable! It's MIDI when it comes out of the IAC Driver, and MIDI after it's split into 16 channels, but once it goes "through" the Chip32 instrument, it becomes audio, and can then be routed like normal audio.