Drum Programming byJoboj

Last updated on 3/31/2016

Genre-defying guitar maniac Joboj has developed quite a name for himself, not just for his guitar playing and enigmatic demeanor, but also for his drum programming skills. If you’ve heard his track Screaming Chicken on Cakewalk Radio or Guitar Track Pro, you’ll know what we mean. Joboj, a self professed tweakhead, has some interesting techniques for programming MIDI drums that involves the Event Window and CAL. We found some of his ideas to be unique, and while his delivery is a little skewed, we thought that you would appreciate hearing about a different way of doing things. Read on to learn a different approach to programming drums, and also to get a free CAL routine for randomizing velocities. This is an advanced tip for users of SONAR, Pro Audio and Professional that assumes some familiarity with the Event view and project set up.

PART 1: MIDI Drums in 1900 Words or Less (Give or Take 98)

So, after my synapses recuperated from a week of drum programming, a voice spoke to me and said “write a tidbit about drum programming in Cakewalk!”…well, actually my cat told me...okay, my stuffed cat…but it was a good idea nonetheless. Those who know me know that my “tidbits” can be quite involved, so they sometimes weigh in over the tidbit limit, and get into the pamphlet category...but bear with me- it’ll be worth it.

I’ve written other articles on drum programming in the past but nothing strictly devoted to SONAR and its ancestral lineage (Pro Audio/Professional). Furthermore, I’ll take it a few steps further, and discuss (well, discuss would imply a dialogue happening…maybe the term “blab” is better) how to get programmed drum sounds to really stand out in the mix.  

Enough of my yappin, let’s go!

Getting Started—Laying the Foundation:

Double click your Cakewalk icon, and open a new file. Because different MIDI devices sometimes map drums differently (i.e. a snare on an Alesis DM5 is a different note value than on a general MIDI sound module), I’m going to reference note values (C3, D3, etc) as KICK, SNARE in order to avoid any confusion.

Your project should use a time base of 120 (set at Settings | Options | Project | Clicks Per Quarter Note), for sake and ease of programming (we’ll tweak it later…); you can set the tempo to whatever works for you; let’s stick to 4/4 time. Configure track 1 as a MIDI track, and name it “click”. Open the Event view.This is where I do 90% of my drums…. note by note. Insert a note @ 01:1:000, and configure it as a closed hat, velocity of 127, and duration of 0 (unless your sound modules require a duration for the sound to trigger). Do the same @ 1:2:000, 1:3:000, and 1:4:000 – you now have a quarter note click track. Copy and paste the first measure about 9 times (or however long you want it to go). Combine the pieces in the Track view (select the entire track, right click, and Bounce to Clips). If you want 8th notes, just select and copy all the notes, Edit | Slide the existing notes by 60 ticks, and then paste the old notes back in place over the “slid” notes.

This is the basis I use to create drums. It may be a bit tedious for some of you, but in the long run, the Event View is the most detailed place to assemble and tweak drums. Sure, I could bang on a synth controller (ie: keyboard) and record the patterns into the software, but then I’d still have to quantize the performance. By the way, I HATE TO QUANTIZE! Um...sorry, what I mean to say is that I try to avoid that command for drum construction.

Now we’ve got a steady pulse to play off of. Insert another MIDI track. Let’s name it “d” (for drums… geddit?). We’re only going to program kick, snare, and toms in this track. Hats, rides, and crashes will all have separate tracks. We’re going to stick to a basic drum beat for example’s sake. Go back to the Event view:  Insert a note @ 3:1:000 (I like to give myself 2 measures of start time before the song begins). Assign the note to the kick drum. Now insert a note @ 3:2:000 and make it a snare.

The trick to making drums groove is in the kick and where it’s placed. So, let’s insert another kick (from now on, I’ll refer to inserted notes as their final assigned value, and their velocities will be 127 and duration of 0) @ 3:2:060, 3:3:060, and 3:4:060. Insert a snare @ 3:4:000. Play back and presto- a basic drum pattern! Now we’re going to tweak it a bit….

Velocity of the Groove:

Live drummers don't always hit the same drum with the same strength, and that's how live beats get their feel. Making velocity changes to your drum pattern is the key to changing it from a pattern to a groove.

Adjust the velocity of the first snare to 121. Can you hear a difference in timbre?  If your drum sampler/module is set up for velocity boundaries, adjust the value until you hear a difference. If not, then bring the value down to anywhere between 111 and 121. By bringing the velocity of the first snare down, this puts the accent on the 4 (being the second snare hit). Now, set the velocity of the second kick to 121, the third to 111, and the fourth to 121. This puts the kick accent on the 1. Loop it and listen...hear the difference? Copy and paste this measure 7 times.

