Author Topic: c-lab Human Touch (1989)  (Read 525 times)

0 Members and 1 Guest are viewing this topic.

Offline chrisNova777

  • Administrator
  • Posts: 8341
  • Gender: Male
  • "Vintage MIDI Sequencing + Audio Production"
    • www.oldschooldaw.com | vintage audio production software + hardware info
c-lab Human Touch (1989)
« on: January 18, 2019, 03:14:19 AM »
http://www.muzines.co.uk/articles/c-lab-human-touch/5689


Quote
Human Touch from C-Lab is a hardware add-on for Unitor, the integrated timecode sync and MIDI distribution unit for their Creator/Notator software sequencer program for the Atari ST. The device is essentially an audio trigger unit which clips neatly into place on top of the Unitor, connecting via its 'MultiPort' interface and providing, among other facilities, the ability to use acoustic sound sources to create tempo information to control the sequencer timing.

This adds a further touch of sophistication to Notator's already very extensive tempo handling facilities, and has potential both for live performance use (where sequenced parts can be made to follow the subtle variations in timing produced by a real drummer) and also many studio applications (such as post-syncing to material recorded without timecode).

The unit is remarkably well equipped for its compact dimensions, sporting six phono sockets, a built-in microphone, two selector switches and a rotary thumbwheel sensitivity control. If you share my aversion to phono sockets for anything other than semipermanent connections, perhaps it should be tempered by the thought that there simply wouldn't be room for a larger socket type to be used; and anyway, I don't fancy the idea of heavy-duty connectors hanging off the back of my computer.

The six phonos are divided into three inputs, of differing sensitivity, and three outputs: I will deal briefly with the outputs first as they are something of an unexpected bonus on this unit and have hidden powers! The outputs can all be independently accessed from within the sequencer program to output clicks in order to form clock signals at any desired rate, facilitating the synchronising of non-MIDI gear such as units that operate on the old 24 ppqn Roland DIN Sync format (eg. TR606 and TR808 drum machines). Clicks are simply entered in the program as a series of individual events, listed by name in the Event Editor, which can then be looped, delayed/advanced, or even 'grooved' using any of the preset or user-determined 'grooves' available within the program. DIN Sync with 'feel' - surely unique! Alternatively, if a pulsed signal is not required, any of the outputs can be set to a constant 'high' or 'low' state, offering a very convenient signal for remote switching and external control purposes, such as automatic remote starting of tape machines for 'flying in', with very fine control of timing with Notator's high clock resolution (user-defined at either 768 or 1536 clocks per bar). All in all, a seriously useful and versatile set of extra facilities.

HOW IT WORKS


The main business of Human Touch begins at the inputs. A three-position input selector switch governs whether the internal mic, an external mic, or a line level source will act as the triggering signal. If either internal mic or the first external source socket is selected, the rotary sensitivity control can be varied for level matching purposes. The second switch, marked 'High/Linear/Low', rolls off either top or bottom to make the trigger inputs a little more frequency selective if necessary. I actually found no need to depart from the Linear position during testing, although perhaps in a noisy stage environment it would doubtless prove beneficial.

The real sophistication of this system, however, lies not so much in the hardware itself, but in what the sequencer program subsequently does with the information it receives from it. Notator offers a 'Tempo Interpreter' function (which can be used on MIDI data alone without audio input) that analyses the timing of incoming notes and extracts tempo information to set, and then continuously update, the speed of the sequencer. The Tempo Interpreter is, in effect, a multi-parameter 'window' or mask which can be used to prevent any notes beyond a predetermined distance from defined beats from having any influence on timing, thus enabling you to play quite rhythmically complex parts without upsetting the normal speed, and yet still have any subtle overall tempo adjustments accurately followed.

As ever with Notator, the control window for this function is virtually self-explanatory and intuitive in use. Once you have entered a 'Tap Step' into the Tempo Interpreter, the system then knows approximately when to expect each subsequent trigger. Any notes that arrive more or less on time will be accepted and used to modify tempo slightly, according to whether they arrived early or late. A 'Window' setting, expressed as a number of clocks (eg. 8/768 = 1/96th note), defines how much a note can vary before it will be ignored as far as timing information is concerned. The larger the window, the more dramatic the tempo variations can be, if desired.

