Plan B
 
B is for breath. There are so many alternate input methods for MIDI data these days. We’ve come a long way from simple keyboard controllers. Guitars, drum pads, control surfaces, wind instruments and now breath controllers are all common and viable alternate input methods for all types of MIDI data - not just note events. A client recently hired me to help set up a new Yamaha Breath Controller for use with Logic. The lure of alternate expressive input control is seductive. But does the fantasy match the reality?
 
The jury is still out in my opinion. Setting the breath controller up for use with Logic was fairly simple. One thing that caught me of guard was that it is necessary to have your main MIDI controller’s output plugged in to the MIDI Solutions input, with the MIDI Solutions output then feeding the MIDI interface. I thought it might be possible to plug the MIDI Solutions output directly to another port on the MIDI interface and have it’s messages blended with the notes being generated by the main keyboard controller. But the MIDI Solutions needs to receive input from the, in this case, keyboard controller, in order to be properly powered and output it’s data into the MIDI stream reaching the MIDI interface.
 
I set up a monitor in the Clicks and Ports layer of the Environment Window, between the Physical Input, and Sequencer Input, in order to monitor what messages were being sent by the breath controller. As a default, it generates CC7 messages. Volume. It is possible to alter the MIDI messages being generated by means of dumping sys ex messages to change it’s parameters. But in practice, I found it easier to just transform the incoming CC7 messages by means of a Transformer Object in the Environment.
 
Cabling a Transformer between the Physical Input and the Monitor Object, is a nice clean way of intercepting and converting the incoming CC7 events. The converted events can then conveniently be confirmed in the Monitor Object before reaching the Sequencer Input.
 
Setting the upper conditions portion of the transformer is easy enough. Set the status to  MIDI CC messages. Then set the value to 7. And make sure to allow non matching events to pass through in the flip menu at the top. The first default choice among the available options works fine. Then the lower operations portion of the Transformer Window can easily be set to whatever parameter is needed. One thing to keep in mind is that when using this to control soft synths within Logic, it is necessary to set the status in the operation section of the Transformer Window to fader messages. These are what Logic uses for it’s own internal parameters in the audio portion of the Environment. The MIDI channel in the operations portion of the formula then needs to be set to number 2. Logic reserves MIDI channel 1 on soft synths for basic channel control.  
 
So, what do we set the Breath Controller to do exactly? That is the question. It is easy enough to have it control volume, pan, pitch bend, modulation. And these can all be very effective. But real nuance becomes available when assigning it to some other subtle parameters. While of course being determined by the nature of the sound being triggered; i did find some interesting alternatives to the basic parameters mentioned above.
 
In the EXS 24, using the breath controller for Glide can be very interesting. It can be used to add some very subtle pitch swoops that can be “blown in” very expressively in conjunction with triggered notes. I did find it difficult at first to control the range, or amount, being generated, and how hard to blow. After a while I kind of got the hang of it. But an additional transformer in the Clicks and Ports layer to scale incoming values might be a better solution if it is too difficult to concentrate on your blowing at the same time as playing your MIDI controller.
 
Additionally, I found that setting the breath controller to the filter cutoff value, with resonance left at the lowest value, was very effective in shaping the sharpness of the sound being triggered. i found this the most expressive parameter to control in my brief experiment. Alternatively, setting the breath controller to some of the ADSR parameters can also yield a lot of expression. Using it for attack can add some nice nuance to your performance, as can using it for release as a means of controlling the durations of the notes being triggered. And of course the internal routing in the EXS 24 matrix can be used to route any basic MIDI CC to control almost any other parameter.
 
I should note that in order to determine which fader message was needed for any given parameter, I cabled a monitor object to the output of the Audio Instrument. As soon as I wiggled a parameter with the mouse, the monitor would show which fader message it was set to. A quick trip back to the original Clicks and Ports transformer allowed for easy access to set the need information into the operations fields. I’m sure there are lists of fader message assignments in the documentation, but I found it easier to just determine them visually by means of a Monitor Object.
 
So, is a breath controller the new zenith of expressive control? I personally don’t think so. While I did learn to control it somewhat, it didn’t seem to be to be a particularly  precise source of input control. I would trade the immediate visceral element for the precision of a mouse or control surface fader to automate parameters. But that’s just me - after briefly experimenting. I’m sure it’s quite different when it is coupled with third party soft synths programmed specifically to have the sounds being generated take advantage of this sort of input. Sadly, I did not get the opportunity to try it under these conditions.
 
For generic use within Logic, I found that setting it to control expression (MIDI CC 11) was probably the most generally useful. It offers a nice way to add some dynamic expression while still leaving volume (MIDI CC 7) untouched, and available for use when mixing.
 
So, the jury is till out IMHO. With custom instruments set up to take advantage of it, it’s probably killer. In a more general sense, unless you are a wind player and used to this aspect of performance, it likely won’t yield the precision and control available with a mouse or fader. But is it immediate and blended in with the performance. So, try it - you might like it!
Monday, September 10, 2007