12/29/2013

I've been experiementing with different looping techniques in Live 9. Inspired by Zoe Keating, I wanted something that would automatically control looping while I focus on playing. Here's Keating looping her cello:

Keating uses SooperLooper which looks like a very cool piece of software, but after some thought I figured I could do something similar using just native Live 9 plug-ins.

I created 5 tracks in Live. The first one is the live input for my Chapman Stick Bass. The next three each have a Looper (the default Live plug-in) set to no quantization and variable length looping. These tracks are called Bass, Rhythm, and Theme. Input for these tracks is set to the first track that The final track contains a drum rack.

What I want to build is described in the graphics below. Each rectangle represents a bar of music. Blue indicates the simple programmed drum loop. Orange indicates that the Looper in that track is recording, and yellow indicates that the Looper is playing what was previously recorded. When the Looper is stopped, the color is white.

The first scene is the introduction and it is 26 bars long. The piece kicks off with a 2 bar drum lead, and then the first Looper begins recording. I play a 4 bar bass line, and the Looper begins playing it back. I start playing a rhythm figure, and at bar 9 the Looper on the Rhythm track records my playing for 4 bars. I mess around for another 4 bars and then play the theme of the piece. The Looper on the Theme track records it for 4 bars. The last four bars of this scene have the drums, bass, rhythm and theme playing while I double the theme or otherwise improvise.

Here's the diagram

I use dummy clips on the Bass, Rhythm, and Theme tracks to control the Looper. To do this, you access the Envelopes view of the clip, and select the "State" parameter of the Looper. You can draw in where you want the looper to record, play, overdub or stop. It's an awesome feature of Live 9. A follow action is set on each clip of the intro scene to automatically move to the next scene after 26 bars.

The next scene is diagrammed below. The theme plays for the first 8 bars and the rhythm loop is off for the first 4 bars and records whatever I'm playing during the next 4 bars. The theme finishes and I improvise over the new rhythm loop for the last 16 bars of the scene.

This scene loops over and over, repeating these 24 bars. Each iteration restates the theme and allows me to set a new rhythm to play over. After several repetitions I fade it out.

Here's a video of me trying this out. I'm no Zoe Keating, but this was fun to play.

I like that the above scheme can be used for many different tunes. It's like a tune template. I've got a bunch of ideas to take this further now that the proof of concept worked.

09/29/2013

This tune is inspired by M. John Harrison's Kefahuchi Trilogy which includes Light, Nova Swing, and Empty Space. What would happen if the horn and guitar section of a funk band passed through an arm of the Kefahuchi tract? What would the resulting music sound like? Kefahuchi Funk, like the rest of the Post Funk Glitch I've been experimenting with, is a possible result.

What is the Kefahuchi tract? Go read M. John Harrison's books right away!

The bass riff is played on a Chapman Stick Bass. Yes, the tablauture is correct. The Stick Bass has 8 strings.

The version on SoundCloud is divided into 16-bar sections, but more recently I've been playing it with 8-bar sections instead. Like most of the Post Funk jams that I've been playing around with, the bass riff is repeated a few times in one section and the next section is improvised.

01/27/2013

Spin Cycle is a simple device that allows you to spin a mapped dial/fader by pressing a button. When you first press the Spin button, it will spin the dial up to the maximum you've specified. When you press it again, it will spin it back down. If you press the Spin button while it is spinning, it will pause the spin and a second press will resume the spin.

You can specify max, min, and curve values along with the duration the full spin will take. You can also change the direction of the spin. The CF button automatically maps Live's crossfader to Spin Cycle. It seems that the crossfader isn't mappable to Max For Live devices in Live 8.3.4 (maybe a bug?), so this button works around that.

01/21/2013

Often I want a single button press to fire several Live parameters. For instance, I might want a button on the Launchpad to crank a send dial to the max, activate an effect device, and mute a track. Paraminator is the tool for the job.

In the top left corner are eight trigger buttons. Map those to your hardware controller using MIDI mapping or equivalent (Midimashinator or Launchpad Mashinator, for instance). When you press one of the trigger buttons, Paraminator checks the grid and wherever it finds a yellow node on the column below the trigger, it fires the parameter on the row to the right. In the image above, trigger 1 fires parameter 1. Trigger 2 fires parameter 2, and so on.

In the image below, trigger 8 fires every parameter (the column below trigger 8 has a yellow node on every parameter), and every trigger fires parameter 8 (row 8 has a yellow node below every trigger). You can customize the grid to fire any combination of parameters.

The Def. button sets the default nodes which is the diagonal distribution of nodes shown in the top image. The First button fills just the first column, and Clear removes all nodes from the grid. When you're working with the grid, note that you can click and drag to create or remove nodes.