'Tempo Response' determines the sensitivity to tempo variation; a low value entered here will act as a sort of tempo quantisation, damping the effect of unwanted tempo fluctuations to some extent. 'Maximum Tempo Change', as the name suggests, constrains the total amount of variation possible from one trigger to the next. Very small numbers can be used, accurate to two decimal places if necessary, for the most accurate tracking, perhaps of pre-recorded material which is known to have constant tempo. The effectiveness of the trigger signal can be gauged from the behaviour of the Atari's click output and the C-Lab MIDI Thru monitor display. A 'Pre/Post Monitor' selector icon governs whether you hear the same click in response to every trigger received, or a discrimination between those that hit and those that miss the window you have selected.

Accepted inputs can be made to produce a noticeably higher pitched click, greatly assisting in the setting up of the trigger signal and fine-tuning of the various tempo parameters. In 'Pre Monitor' mode you will also hear a click response during your count-in, whereas the 'Post' mode will not audibly respond to triggers until the track starts running.

The system can, of course, be instructed to wait for a user-determined length of count-in, the tempo derived from the count subsequently forming the tempo for the start of the piece. If no count at all is set up, ie. 'Count=0', then the first trigger received will simply start the sequencer at whatever the currently displayed tempo happens to be. All very logical really.

Notator has offered this Tempo Interpreter facility since version 2.1, for use with MIDI information. Now, however, it is possible via Human Touch to combine both MIDI and acoustic sources to provide the ultimate in real-time humanising control over sequencer timing.

Notator handles tempo data via its system of 'pseudo' events, presumably so called because they are not real MIDI events, and are not transmitted at all, yet they can be manipulated and utilised within the program just the same as any other MIDI data. On-screen events such as muting or un-muting a track, or scrolling the tempo display, all generate unique pseudo event numbers which, if recorded, can be viewed and edited via the Edit screen in the normal way. When following non-constant tempo playing (eg. mine!) via Human Touch, a steady stream of 'P User 1' (absolute tempo) events can be viewed, constantly updating running speed in response to the input. Because P User 1 (absolute tempo) events are recorded as opposed to P User 2 (relative tempo) events, you cannot then simply alter the displayed tempo of a piece whilst retaining all the tempo variations in their correct relationship to the original speed. However, this is not so much a limitation as a minor irritation, for it is possible to use Notator's powerful Transform function to process all P User 1 events to achieve the desired result, although I am not absolutely sure whether multiplication or addition would more accurately preserve the correct relationship; in practice it seems to make little difference.

DOES IT WORK?


So how well does it all work in practice? Quite remarkably well, really! If you have ever been involved in an audio-to-MIDI triggering session before you will know just what a hit-and-miss affair it can be, but this is in a different league. Its success is, I think, primarily due to the intelligence of the 'brain' at work at the heart of the system, the C-Lab program itself, rather than anything particularly innovative about the actual hardware involved.

Using the internal microphone, I set up a sequenced song, switched to Manual sync mode, gave it four precise fingersnaps and... absolutely nothing happened! The Tempo Interpreter calculates tempo from the relative timing of incoming triggers, ie. the gaps. Four triggers equals three gaps - not enough to complete the count-in! Five fingersnaps worked perfectly and away it went, with the tempo display continuously showing variations of tenths and hundredths of a BPM (beat per minute) in response to my best efforts at constant time! What happens if you stop? Naturally the sequencer simply carries on playing at the tempo setting derived from the last trigger that you gave it.

There is one exception to this, however, which I discovered by accident. I was triggering an entire song mix, including drums, with handclaps picked up by the internal microphone. When I stopped to let the sequencer 'free wheel', it gradually became apparent that it was - barely perceptible at first - slowing down! A glance at the MIDI Thru monitor showed incoming triggers still being recognised. Seemingly the mix was being monitored loud enough for the sequenced drums to be detected as triggers by the internal mic. The system was effectively audio triggering itself and, presumably in response to receiving each trigger fractionally late, was constantly micro-adjusting its tempo downwards to suit! Sure enough, reducing the sensitivity of the internal mic stabilised the speed and the situation was confirmed by the trigger detector display disappearing at the same time.

SENSITIVE ISSUES


I could have used a bit more sensitivity on the internal mic; even at the maximum setting fingersnaps sometimes failed to register, unless I was sitting right on top of the unit, and I found myself generally using handclaps for foolproof triggering. But perhaps the mic sensitivity has been pre-set to try to avoid precisely the situation I have just described. Using an external mic, sensitivity is naturally not a problem, and with a directional mic you can be a great deal more selective about what it 'hears'. A close-miked 'tabletop hit with a drumstick' (not an instrument you come across every day, I admit) worked perfectly as the triggering source, using just the default settings of the Tempo Interpreter, and I am sure that mics on real drums would work equally well.

