Logic NotesDriving Logic From Control SurfacesPublished in SOS March 2003 Technique : Logic Notes
One of the greatest features of Logic is its ability to convert one set of MIDI data into another according to user-definable rules, using either the Transform window or the Environment's Transformer object. We've already covered the basics of using both of these in past Logic Notes columns, so I'm going to delve a little deeper into the more powerful features this month, to demonstrate just how versatile and powerful Logic's MIDI processing can be. Setting Up Endless Rotary Controllers Many hardware control surfaces now feature endless rotary knobs (also known as 360-degree knobs) whose intended use is to increase or decrease the value of a software parameter regardless of its current value. All well and good if your software supports that feature, but often it doesn't. In some cases, Logic's Environment can come to the rescue. The trick is to create an Environment Fader to control the desired parameter (for example, a plug-in setting or mixer control), then set up some additional Environment circuitry to make the incoming endless rotary data increment and decrement the Environment Fader.
The first step is to use a Transformer object to split the incoming messages into those that result from clockwise and anticlockwise motion. The clockwise stream of messages should then be converted to Bang messages to increment the Fader, while the anticlockwise stream is converted to Bang messages to decrement it. The one shortcoming of this scheme is that it doesn't take into account the speed of rotation. To do that, set up Transformers to make additional copies of the Bang messages for values of the incoming data further from 64. For example, make one additional copy if the incoming value is 62 or 65, two copies if it is 61 or 66, and so forth. A setup to do this is shown in Screen 1. The trick is to open the Audio Configuration window by selecting it from Logic's main Audio menu. All the plug-ins for all the channels will show up for the Song you've just set up. Now use the keyboard shortcut Select All command followed by Copy (you can also do this from the window's Edit menu), then open up your new Song. Go to the Audio Configuration window in your new Song, then use the keyboard shortcut for Paste or select Paste from the Edit menu. Obviously the track setup must be the same for this to work properly, as you can't paste a plug-in if it has nowhere to go. All the plug-ins and settings from the first song will be placed into their correct tracks in your new song and any existing plug-ins or settings in the new song will be overwritten. Paul White Transforming Notes To Controllers Logic's Transform window is useful for more than simply modifying MIDI data. You can also use it to create data. For example, you can create MIDI Volume, Pan, or Pitch-bend events following note pitches or velocities. The trick here is to use the Transform window's Copy Selected Events Apply Operations mode. That mode creates a new event for each event specified in the Conditions section and makes the newly created events conform to the settings in the Operations.
When converting notes to other MIDI data, keep in mind that each note is really two eventsa Note On and a Note Off. Usually you will want only the Note Ons to result in new events. No Transformer Condition will allow you to exclude the Note Offs, so you need to delete the newly created events whose value is zero (corresponding to notes with velocity zero, in other words the Note Off messages) You can do that manually in Logic's Event List window or you can set up a Condition in the Transform window to select the zero-value events and then use the Transform window's Delete Selected Events mode. (You might want to set up a Transform preset for just that purpose.) You are not restricted to using note velocities for the resulting controller values. The vertical black lines between the Transform window's Conditions and Operations sections (often called the Swap Bars) can be clicked to transfer channel, pitch, or velocity to any of the Operation values. You can use that, for example, to make pan position follow pitch a more likely choice than velocity. Time-based Transformations Logic's Transform window is a powerful tool for selecting and modifying MIDI data based on its time-position, a feature you can use to create crescendos, accent or quantise notes at specific time-regions within the measure, or completely scramble a sequence. First select the sequence containing the data in the Arrange window or open it in any of Logic's editors, then open the Transform window. In Screen 3 we've selected all notes between the beginning of the first and third measures (position 1 1 1 1 to 3 1 1 1), and we've asked Logic to create a crescendo with velocity range 1 to 127. You can see in the Matrix view (top right) that the note colours range from purple through green to red indicating minimum to maximum velocity. You can apply transformations to disconnected notes within a sequence (every other note, for example) by first selecting the desired notes in a note editor, then using the Transform window's Operate Only button. Alternately, you can use the Select Only button together with the Subposition Condition at the right end of the Conditions section to select notes at certain positions within each measure. In the Matrix Edit window shown in Screen 2, I first selected the second and third eighth notes in each measure by using Subposition range '1 1 2 1' to '1 2 1 1'. I then selected the sixth and seventh eighth notes by Shift-clicking the Operate Only button while using Subposition range '1 3 2 1' to '1 4 1 1'. Once the notes were selected, we shifted and shortened them by a 16th-note triplet using the Operate Only button perhaps not the most musical choice, but illustrative of the point. The MIDI input/output display in Logic's Transport window has two often-missed functions. It displays chords when several MIDI notes are being held, and it will send individual Note Off messages for every note and channel when double-clicked. The chord display is quite sophisticated and will correctly show upper extensions (ninths, 11ths, and 13ths), accidentals, and added bass notes. If you use the chord-display feature often, consider changing the Transport display to show only the MIDI I/O section at its largest magnification. Len Sasso When working in the Environment there are many situations that require connecting a cable from an object in one Environment Layer to an object in another. The quickest way to achieve this is to open a second Environment window, choose the Layer of the destination object, and draw the cable directly from one window to the other. If you're going to do a lot of cabling of this sort, open the destination Environment as a floating window so that you don't have to keep changing between topped windows. Len Sasso Have you had trouble getting the Logic's Oscillator plug-in to make any noise? This is because it will only output a signal when there's an audio object in the track and the transport's in play mode. Mike Senior Logic v5.5 contains a free upgrade for the EXS24 sampler, the EXS24 MkII. It features an expanded filter section as well as modular control routing. One of the new control routings allows you to select among samples in a layer using any MIDI controller. If you use that mode, keep in mind that all samples in the layer will always be triggered, regardless of the controller value. That's necessary for smooth transitions using the controller, but it also eats up lots of CPU cycles. Len Sasso
Published in SOS March 2003 | Friday 21st November 2008 December 2008
Click image for Contents
Other recent issues: Photos too small? Click on photos, screenshots and diagrams in articles to open a Larger View gallery. |