Swing Conversion

(See table at the end of this post)
"Everybody play nice together."

Talking about rhythmic swing with musicians is just asking for trouble. Have a poke around the interwebs to see what I mean - lots of strongly-held views, with poorly-defined terminology.

But when it comes to rhythmic swing as a feature of rhythm machines, we know where that all started. It was introduced by Roger Linn back in 1979. So let's hear what he says about it, when asked what makes his drum machines so highly regarded:

“Swing – applied to quantized 16th-note beats – is a big part of it. My implementation of swing has always been very simple: I merely delay the second 16th note within each 8th note. In other words, I delay all the even-numbered 16th notes within the beat (2, 4, 6, 8, etc.) In my products I describe the swing amount in terms of the ratio of time duration between the first and second 16th notes within each 8th note. For example, 50% is no swing, meaning that both 16th notes within each 8th note are given equal timing. And 66% means perfect triplet swing, meaning that the first 16th note of each pair gets 2/3 of the time, and the second 16th note gets 1/3, so the second 16th note falls on a perfect 8th note triplet. The fun comes in the in-between settings. For example, a 90 BPM swing groove will feel looser at 62% than at a perfect swing setting of 66%. And for straight 16th-note beats (no swing), a swing setting of 54% will loosen up the feel without it sounding like swing. Between 50% and around 70% are lots of wonderful little settings that, for a particular beat and tempo, can change a rigid beat into something that makes people move."

(from an interview with Attack Magazine, July 2013)

Pretty straightforward if your drum machine has that function, but what if you are running more than one machine in sync, and you want them to swing together? Some old drum machines have very limited swing options, and some such as the TR-808 and TR-606 don't have any at all. Yes, they have triplet rhythms, but you can't swing the sixteenths for those in-between grooves that Roger mentions above. Well one way to do it would be to simply send them all the same sync signal, and embed the swing timing into the sync signal itself - voila! everyone swings together. This is something that devices such as those by Innerclock Systems allow you to do.

Above: the Innerclock SyncGen plugin can generate 8th or 16th swing timing to the hardware.


In my studio I'm currently running three separate audio sync tracks from my DAW out to my hardware. There are two Innerclock SyncGen tracks (one for an original and one for a newer model SyncLock) and one track of synthesized FSK to slave a Roland MC-50 midi sequencer.
 (Details about my synthesizing FSK for sync purposes can be found here)

Unfortunately, Innerclock, the DAW (Cubase) and Roland don't share the same terminology when it comes to applying swing.

Innerclock use the classic Linn terminology, from 50-75%, where 66% is a perfect triplet.

Cubase uses a swing percentage that goes from 0-100%, where 100% is a perfect triplet.

The Roland MC-50 doesn't use the term at all, and amazingly doesn't have a swing function per se. But you can achieve it using a quantization trick.

So the first problem I had was converting the Linn swing percent to the Cubase swing percent. That turns out to be pretty easy: subtract 50 and then multiply by 6 (reference). I checked it, it works in practice. OK, so how to get the MC-50 hardware to swing with the rest of the gear? One option is to make the FSK sync signal itself have swing, much like the Innerclock sync signal. How much? Maybe I could apply Cubase's swing function to the midi files driving the FSK synthesizer? Yes! By selecting the pulse that occurs on each even-numbered sixteenth beat division and dialling in 16th note swing percentage, that pulse ends up where it needs to be. However, you still then have to manually edit the pulses around it (each pulse takes up a 128th triplet division) to accomodate this, and to make sure that the second set of six pulses take up a shorter duration so that the first pulse of the following set starts bang on the regular beat division, shown below.


Above: Straight FSK pulses as midi notes (128th triplet duration)

Above: the first pulse on the second sixteenth has been swung by Cubase to 60%, and the pulses around it have been stretched or compressed as required.

So that's a bit of a pain, but at least once you've done it for the commonly used settings, you just save it as a template. I made up bars of FSK files for 54% 56% 58% 60% 62% and 64%, and they worked perfectly. 52% is too subtle for my ears, and 66% is simply triplets.
But.. of course, when the old hardware is used independently of a computer (which is one of the joys of this system!), it reverts to straight time again. Doh! 
So I needed to work out how much to delay these beats on the MC-50 for each of the settings of my other machines. That way it would swing just the same as when it ran as master, or slaved to straight sync code.
The Roland MC-50 midi composer has a resolution of 96 "clocks" or "ticks" or pulses per quarter note (ppqn). That's 48 per eighth note, and 24 per sixteenth note. To get the number of clocks needed to delay alternating sixteenth notes to achieve a certain swing percentage, multiply 48 by the percent swing (in Linn terminology) desired, divide by a hundred, then subtract 24.

e.g. for 54% , multiply 54 by 48, to give 2592, divide by a hundred = 25.9. Let’s round it to 26, then subtract 24 which leaves 2. So delay the second sixteenth note by 2 clocks from 24 to 26, and the fourth sixteenth note from 72 to 74.

e.g. “58%” = 27.8, rounded to 28, subtract 24 leaves 4. Therefore the clock positions of the “swung” notes will be at 28 and 76 clocks in the quarter note as seen in Microscope mode.

Of course, it would be exceedingly tedious to have to manually move notes in Microscope edit to achieve this. Luckily there is a fast way, called "iterative" quantization. You dial in a quantize resolution that will pull the notes in which you're interested in the right direction, but with control over just how much shift occurs.
On the MC-50 you hit EDIT, select  9. After quantising to rigid straight sixteenth time, choose sixteenth triplet resolution*, and adjust the “rate” of quantization (i.e. how strong the pull): a rate of 0.2 or 0.3 will give 54% swing, a rate of 0.4 gives 56%, a rate of 0.5 gives 58%, 0.6 gives 60%, 0.7 or 0.8 gives 62%, 0.9 will give 64%, and of course a rate of 1.0 gives perfect triplets. Note that if you haven’t quantized to straight time first, the outcomes of the different rates will yield less predictable results. For reference I've put all these numbers into a table for comparison, below.

*Why not eighth note triplet resolution? Because in the sixteenth triplet resolution, the “middle” sixteenth note in the quarter (i.e. the third) is preserved in it’s midway position between the “swung” notes.

So, who cares? Why do you need to obsess over these silly numbers? Because, as Roger says above, for certain rhythms, at certain tempos, you’ll find that just a certain amount of swing makes the thing “groove”. And if you can get all the "players" (humans and machines) in the room locked to that groove, that's a good place to start to make some great music.



Linn swing
from 50
percent
Cubase swing
from zero
percent
Roland SuperMRC
sequencers
at 96 ppqn
Roland
iterative Q
"Rate" *
54% 24% delay by 2 clocks 0.2-0.3
56% 36% delay by 3 clocks 0.4
58% 48% delay by 4 clocks 0.5
60% 60% delay by 5 clocks 0.6
62% 72% delay by 6 clocks 0.7-0.8
64% 84% delay by 7 clocks 0.9
66% 100% delay by 8 clocks 1.0

*at sixteenth triplet resolution after hard quantizing to straight sixteenths.

Comments