Unfortunately, in the time available for testing I did not have access to a real kit, so I had to do my 'live' drum testing with an off-tape signal. But as this was with a whole kit rather moderately recorded across only three tracks, with a fair amount of spill, I felt that this was actually a more demanding test. Because of the windowing effect of the Tempo Interpreter, separation is much less critical than in many other audio triggering situations. If your tempo information is being derived every quarter note then it doesn't matter greatly if there is a lot of snare spill on your bass drum track, because snare hits are either going to fall close to the main beats and contribute something useful to the timing information, or fall outside the acceptance window and be ignored for timing purposes. A strong, clean count-in signal proved essential for trouble-free operation here (although the situation is not irretrievable without one), and fortunately I had one on tape, with four 'sticks' clearly audible on the overhead mics.

In the main, tracking of my recorded drum kit was flawless, with just a slight adjustment to the 'MultiPort Discrimination' value being required. This facility enables the Tempo Interpreter's response to be narrowed down to just the initial attack of the triggering waveform. The value displayed is the time in milliseconds that must pass before a new trigger will be accepted. Very low values of MP Discrimination, ie. under 20ms, allow successive cycles of a waveform to cause rapid multiple triggering, resulting in an uncontrolled runaway effect. The default figure of 60ms I found to be fine for most simple trigger sources.

The only time I came unstuck was with songs that had parts in them that slowed down or speeded up at a rate that exceeded what I had allowed for in the preset parameters. A slightly more liberal setting of the Window and Max Tempo Change values seemed to take care of it however, without upsetting normal tempo following. This is the only problem I could foresee for live use; if you set your Window too narrow and then attempt to change speed too abruptly, Human Touch will simply ignore you, forcing you to resume something like normal speed before you can exert any sort of control again - which could be embarrassing on stage. However, I found very little trial and error was necessary to establish in rehearsal what the optimum parameter settings were for each musical requirement. Ultimately, it is inevitable that you can reach a situation where the combination of a complex rhythm trigger and a wide window setting results in unstable tempo derivation, although I must say nothing within reasonable bounds of common sense failed to work.

POST-SYNCING TESTS


The ultimate test is, of course, post-syncing to a complete mixed track, in order to add some extra parts without having to do a total remix perhaps. Here there will be no count-in available, so the procedure is to discover an approximate tempo, perhaps by tapping along with the track using the internal mic, and noting the displayed result. Then, using this as the start tempo, and by setting a count of zero, the sequencer will simply start at the first trigger it receives (hopefully the start of the track). Amazingly it does work sometimes, given that the song actually starts at Beat 1 Bar 1 (little drum fill intros tend to mess things up) and that there is a strong rhythm part in the mix. With most material however, I found it preferable to create my own click reference for this application, by tapping along in time or (better still) by tapping a note on a keyboard to create a MIDI reference. Having achieved satisfactory audio following, it is not necessary to rely on this method thereafter.

Assuming that your mix can be transferred to a couple of tape tracks on a multitrack recorder, along with an additional timecode track (if your stereo master has a centre timecode track then even this would not be necessary), then once you have a set of tempo variations recorded into a sequencer track (one continuous track preferably), you can use that data to create a 'Sync Reference' for Unitor to synchronise to timecode. Perfect lock-up every time, with no need to worry about trigger levels altering if you mess about with anything on the audio side.

This system helps me to avoid the thing I like least about sequencer-based work: the need to set a tempo before you can record something. You can rarely get it just right straight off, without a certain amount of trial and error, and in that time you can sometimes lose the precise feel of your original idea. With Human Touch connected into your system you can actually get away with shouting the traditional 'One, two, three, four' to get you started; unbelievable until you've done it. Do note however, when you try this, that the sequencer starts recording from the presently displayed bar number, rather than always at Bar 1. My first attempt played back perfectly, but my second was preceded by 16 bars of silence, which I was initially at a loss to understand. I had of course stopped the first playback at Bar 17, where it ended, and not reset the counter before trying again. In different circumstances, starting at the counter position may be just what's required; you simply have to be aware of what's happening.

CONCLUSION


Human Touch is another element in the C-Lab integrated system approach. Certainly, integrated timecode units offer many advantages over external systems. In the case of Unitor, it means an unlimited number of tempo changes (a feature essential to the operation of Human Touch), all programmable from within the sequencer environment if necessary, rather than having to be imposed from the sync device. It also offers the benefit of having all information stored on disk along with the song data, and above all, by bypassing MIDI Song Pointers and talking directly to the Atari, sensationally fast lock-up.

The additional facilities of the Human Touch unit put the finishing touches to possibly the most comprehensive and flexible synchroniser/humaniser system available, and enhance still further the immense power of the C-Lab Creator/Notator system.