The Paraminator also features a global/combo parameter at the bottom. When the C switch (on the bottom left) is turned off, the parameter is a global. When the C switch is on, the parameter is in combo mode. The global parameter is fired whenever any of the other buttons is fired. The combo parameter is fired only when the particular configuration of buttons (defined to the right of the C switch) is active.

If eight parameters aren't enough, you can use one Paraminator to link eight Paraminators. This gives you up to 64 parameters to play with. And if that is still too puny for your mighty controllerism routines, then you can use one of the eight linked Parminators as another master Paraminator and link 8 more Parminators. The mind boggles.

The Paraminator isn't very fancy, but it is a controllerist's work horse. Don't leave home without it.

01/20/2013

This Maxinator Device gives you the ability to easily modulate controls and effects with a press of a button. Modulatorinator is great for creating filter sweeps, dynamic delays, volume swells and fades, and distortion crescendos that activate at the touch of a button.

Up to Eight parameters can be mapped to Modulatorinator along with a Global parameter that kicks on whenenver any of the other parameters activate (perfect for turning a device on and off as you modulate it). If eight parameters isn't enough, you can chain Modulatorinators to your heart's content (or you run out of CPU cycles). Each mapped parameter is individually configured for direction (the modulation can sweep up, down, or up and down), range, and curve.

Curve adds nonlinearity to your modulations. A curve of zero is linear: the modulation procees from start to end at a constant pace. A positive curve causes the modulation to start slowly and then increase in speed at the end. Conversely, a negative curve causes the modulation to start quickly and then slow down at the end. Since Curve is set for each parameter, the modulations can create a varied texture.

Each parameter can either be triggered individually or it can be linked to the top parameter (parameter 1). Linked parameters retain their individual configurations, but fire whenever the top parameter is triggered.

Modulatorinator supports two modulation modes. In the auto mode (shown above), Modulatorinator automatically sweeps through all eight parameters according to their individual configurations. The length of the sweep is determined by the Modulation Duration. You set this value in beats, and it ranges from 1 to 32 beats. It can be extended or shortened using the Modifier percentage. If Modulation Duration is set to 4 and the Modifier is set to 25%, then the overall duration is 5 beats.

Auto mode also features three different looping modes. When Press is selected, the modulations run only while the trigger is active. As soon as you release the trigger button, the modulations stop. For best results, when you're in Press mode, use a controller with momentary-buttons or use Launchpad Mashinator, Midimashinator, or similar.

The Once looping mode will fire the modulation once and then stop until it is activated again. This is ideal for one-shot effects. A toggle button is best when in Once mode (I added a toggle setting to the Launchpad Mashinator to support Modulatorinator). The Loop looping mode is also a toggle button friendly setting that keeps looping the modulation until you press the trigger again.

The differences between the three looping modes, depends heavily on your actual controller. Toggle buttons interact with the modes differently than momentary buttons. Experiment to find what works best for you and your hardware.

Manual is the other modulation mode. Clicking on the yellow Auto button will switch to Manual mode. Manual mode looks like this:

The looping modes and the Modulation Duration and its modifier are inactive in manual mode. Instead the Modulation Dial is active. The modulation dial drives the modulations and can sweep up and down through the individuall configured parameters. All of the parameter configurations remain available except for Direction since you now control that with the dial. Also note that in manual mode all the parameters are linked to the top parameter. This is because the top parameter is controlled by the Modulation Dial and the rest of the parameters are controlled by the link.

Finally, at the bottom right is a field to set the Global Threshold. This value determines when the top parameter will fire the global parameter. The default value is zero which means that as soon as parameter one exceeds 0, the global parameter will fire. If you change the threshold to 64, then the global parameter won't fire until parameter one reaches 65 or greater.

The Global Threshold control is most relevant when all of the parameters are linked to the top parameter--which is the required configuration in manual mode. If you are in auto mode, and have not linked all of the parameters, then as soon as any of the other parameters exceed zero, the global parameter will fire. This may sound confusing, but it makes more sense when you see it in action.

01/04/2013

The Knobinator is a device in the Maxinator Collection that maps different values on a knob or slider to individual parameters. You could use it, for example, to create a knob that turns on the track activation buttons of a set of tracks as you turn the knob.

It is similar to the other Maxinator devices in both look and feel and operation. Here's a quick overview:

Map your controller knob to the Knobinator Knob. Assign the parameters using the eight parameter mappings. Now as you twist the knob, when the knob's value passes one of the thresholds, Knobinator will send the Trigger On Value to the appropriate parameter. By default, Knobinator will send the Trigger Off Value when you next pass the threshold, but in Toggle Mode, Knobinator sends the off value as soon as it passes the threshold for the next parameter. It makes a lot more sense when you actually use it.

