The Aux object might seem a little arcane, but it's the key to a variety of useful Environment workarounds.
The Aux Audio object is one of Logic's best-kept secrets. While there is only one situation in which you must use it, there are many for which it is the most convenient alternative. For separating the outputs of multi-channel plug-in instruments, the Aux object is the only choice. As a buss return, it opens a whole slew of new effects routing possibilities. Aux objects are also the easiest way to manage stereo Rewire busses. So let's see how it all works.
The Different Types Of Audio Object
Audio in Logic comes primarily from four sources: external input via your audio interface, playback of audio files, the output of virtual instruments triggered by MIDI data (live or recorded), and other audio applications whose output is bussed in via Rewire or another third-party bussing scheme. In Logic, all audio, whatever the source, is managed and routed using Audio objects in the Environment.
All Audio objects are created equal and start out with no specific purpose. When you create an Audio object from the Environment window's New menu you get a small icon labeled '(Audio Object)'. If you double-click it, it will expand into a vertical channel strip with no controls and the word Off in the middle. To give it a purpose, you need to select it and then choose what kind of Audio object it should be by using the Cha parameter in its Parameters box (located at the left edge of the Environment window).
Audio objects fall into seven categories:
- Track, for audio file playback;
- Input, for external audio;
- Aux, for routing audio within Logic;
- Instrument, for playing virtual instruments;
- Rewire, for receiving audio from other applications;
- Output, for sending audio to your audio interface;
- Buss, for routing audio within Logic;
- and Master, for controlling overall output level.
Your Autoload Song may have Audio objects of some or all of those types. Typically you will find them all on the Audio Layer of the Environment window. If you have little Environment experience, a good way to follow the examples here is to delete all the Audio objects, then create new ones as needed. (Note that deleting Environment objects in one Song will have no effect on your other Songs, new or old.) I'll start by using Aux objects to manage the outputs of a multi-channel virtual instrument.
- You can drag the cursor in any window without bringing that window to the top. The trick is to make sure you hold the mouse button for a moment — quick clicks are what top the window.
- If you use Markers to delineate Song sections, you can use the Key Commands Set Locators By Previous/Next Marker and Enable Cycle to quickly jump back and forth through the Song by section. If Logic is playing when you use the Key Command, playback will immediately jump to and cycle the new section.
- You can assign a mixer channel (actually the associated Audio object) to more than one Group by holding Shift while selecting additional Group assignments. The Groups act independently, allowing you to, for example, assign the same channel to several different mute Groups.
Dealing With Multi-channel Virtual Instruments
Virtual instrument plug-ins fall into three categories, depending on the number of audio outputs they support: mono, stereo, and multi-channel. Multiple outputs are often used for different drums in a drum synth, different samples or sample groups in a sampler, or different instruments in the same multitimbral synth or sampler. In each of those cases, one use for multiple outputs is to apply separate processing to each output. Another is to allow separate outputs to be bounced to separate audio files. A third is to route different virtual instrument outputs to different outputs on your audio interface. The Aux object is the key to each of those options.
To use Aux objects for managing the outputs of multi-channel virtual instruments, you need to create an Aux object for each of the instrument's mono and stereo outputs. Typically the virtual instrument will allow you to set how many outputs of each type it has, and you will need to quit and restart Logic after changing the configuration for the changes to take effect. Once you've set up your instrument's outputs and created Aux objects for each output, you simply need to assign the Aux objects' inputs to the various instrument outputs. You do that using the top drop-down menu in the I/O section of the Aux object's channel strip. Be sure to make the Aux objects mono or stereo as appropriate, by using the button at the bottom left of each object's channel strip.
One thing to notice here is that the instrument's 'main' outputs (often simply labelled as outputs one and two) are not available as Aux object inputs. Those outputs are always routed to the Instrument Audio object's output. In fact, any virtual instrument outputs that are not used as an input to an Aux object are also automatically routed there — the purpose being, of course, to ensure that none of the instrument's multiple outputs are simply dead ends.
Another thing to keep in mind is that using different virtual instrument outputs does not necessarily result in their going to different Logic outputs. The ultimate destination of each of the virtual instrument's outputs is determined by the output assignment of the Aux object to which it is routed. For example, you can use different Aux objects for different insert effects and different buss routings, but still have all the virtual instrument's outputs routed to a single Logic stereo output.
Using Aux Objects With Rewire
Although Rewire busses are technically mono, some applications automatically group them into stereo pairs. However, Logic is not one of them — the Rewire Audio objects are always mono and each mono Rewire input requires its own object. This means that the stereo outputs of Ableton Live and Propellerhead Reason, for example, require two Rewire Audio objects for processing when Rewired into Logic. If you want to treat them as the right and left channels of a stereo buss in Logic, an Aux or Buss Audio object is the solution, and Aux objects are more flexible.
Logic's busses are stereo by default. The trick is to pan the Rewire object carrying the left stereo channel hard left and to pan the one carrying the right channel hard right, then set both Rewire objects' outputs to the same Logic buss. Next, create an Aux object, ensure it is in stereo mode, and set the Logic buss carrying the Rewire channels as its input. The Aux object now functions as a stereo Rewire return. You can insert effects in the Aux object, and you can create sends to route the Rewire audio to other Logic busses, which is something you can't do using Buss Audio objects. This allows you, for example, to use a single send for routing stereo Rewire inputs to a master reverb.
Extract The Timing Of A Drum Loop As MIDI
Once you've sliced up an audio file into regions corresponding to individual musical events, as shown in SOS May 2004, it's a simple matter to capture their relative timing in a MIDI sequence. You might then use the MIDI sequence as a Groove Template for other MIDI sequences in your Song or as the rhythmic basis for another instrumental part. Doubling a hi-hat or ride-cymbal pattern with a bass line can, for example, produce interesting results.
To capture the groove, first create an empty MIDI sequence starting at or before the position of the first region and extending to or beyond the end of the last region. Open the new sequence in the Matrix Edit window and turn on MIDI step input by clicking the Matrix Edit window's In button to turn it red. Select the audio track containing the regions in the Arrange window and move Logic's Song Position Line (SPL) to the beginning of each region, switching to the Matrix Edit window and playing a note at each new SPL position.
Three of Logic's Key Commands make this repetitive task fast and easy. Use the Select Next Event Key Command to move from region to region on the Arrange track. (I have the right arrow key assigned to that.) Use Goto Selection to then move the SPL to the beginning of the selected region. (I have the Tab key assigned to that.) Then use Select Next Window to switch between the Arrange window and the Matrix Edit window. (I have Option+Tab assigned to that.)
The choice of pitches and velocities for the notes you're entering depends on your intended use for the MIDI sequence. If you're simply making a Groove Template, the pitches don't matter and, unless you're applying the groove to velocity, neither do the velocities. If you're going to use the MIDI sequence to play another instrument, the pitches are critical and, depending on the instrument, the velocities are probably important too. You can adjust the pitches after the fact using MIDI Step Edit, by double-clicking the In button so that it is red with a lock icon. That also changes the velocities, so you will probably want to go back and edit those manually using Hyper Draw or the Event List window.
Another use for the MIDI sequence is to play a sampler which has the slices mapped to consecutive notes. In that case, the pitches in the MIDI sequence should correspond to the sampler mapping, and the velocities should all be equal (and probably maximum) to play the slices at their original volumes.
Combining Aux Objects & Buss Objects
An important thing to remember when using Buss and Aux Audio objects for the same buss is that the Buss object comes first. That means its level and pan settings, as well as the processing by any effects inserted in the Buss object, happen before the Aux object gets the signal. It also means that if you change the Buss object to mono, its left and right channels will be mixed to mono — the buss effectively becomes mono. On the other hand, if no Buss object is present in the Environment for a buss feeding an Aux object, the buss signal goes directly to the Aux object. In short, Aux objects can be used as buss returns with or without having Buss objects for the same returns. If you do use both objects for the same buss, you will typically want to turn the Buss object's output off.
There are two reasons to use Aux objects as buss returns: they have buss sends of their own, and several of them can be fed from the same buss. That allows you to create complex effects paths which would be impossible without Aux objects. For example, if you want to apply separate insert delay effects to the left and right channels of a stereo Logic buss, create two Aux objects panned hard left and right and use the same Logic buss as input to both. You could then use the Aux objects' sends to route the processed signal to a master reverb. The more busses and Aux objects you have, the more complex your signal processing configurations can become, of course. If, as in the above example, several Aux objects are fed by the same buss, it is often convenient to use a Buss object as a master level control for that buss.
Using Aux Objects As Input Objects
In addition to taking their inputs from Logic busses and multi-channel virtual instruments, Aux objects can also take their inputs directly from Logic 's input busses. They can, therefore, be used exactly like Input Audio objects to destructively process incoming audio when using Logic's real-time Bounce feature. The Aux object offers the slight advantage that you don't need to have Software Monitoring enabled in Logic's Audio Driver Preferences to hear and bounce the results, as you do when using Input objects.
At first, adding the Aux object to the already confusing array of Environment Audio objects might appear to be adding unnecessary complexity. But in fact, with its many uses and great flexibility, the Aux object actually represents a simplification in Logic's audio management.