In this article:
| MIDI Networking Distributed Processing With Digital Performer Published in SOS March 2007 Technique : Digital Performer Notes Unlike Logic, DP doesn't have any sort of distributed processing scheme, but by using additional Macs in your DP setup, with a network connection between them, you can achieve a similar result. Here's how it's done.
The advent of Intel-powered Macs has really upped the stakes on affordable processing power, but there can't be many of us who don't hanker after even more grunt. You only have to build up an arrangement using a few heavyweight soft synths and a convolution reverb or two to start pushing the limits of even the very latest Mac Pro, especially if you like to work with very low latency. Of course, there are plenty of strategies to help control processor use with DP, and you can check out my September 2005 workshop article (www.soundonsound.com/sos/ sep05/articles/performertech.htm) for a discussion of some of them. But these techniques don't suit everyone, and in many instances being able to keep all your virtual instruments and plug-ins running in real time is hugely useful, and can allow you to work more quickly. So sometimes there's nothing for it but to use additional Macs to run your soft samplers, synths, and even audio effects. Turning a once top-of-the-range G4 Power Mac into a dedicated software-based sampler, for example, can be a fantastic way of keeping a worthy machine in service rather than banishing it to a hell of word-processing and email. And the latest Intel-based Macs have a tremendous price/performance ratio and make stonking 'slave' machines. This month, I'll look at the most elegant and practical ways in which you can incorporate additional Macs into your Digital Performer rig, and also how DP can be used as a host application on those slave Macs. As soon as you add additional Macs or PCs to your 'main' Mac, you face choices about how to integrate them. For starters, you're almost certainly going to need to get mouse and keyboard commands to them, and to be able to view the operating system and applications they run. Then they'll need to receive MIDI information, and the audio they generate as a response will have to be monitored somehow, and maybe recorded too. If you want to run a separate machine as a host for something like an Altiverb convolution reverb, that's going to need an audio input too. There are so many possible combinations and solutions here that it's impractical to look at them all, so instead let's start with a fairly simple, typical setup that uses a Network MIDI connection.
Desktop & Laptop I'm sure I'm not alone in owning both a desktop and laptop Mac, as this combo works wonderfully well. In my case, a Macbook makes a great portable location recorder and gigging machine, while a G5 Power Mac sits in the studio shackled to all manner of external hard drives, USB devices and the like. But the Macbook also makes a superb soft-synth host that frees up the Power Mac for audio work in really big projects. Laptops are, in many ways, ideal machines with which to supplement a desktop Mac, as their compact size and low noise makes them easy to live with, and their built-in keyboards, trackpads and displays negate the need for any more complicated system of control. Here's my preferred way of making my Macbook a virtual instrument slave, which has DP hosting four instances of MOTU's excellent software synth, MX4. Basically, I send MIDI data to the Macbook via Ethernet, using OS X's Network MIDI capabilities, as this allows me to do away with any kind of hardware MIDI interface for the Macbook. I then use the Macbook's built-in stereo audio output to feed audio into the MOTU Ultralite audio interface that's connected to the G5, my monitors, and the rest of my gear (see image, bottom left). Of course, you don't necessarily need exactly my complement of a G5 and a Macbook to try this out: any two Ethernet-equipped Macs will work just as well. So, to make this particular setup work, the Macs first need to be connected together with an Ethernet cable (or via an Ethernet hub or switch), and Built-in Ethernet enabled on both of them, via the Network Preferences pane, in System Preferences. Then you're in a position to follow the steps below, to configure Network MIDI on both Macs and create a 16-channel 'bundle' of MIDI connections (which Apple call a Session) on each. After linking the Sessions across the network, it just remains to configure DP, again on both Macs, to utilise the network MIDI connection. Phew! But it's quite straightforward in practice, as we'll see: 1. First, let's set up network MIDI on the main Mac. Open Audio MIDI Setup, from Applications/Utilities, select the MIDI Devices tab and double-click on the Network icon. A window called MIDI Network Setup appears (see screen above). 2. In the window, click the '+' button under the My Sessions field at the top left. A Session called Session 1 appears in the list. Click its tick box to enable it, and settings for it appear in the right hand part of the window. 3. In both the Local Name and Bonjour Name fields, rename Session 1 as 'MIDI A' or something similar. 4. In the lower left of the window, set the 'Who may connect to me' pop-up menu to 'Anyone.' You've just created a Network MIDI 'port' for your main Mac. It's not connected to anything yet — we'll do that in a moment — but if you have DP running at this point you'll see that a new item has appeared in its MIDI track output pop-up menus: 'Network'. Now we'll go on to set up the slave Mac. 5. On your slave Mac, open Audio MIDI Setup and double-click the Network icon. In the same way as before, create and enable a Network MIDI Session, but this time call it 'Slave MIDI A' (or some other descriptive name that denotes that it's specifically associated with your slave Mac). 6. Once more, choose 'Anyone' from the 'Who may connect to me' pop-up. At this point, if the magic is working (ie. your Ethernet link is active!), you should see your main Mac's Network MIDI port ('MIDI A') listed in the Directory field in the lower left part of the window. And if you were to check the MIDI Network Setup window on your main Mac, you should see the slave Mac's port ('Slave MIDI A') listed. All that remains, then, is to establish the link between the the two Sessions, so that the main Mac can 'play' the slave Mac. 7. On your main Mac, in the MIDI Network Setup window, select the Session called 'MIDI A'. In the Directory field choose 'Slave MIDI A' and click the Connect button. You've now established a 16-channel MIDI connection between your Macs, with not a MIDI cable or interface in sight — nice! All that remains now, in my example configuration, is to set up DP on the Macbook to host four MX4s and then start to drive them from DP MIDI tracks running on the G5.
8. On the slave Mac, start DP and create a new project. Now instantiate four MX4s on four Virtual Instrument tracks, select the desired patches and make sure they're all outputting to the Macbook's main audio output. 9. So that you can get MIDI data to these soft synths, each MX4 needs a MIDI track of its own. You can create them in one fell swoop by hitting Shift-Alt-Apple-M and typing '4' into the tiny dialogue box that appears, before clicking OK. 10. Now choose Multi Record from the Studio menu. This allows DP to listen to multiple MIDI channels at one time, which is what we need. 11. Then go through the four MIDI tracks, assigning a Network MIDI input and virtual instrument output for each. For example, in MIDI Track 1, choose 'Network-1' as MIDI input and 'MX4-1-in' as MIDI output. For MIDI Track 2, choose 'Network-2' as MIDI input and 'MX4-2-in' as MIDI output, and so on. Finally, record-enable all four MIDI tracks (see screen below).
12. Nearly there! Back on your main Mac, create or open a project in DP. Configure four MIDI tracks to drive the outputs Network-1 through to Network-4. Record-enabling one (or more) of these will then cause MIDI messages (from your master keyboard or other controller, or the track) to be sent across the Network MIDI connection and arrive at the corresponding instantiation of MX4 on your slave machine (see screen above) That, in essence, is it! To recap, Audio MIDI Setup is used to create a Network MIDI 'Session' on each Mac and then to connect those Sessions together. The slave Mac uses DP as a virtual instrument host, with a MIDI track for every MIDI channel that's needed to drive the instruments it's hosting. The main Mac then drives the slave Mac as if it were a multitimbral hardware synth or sampler, on as many Network MIDI channels as are needed. Useful Virtual Instrument setups on the slave Mac can then be saved and subsequently opened like any DP project.
Dealing With The Audio An essential requirement of a setup like this is some means of monitoring the audio output of the slave Mac. As I mentioned before, I route the audio from my slave Macbook into a couple of inputs on a MOTU Ultralite interface connected to the main Mac. This gives me the option of monitoring the slave Mac with zero latency while I develop my sequence, courtesy of the interface's Cuemix capabilities. And it's also then easy to actually record the slave Mac tracks to the main Mac's sequence when I've finished it — I just disable Cuemix and record enable a stereo audio track with the same two channels as its inputs, before hitting record. If you don't have an audio interface capable of zero-latency monitoring, bringing the slave Mac audio to a hardware mixer works equally well. Either way, you just regard the slave Mac as if it were a hardware synth and deal with its audio output(s) in the same way. Of course, if you used a multi-channel audio interface connected to the slave Mac, it would even be possible to choose separate outputs for each Virtual Instrument. DP plays very well with OS X's Network MIDI. But Ethernet and other network connections can do more than carry MIDI messages — they can also carry low-latency audio and even graphics data. This is the key to really clever setups, where you can use one or several 'headless' (ie. without a display) Macs as slaves, and have their audio outputs delivered directly into DP audio tracks on your main Mac. I'll be covering this, and more, in next month's DP workshop.
Published in SOS March 2007 | Friday 29th August 2008 September 2008
Click image for Contents
Other recent issues: Screenshots too small? Click on photos, screenshots and diagrams in articles (after August 2003 issue) to open a Larger View window for detailed viewing/printing. |