One caveat with Toggle Mode: Knobinator expects the thresholds to be in ascending order from bottom to top. If they are not, Knobinator will behave as if they are. Thresholds will behave correctly, but the parameter you expected to activate might not. For best results, keep the thresholds in ascending order.

By default, Knobinator is in Multiple Parameter Mode and controls up to eight parameters. If you turn off Multiple Parameter Mode, then Knobinator controls only a single parameter. This is useful for using a knob to send discrete values of your choice to a controller. For instance, maybe you want a knob to control Beat Repeat's Grid control, but you want to skip the 1/24 grid. Knobinator can make this happen. Just turn off Multiple Parameter Mode and set the on values to skip the 1/24 values.

As you turn the Knobinator knob you can set thresholds using the Threshold Learn buttons. This sets the current value of the knob to the selected threshold. I think that's most of the details of Knobinator. Let me know if you run into any questions or difficulties or if you even like the device.

Introducing the Jumpinator, the latest device in the Maxinator Collection. The Jumpinator lets you use a set of button controls to easily jump between 8 values on a continuous control. It is optimized to work with a Launchpad--either by itself or with the Launchpad Mashinator--but it works with any MIDI-mappable controller, especially if you use it with the Midimashinator or with a controller that supports momentary-type buttons.

Say you want to control the Grid dial in the Beat Repeat device. You map the Jumpinator to a parameter in Live to the Grid dial. Then you assign the Jumpinator to a row on your Launchpad or map it to the controller of your choice. Adjust the trigger values as you see fit. Now when you press the Launchpad buttons (or your controller-of-choice's buttons/knobs), the Grid control will jump to the specified value. This makes it easy to jump from 1/32 repeats to 1/4 repeats to 1/16 simply by pressing buttons.

Here's a quick overview of the controls:

The best way to learn the device is to throw it on an audio track and select your Launchpad in the Control Surface Selector. Map the Jumpinator to the parameter you want to control using the Main Parameter Mapping section. Then start playing. I think it is pretty self-explantory, and the Info View in Live contains relevant details.

The Global Parameter Mapping is the same feature as on other Maxinator devices. You map it to a parameter and it fires every time one of the triggers is activated. If you're using Jumpinator on an Auto Filter, then the Global Parameter Mapping could be used to activate the Auto Filter device itself while the main parameter is mapped to the frequency. This way the device is only turned on when you hit the trigger.

While the Launchpad optimizations are useful, I find myself using it more in Manual Operations with the Launchpad Mashinator. One of the button rows on my Launchpad will be controlled by the Mashinator, and then I map two or three of the Mashinator parameters to Jumpinator jump triggers.

If you don't have a Launchpad, then I strongly recommend that you use a controller that features momentary buttons. Toggle buttons work, but they are confusing. If your controller doesn't support momentary buttons but does send MIDI notes, then use the Midimashinator. The Midimashinator will interpret MIDI note on and off data from your controller as momentary button data.

12/30/2012

Hot on the heels of the Launchpad Mashinator is another entry into the Mashinator family. The Midimashinator doesn't have as many features as it's Launchpad sister, but it is still pretty damn useful. You define some control mappings and link them to particular midinotes. Then when the Midimashinator sees one of the notes you've specified, it fires the mapping. Here's a picture:

When the Midimashinator sees a C1 note pass through the track it is sitting in, it will fire the mapping (in this case a send knob pointing to a return track called A-LongTail). When the C1 note off message comes through, Midimashinator will turn the mapping off. This allows your midi controller to double as a momentary controller at the same time as a regular note generator.

Pretty straightforward stuff.

Where it shines is when you set it up on a drum rack track. Now you can have your drum rack controller, fire off additional FX or sounds. An excellent video showing this sort of thing in action is at the DJ TechTools site featuring Mad Zach.

The controls aren't complex, but here's a quick description.

I think they are pretty self-explanatory. On the far left are buttons to learn MIDI notes. You can select multiple at a time to make it easy to assign several mappings to the same note. The little circle to the right of the MIDI learn button provides visual feedback when the Midimashinator sees the note associated with that row. The Note control displays the note that triggers the mapping. This is set with the MIDI learn button or can be manually specified. If you type in a value, you can use note names, like F#3, or the actual MIDI value. The enable/disable control lets you temporarily disable a mapping. On the button press/release controls note thatthe release value doesn't have to be less than the press value; they can be inverted. That about does it. Let me know if you have any questions.