For those who want to put a human performance at the centre of their sequenced masterpieces, Circular Logic have developed software that can understand and follow tempo changes in real time.
Attempts to infuse sequenced music with a natural feel go back a long way. In the days of tape machines and Atari computers, engineers used to painstakingly gate audio signals off tape to feed them into trigger units in their SRC SMPTE-to-MIDI boxes, or the audio input jacks of the trusted C-Lab Unitor. In our times of weapons-grade home computing we take these abilities for granted, with all major DAWs featuring the ability to extrapolate tempo data from both MIDI and audio source material.
However, the ultimate challenge now is to do it in real time: generate the clock while you are playing and have the computer follow you like Tony does George W. Circular Logic, a Florida-based company who proclaim as their mission statement that they "want to make computers that listen like musicians so musicians don't have to think like computers" are offering the technology. Their InTime software generates tempo information from any MIDI source and transmits this in the form of MIDI Clock data to the sequencer of your choice: this can be a drum machine, hardware sequencer or any of the current desktop systems, bearing in mind the limitations of these systems. For example, Logic 7 cannot cope with real-time tempo changes when using the Audio Engine and Apple Loops, although MIDI is no problem. Ableton Live, on the other hand, makes a perfect partner for InTime, and I imagine that Propellerhead's Reason would suit the setup as well.
The basic idea, then, is to infuse the programming with some live feel, the computer slowing down and speeding up in sync with your playing. Another application, which ultimately could prove more useful, is InTime 's Groove Tracking mode, but more about that later...
After filling in a lengthy questionnaire you can download InTime, and the small file size (about 2.2MB for the OS X version) makes that quick and painless. Installation on my system was smooth, and the authorisation is of the challenge-and-response type used by most software houses these days.
Once the program is installed it needs to be connected into your MIDI environment. Depending on your setup there are multiple ways of doing this; in OS X, which I use, InTime recognises all connected interfaces and allows you to access them from its MIDI Devices window. As you might imagine, it is here where you do your routing of MIDI signals, be it within the computer or to the external world. By enabling Beat Clock and choosing the port you want to address, you set up InTime to be the sync master. Now all you have to do is to connect a sequencer capable of handling tempo variations in real time to that MIDI port and you're up and running.
InTime is controlled from a sleek and intuitive user interface consisting of 10 separate windows that can be viewed simultaneously as well as individually. They are small enough to fit on to the screen at once, giving you all parameters at a glance. The main window, simply named 'InTime', also allows access to most other panels at the click of a button, which is very useful in the beginning when you are familiarising yourself with the software.
InTime is designed around few parameters and is therefore straightforward to understand, and the few occasions I did consult the manual confirmed my intuitions about what a parameter was designed for.
Apart from the MIDI Devices window, which is self-explanatory, the most important controls are located in the main window. Here you set the sensitivity of the tracking, which defines how responsively the clock reacts to any tempo changes in your playing. The higher the sensitivity, the closer the tracking to the playing. Circular Logic recommend a low setting to start with, and it has to be said that high settings can make you seasick when you're not experienced. Generally speaking, values between 2 and 7 give a satisfactory result, depending on what instrument and sound you are playing, while the highest 11 (very Spinal Tap) makes you feel like you're trying to ride a horse that's not been broken in.
Also located in the main window are the transport controls and various mode switches such as the toggle switch between groove and tempo tracking, clock out and tempo tap.
In the MIDI Triggers window you can assign MIDI events and controllers to set certain parameters. This is a very useful feature in terms of playing live: for example, it allows you to use MIDI controllers to tap the tempo, stop, start, and adjust the tracking sensitivity. A MIDI learn function makes these assignments quick and easy to execute.
The Tempo & Start Control window allows you to set the initial tempo as well as minimum and maximum tempo values, which can be overridden with the tap function should you want to do so. Also in this window are various count-in and start options: you can set the length of a count-in (irritatingly named 'countoff') or use the 'Wait Note' mode, which starts the clock on the first MIDI Note On.
The next most important window is Advanced Tracking: it's here you really define how the tempo is going to behave, and it is here where you either get InTime to work for you or give up on it. A 'Rate Filter' eliminates MIDI clutter such as strumming or sliding up or down the neck of a guitar, drum rolls, piano glissandos and other sudden streams of rapid, out-of-time MIDI events that would otherwise confuse the tempo tracking. 'Sub Tracking', on the other hand, divides the bar into more precise subdivisions to allow certain kinds of syncopation that might otherwise be misinterpreted as speeding up or slowing down. For example, staying clear of the downbeat in a one-drop feel can confuse InTime if 'Sub Tracking' is disabled. In Groove Tracking mode, InTime stays around one average tempo but varies around that tempo in order to move material that is hard-quantised to fit the groove.
Tracking Bias is one of the most important controls, since it is responsible for the overall 'feel' (I use that word with hesitation) of the tempo tracking. Generally speaking, a negative value will make it easier to slow down, while a positive one will make the tempo go up and up and up and up. Especially in the beginning, when you are getting used to InTime, it will seem like it is only ever going faster. A related control is Momentum, which in a sense reinforces the rate of tempo change. If, for instance, you are slowing down on a high momentum setting, InTime will anticipate you slowing down further.
Setting up InTime so that it does what you want is a balancing act between the Sensitivity, Momentum and Bias settings. Once you have understood their relationship you are a good way into getting a result from the software, and finding the right settings depends very much on the feel of what you're playing. A laid-back feel can be hard to achieve with a negative Bias setting at a high Sensitivity because it will be interpreted as slowing down, while sudden tempo variations are near-impossible with high Momentum, yet low Momentum can be a pain as it will result in InTime following every little hesitation or push in the playing.
Once you have achieved the right settings for the tune you are playing, you can record a take into InTime. This will not be quantised but will generate a tempo map. On playback of this track the software will keep the tempo variations intact, and once saved, the take can be loaded into any other software as a MIDI file. The tempo map is included in such a file, meaning that you can start building a track on your usual DAW starting from a feel-based take.
Anyone planning on using InTime on stage needs to do a lot of rehearsing, since the way your playing is interpreted very much depends on the settings. It is a little disconcerting how a slightly unsuitable setting can turn a mellow trip-hop track into a raving polka. Here, InTime 's preset and set list functions come in handy, because they allows you to combine settings and MIDI files into presets, which in turn can be compiled into set lists. InTime will load the next preset and its associated MIDI files (should you so desire) after the end of the previous preset, either once a MIDI file has ended, or when you hit stop.
My main technical problem with InTime is that it extrapolates its tempo information from MIDI data. This brings with it a few inherent limitations, which I think restrict the usability of the software. Firstly, MIDI within a computer invariably suffers from latency, which in itself is a natural enemy of feel-based playing, although ever-increasing chip speeds make it less of a problem these days. For the purposes of this test I used a normal MIDI keyboard, a Korg Z3 MIDI guitar, and some bongos triggering a standard trigger-to-MIDI device. I found that the best result was achieved with the drums, since the guitar and the master keyboard both suffered from a compound effect of latency at every stage of the process.
However, I suspect that many of those who are interested in InTime will be keyboard players, since most drummers and guitar players I know don't really want to get into digital equipment. They will either have to put up with latency, or invest in additional gear for the sole purpose of using InTime. However, Circular Logic have said that they would think about implementing an audio option at a later stage should the demand arise.
Talking of audio, real-time time-stretching is also asking a lot of any slave program: even Ableton Live uses a clock smoothing function when running in slave mode, which makes the overall response a little less sensitive. If you want to find out just how responsive InTime can be it is a good idea to load some MIDI files into its own file player and play along to those. In this case you aren't dealing with any audio time-stretching but only discrete MIDI triggers, and the tempo changes are very immediate.
My final point is that there is a danger of losing exactly what you are trying to capture in the performance: the feel. Circular Logic state that you need to listen to InTime while you are playing, just as you would with another musician. I found that the difference between a computer and another musician is that you can trust your mate to play sympathetically with what you are doing, and that musicians feel and most importantly anticipate what is required musically. When listening to InTime you are very busy re-checking the effect your playing is having on the tempo (I can see where the name Circular Logic came from) and in this mental feedback loop you are in danger of losing the very feel you're after. I would imagine that jamming with a bigger bunch of people is very exhausting for the one connected to InTime, since he or she will have to do a lot of juggling to keep the groove going. I only used the software playing together with one other musician, and found that I was listening to either him or the software. But that might just be a question of practice: if you are into trying to marry live playing with responsive sequencing, InTime is certainly a very interesting option.
Circular Logic say that they have been frustrated by people giving up on InTime before they realise its potential: it takes some practice to get the hang of it, and in the beginning you are likely to experience runaway situations when it just seems to go faster all the time. I have to say that it pays off to follow the manual in this respect and to play simple and rhythmically steady material in order to feel your way in. After a while, it becomes progressively easier, and after an hour or so the fun begins. As long as the playing is of reasonable quality and within sensible parameters as far as the tempo fluctuations are concerned, InTime is perfectly capable and in fact very clever at tracking tempo changes.
Apart from fun, the main application I can see for the software is in productions where you want use a live performance as a basis for further sequencing. Unfortunately the examples given on the Circular Logic web site are not very inspiring, since they mainly demonstrate that it is possible to speed up and slow down but leave you wondering why you would want to do that in the first place. In the right hands, however, I think some amazing results could be achieved. The Groove Tracking facility also has potential: although it isn't a new idea, and can be achieved in DAWs such as Logic and Cubase by creating quantise templates that are generated from live takes, InTime provides a quick way of creating tempo maps for this purpose.
- G3, G4 or G5 processor.
- Mac OS 10.2 or higher, or Mac OS 9.1 or 9.2.
- Windows 98, 2000, Me or XP.
- Microsoft Direct X version 8.0a or higher.
InTime will not work at all on Windows NT. To use InTime directly with MIDI software on the same computer, you can use a 'Virtual MIDI Device' such as MIDI Yoke or Maple MIDI Tools (especially on XP).
- Good real-time tempo tracking for keyboard and MIDI drum triggers.
- A quick way of getting tempo maps to overdub MIDI onto live takes.
- No audio in option.
- Needs a lot of practice to get the first results, although it gets easier to use.
The developers at Circular Logic should be congratulated for this innovative and stable piece of software. If you are willing to invest enough time to overcome initial frustrations, InTime turns out to be a very clever application that will reliably slave your computer's MIDI clock to your live performances.