Go back to the Track view and insert a new MIDI track and name it “hats”. You can now mute the “click” track. In the Event View insert a mid hat @ 3:1:000, 3:2:000, 3:3:000, and 3:4:000. Play it back. Pretty stale, eh?  Adjust the velocities to: 127, 121, 127, 121. Better?  Okay, how about inserting mid hats @ 3:1:060, 3:2:060, 3:3:060, and 3:4:060, and make their velocities about 96. Sometimes making the notes at “060” open hats (or vice versa when open hats are used as quarter notes) gives a sloppier sound to the hat. Play around and experiment… now, copy/paste this measure 7 times.

In the Track View insert a MIDI track and name it “crash”. In the Event View insert a crash @ 3:1:000 and 7:1:000.  OK now we have a problem, unless your drummer is an octopus, he’s not likely to play the high hat and crash at the same time. Open the “hat” track in the Event View. Change the velocity value of the hats at 3:1:000 and 7:1:000 to 0.

So it’s pretty basic, but it’s a groove. Can you hear how the velocity changes affect the feel?  Now we’ll get a bit more into the nitty gritty….

Flam, Blam Thank You...um, err... Fill:

Let’s create a drum roll/fill before the second crash. Open the Event View on the “drum” track, and scroll down to about 6:4:000. Change the kick @ 6:4:060 to 6:4:090. Insert a snare @ 6:4:030 and a tom @ 6:4:060. Nothing spectacular, but hey- we're keeping it basic because I’ve got to type this thing out. 

Now let’s add a snare flam:  Insert snare notes @ 6:3:100 and 6:3:110 with velocities of 78 and 88. The placement of the notes with the low velocities will give the impression of “rolling” off the snare, and adds a bit to an otherwise uneventful fill. Open the Event View for the hats track. Once again, this is an octopus-free zone so delete the hats @ 6:4:000 and 6:4:060. Adjust the hat note @ 6:3:060 to be an open hat with a velocity of 127. It’ll make the illusion that the “drummer” is winding up to flam, and just couldn’t give a hoot about that last high hat note.  

Let’s separate each drum into its own track. In the TRACK view, select all of the notes in the “d” track. Using the Event Filter, select only the Kick (C3 in my case) notes; copy and paste them into a new track. Name it “kick”. Now, do the same for the snare and tom(s). You would repeat this for each tom, if you use multiple tom sounds. So now we should have tracks named: kick, snare, tom, hat, and crash.

So we’ve got ourselves some drums to work with... now onto even more tweaking!

120 vs. 960, Room to Groove:

Go into Settings | Options | Project. Change the Clicks Per Quarter Note to 960 and hit OK. By upping the time base of the project you are giving yourself more resolution for the edits that we have coming up, essentially you will now have a more room to groove.

CAL = Instant Feel:

Select the kick track and its contents. Edit | Run CAL, select the routine RANDOM TIME. Set the value to 1, and press enter. Now, do the same to the other tracks, and use the value of 2. This will shift the selected notes +/- 1 unit from its original starting point. This is a great way to get rid of the rigid structure of sequencing. Listen to it play back and and try it out. If you moved a track too much (or too little), you can always Quantize the start times of the track 100%, and start over.

Let's humanize those hats a bit more. I’ve written a CAL routine called Random Velocity (free download, on Joboj's web site), which will take selected notes, and change the velocities to random amounts within a specified range. Select all of the notes in the “hats” track with a velocity of 96. Now run the Random Velocity CAL routine. It will ask you for a maximum value: enter 100, and a minimum value: enter 92. Click OK. All of the notes that had a velocity of 96 have been changed to values between 92 and 100. Now run the same routine to the notes with velocities of 121, but change the min/max values to 117/125. Instant feel!


Now it’s time for some patchwork.. I’ll use generic terms, as everyone’s system/studio is different. Take the audio outputs of your drum machine/module and connect them to the input of your soundcard. Mute all tracks except for the “kick”. Add an audio track, and configure it to record the output of the drum module, and record just the output of the kick track into the new audio track. Rename the audio track “kick-wav”. Do the same for the snare, hat, tom(s), and crash. Remember to mute the other tracks. When you’re done, you should have 5 audio tracks containing wav files of your sequenced drums. Now you can tweak each track separately (gate, compress, eq, etc.), and mix them within SONAR.

A Tad Tedious?

Well, maybe it does seem a bit on the tedious side to do ALL of this stuff. It all depends on how hardcore you want to be with your recordings. It’s your music: be creative.

When not developing acute catatonic disorder (from prolonged exposure to the internet) you can find Joboj running amuck in Los Angeles.He's currently finishing up his next CD that will include Screaming Chicken (...that Guitar Tracks Pro tune), contributing to a Steve Vai tribute disc (who IS still alive... Steve, that is), developing some promotional material for Morley Pedals, writing more columns about music and/or fruit, and hanging out at the Fernandes Guitar building doing... well, we're not really sure, but they haven't kicked him out- yet.  

Click here to visit Joboj's site.

Cakewalk // Support // Knowledge Base // Drum Programming byJoboj
Copyright © 2022 Cakewalk, Inc. All rights reserved
Sitemap | Privacy Policy | Legal