You are here


Performer Notes By Robin Bigwood
Published May 2001

Setting up inter‑application MIDI communication to NI's B4 virtual Hammond via FreeMIDI.Setting up inter‑application MIDI communication to NI's B4 virtual Hammond via FreeMIDI.

This month Robin Bigwood concludes his look at MOTU's RAM‑based recorder POLAR, and explains how to get software instruments working with Digital Performer via FreeMIDI and OMS.

Last month we looked at using POLAR to build up multitracked rhythm patterns, backing vocals and so on, but with the 'Mute Previous Passes' option active, it's also ideal for recording numerous alternative takes of the same section of music. Imagine, for example, improvising an instrumental solo in the middle of a song — if you recorded it into POLAR you'd hear it played straight back, and when you had another bash at it your previous solo would automatically mute. This might not seem like a big deal, but it's the combination of never having to stop and rewind, together with the feedback given by instant replay of each pass that makes POLAR such a joy to use. In fact, after creating multiple passes you could audition each one, select the best, print them to disk, and then, in Digital Performer (or DP as it increasingly seems to be known), edit the juiciest bits from each into one super‑solo.

Actually, DP offers something similar outside of POLAR, which could be useful if you don't have much spare RAM (POLAR, remember, is a RAM‑based recorder). If you set up a loop (or Memory Cycle) when recording an audio track in DP and turn on Overdub mode, then at the end of the cycle, DP will loop back to the beginning and continue to record, but into a new take. Afterwards, you can switch between takes with the track's 'take' popup. So comping the best bits from each take is also possible in DP, but for me POLAR still has the edge because of its overdubbing and instant playback capabilities.

Pushing The Boundaries

Defining IAC (Inter‑Application Communication) busses for virtual instruments under OMS.Defining IAC (Inter‑Application Communication) busses for virtual instruments under OMS.

In its more familiar role as a RAM‑based multitracker, POLAR can pull off some interesting and potentially very creative tricks, including the ability to simultaneously loop passes of differing lengths. In its most basic form, this could involve continuously looping a one‑bar pass against a four‑bar pass, but more intriguing 'evolving' patterns can be produced by looping passes whose lengths are not related by simple ratios. Depending on their complexity, these might play for minutes or even hours before repeating. For example, you could record an eight‑bar pass, then a 7.5‑bar pass, and finally a 2.5‑bar pass. The resulting pattern would repeat in its entirety only once every 120 bars, with constantly changing rhythmic inter‑relationships between the passes along the way.

Even more fascinating is the possibility of running passes at different tempos together. You could, for example, record an eight‑bar pass at 120bpm, mute it, set the tempo to 119bpm, record the same eight‑bar pass at the slightly slower speed, play‑enable both, and listen as you hear your two passes move in and out of phase with each other, the one periodically synchronising with a different part of the other.

To get the results of these cycle‑based approaches into a conventional DP audio track you can try a tip I picked up from Matthew Davidson at MOTU which is not in any of the DP manuals. Basically, when you 'print' (ie. export) from POLAR to DP, passes are placed in conventional audio tracks at the position of the memory cycle 'Start' indicator, even if you've turned memory cycle off. But if you turn it on, and increase the length of the cycling section by dragging out the 'end repeat' mark or typing a larger value into the 'Stop' field in the Control Panel, individual passes printed from POLAR will 'expand' into the new space available, automatically looping themselves as many times as possible. The 'Create Individual Bites For Each Pass' must be selected in POLAR for this to work properly, though.

There's one POLAR feature I haven't covered yet — pass groups. Despite the presence of a couple of dedicated pass group controls in POLAR's window, it's possible to use the application extensively without knowing about this useful feature. Essentially, any pass can be assigned a group number, and then all passes in the same group can have various actions (delete, collapse and so on) carried out on them simultaneously, or their volumes and pan positions changed. Most of these things can only be done via MIDI or keystroke remote control, and I'd suggest that if you've a reason to use POLAR at this level of complexity, then you definitely don't need anyone to tell you how to do it! Some remote control of POLAR is genuinely useful, though, even if it's only setting up a function key or MIDI note to initiate a new pass — the Remote Controls window is where you do this.

That's pretty much it for POLAR, except to say that there are, of course, no hard and fast rules about how to approach individual sessions. Most users find themselves continually switching 'Mute Previous Passes' on and off, deleting sub‑standard passes, juggling record gate settings, muting and mixing on the fly, changing memory cycle length and position, and so on. Indeed, if you have enough RAM at your disposal, POLAR can be used to record entire sections of music involving lots of different musicians, sometimes to gather alternative takes, sometimes to build up multitracked layers. The music never has to stop between takes, and the creative juices can really begin to flow.

DP & Stand‑alone Soft Synths

Preparing to manually draw in MIDI controller data in Digital Performer.Preparing to manually draw in MIDI controller data in Digital Performer.

