One of the most appealing aspects of setting up a dual-boot or virtualized OS X and Windows system is the ability to integrate audio apps running on the two operating systems. Need to open a specific Sonar or Fruity Loops project on a Mac and then bounce an arrangement to Logic or Digital Performer? No problem: just set up a shared folder or hard drive as a “content pool” for all your audio software, then import and export to that location. Imagine tracking audio inside an OS X program and then processing the bounced tracks with one of the hundreds of high-quality Windows-only VST effects. Or if you prefer, track inside of Windows, then take advantage of OS X-only effects, synths, and utilities.
More than simply sharing audio files, you can route audio and MIDI between your audio applications in real time with a virtual machine running under Parallels Desktop or VMware Fusion. The following examples, which I configured while running Windows XP under Parallels on a MacBook Pro, show you how. (To duplicate this configuration under Fusion, set the Mac's System Preferences Sound I/O to Soundflower (2ch).) This scenario was tested with the integrated audio interface of the MacBook Pro and an Apogee Rosetta 200 external FireWire device for monitoring. The ASIO4ALL driver was used on Windows because Sonar and other applications don't allow use of the integrated audio drivers in WDM mode.
Recording Windows Audio to an OS X Application
In order to pass audio from an audio app under Windows to an OS X audio host, you'll first need to install a Mac interapplication audio-routing utility such as Soundflower, a free open-source program distributed by Cycling '74 (available at cycling74.com/products/soundflower). With Soundflower installed, navigate to the Sound menu in Parallels' Devices menu. Here you'll find controls for activating and muting your Parallels sound drivers, as well as Input Device and Output Device driver settings. Set the Output Device to Soundflower (2ch) (see Fig. A).
Next, launch your desired OS X audio software (I'm using Ableton Live 7), open its audio preferences, and set Soundflower (2ch) as the audio input device (see Fig. B). Then insert a new audio track in your Mac program and arm it for recording. Start the record feature within your OS X host, switch back to your Windows app (I'm using Cakewalk's z3ta+ in standalone mode for my configuration), and start playing back using real-time MIDI input or a prerecorded sequence (see Fig. C). Note that you don't need to change the audio settings on the Windows side, as Parallels is managing audio I/O.
To record the output of an OS X application directly into a Windows host, configure the Parallels sound drivers so that the Input Device is Soundflower (2ch), then open your Windows program and arm a track for recording. Launch your OS X audio application, pick Soundflower (2ch) as the audio output device, and set the sound output in the Mac's System Preferences to Soundflower (2ch). (Some apps don't have an audio control panel and use only the System Preferences — that's why you need to pick it in both places.) Initiate recording in your Windows program, then start playback of the audio or a soft synth of your choosing on the Mac.
It's MIDI Time
Working with MIDI is a bit trickier, as I'm not aware of any virtual MIDI drivers that are cross-platform, and neither Parallels nor Fusion manages MIDI data at this time. To pass MIDI data between a Windows and a Mac program, you'll need to have a home network installed or at least have access to a router. I've put step-by-step instructions for configuring such a setup along with a video showing the process online at emusician.com (see the online bonus material “Mac and MIDI” and Web Clip 1). Enjoy!