It's possible to use software synths with Digital Performer without having to rely on third‑party VST Instrument support. A number of so‑called 'stand‑alone' software instruments integrate with DP by having both FreeMIDI and MAS drivers; the current crop includes Bitheadz' Unity DS1 software sampler, B4 and Reaktor by Native Instruments, and Koblo's Studio 9000. Even though they run as separate applications, they appear in DP as MIDI instruments and discrete audio inputs, and are as easy to work with as any other software synth.

To get a stand‑alone software instrument up and running with DP, it first has to be configured so that it can respond to Inter‑application MIDI data. If you're using only MOTU's FreeMIDI with DP, this is straightforward. Simply enable inter‑application MIDI communication in FreeMIDI's Setup preferences, and find the software synth's MIDI settings (they're normally accessible via a dedicated menu item, or in its Preferences. Finally, set the MIDI system to 'FreeMIDI', and resist the temptation to specify a MIDI input device (see above left).

If you're using OMS, it's a little more complicated. First make sure in OMS Setup that the Inter‑application Communication (IAC) driver is present. If so, double‑click on its icon. This will bring up a dialogue box where you can name up to four IAC busses. The idea is that you name a buss for each stand‑alone instrument you intend to use (so if you were going to use NI's B4, for example, you might name a buss 'B4', or 'NI Hammond', as in the screenshot above). Then boot up your synth, and choose OMS in its MIDI settings as the MIDI system. Finally, select the IAC buss you have just named as the MIDI input device.

Once you've done this, the instrument should appear as an option in DP's MIDI output popups, under its default name if you're using FreeMIDI, or under the name you chose for its IAC buss if you're using OMS.

Your synth's installer should have placed a MAS driver in the Plug‑ins folder (which is in turn located in the 'MOTU' folder in your Mac's System folder), and you'll need to specify 'MAS' for the synth's audio output — again, this is usually done via one of the synth's menus. Switching back to DP, the synth's output should now appear as an input option on an audio channel. So, just as with a VST Instrument, two tracks are required for each instrument — one MIDI and one audio. If the audio track is a voice (rather than an aux) you'll be able to record the synth's output, but you'll have to record‑enable the track if you want to actually hear the synth. You may also need to set DP's input monitoring (in the Basics menu) to 'Monitor Record‑enabled Tracks Through Effects' and turn on Audio Patch Thru.

A couple of stand‑alone software synths have FreeMIDI drivers but no MAS drivers, such as NI's Pro52 and the free, downloadable Soundforum synth. To get audio from these into DP you have to use MOTU's AudioTap MAS plug‑in — check your DP manuals or surf to for more information. Remember that if you monitor directly from the Mac's built‑in stereo output you may well be able to hear your Sound Manager‑compliant software synth irrespective of settings in DP, but you'll still need AudioTap to record it.

Automating Software Synths

Whether your virtual synth is VST‑based or stand‑alone you'll probably find its parameters can be adjusted remotely using MIDI continuous controller (CC) messages. If you have a hardware control surface like the Kenton Control Freak or Gmedia Phat Boy you may be able to control all of your synth's virtual knobs and switches directly, and record the controller messages into MIDI tracks in DP along with regular note and velocity data. But even if you don't own a hardware controller, it's still possible to automate your software instruments by writing controller data into DP manually.

This is easy enough. Open the Graphic Editing window for your synth's MIDI track, select 'Controller' from the Insert menu and then make a choice from the submenu that appears (see screenshot above). A number of more frequently used options are already there — controller 1 (modulation wheel) and 7 (channel volume), for example — but by selecting 'Others...' you can choose any other controller number required for a parameter on your synth. The mouse pointer becomes a cross hair, and you can either then click and drag in the continuous data grid to write the data directly, or hold down the Alt/Option key and drag to get a series of controller messages in the shape of a line or curve. As long as the resolution grid in the top right of the window is disabled, controller data can be placed with great accuracy, and you can, of course, toggle between the three continuous data ruler options (controller, pitch bend, or a combination scale) by clicking on the ruler itself. If you attempt to automate on/off switches on virtual instruments with CC data and find yourself unable to insert data into the grid, don't panic; DP can be particular about which controller numbers it allows you to send as continuous data. Fortunately, getting around this is easy; you simply select 'Switches Are Cont Data' from the Graphic Editor's main menu. Thereafter, if you need to insert a switch‑type controller (for a sustain pedal message, say), a controller message of value 0 will represent 'off' and 127 'on'.

Once it's in, you can edit and reshape continuous controller data just like any other MIDI events. Remember, though, that controller 7 (channel volume) and 10 (pan) require DP's automation to be on in order to be transmitted. So if you find that a virtual volume knob is not responding to channel volume data, you'll know why.

Buy Related Tutorial Videos