You are here

Rhythm Selection

Sonar Tips & Techniques By Craig Anderton
Published November 2017

The soft-synth insert menu lets you choose the number of individual outputs.The soft-synth insert menu lets you choose the number of individual outputs.

Create custom kits with Sonar’s Session Drummer 3.

I prefer drum loop libraries that include individual hits, so that I can expand upon what’s offered in the loops or create my own loops that are sonically compatible with existing loops. That requires a comprehensive way to put together drum kits, and although Addictive Drums 2 gets most of the ‘drum module’ attention in Sonar, it can’t load custom samples. Fortunately, Session Drummer 3 can.

Start by inserting SD3, which has 12 channels. You can choose a single stereo audio out and use SD3’s internal mixing and panning capabilities, or deploy mono outs for all 12 channels (which adds 24 individual audio output tracks), or stereo outs for all channels, which provides 12 audio tracks.Sonar_1117_01

The latter is my preferred option when processing individual sounds because it’s more compact than 24 mono tracks. You can also save the collection as a Track Template that opens your custom kit and all associated processing.

Choose Your Samples

SD3 can load almost any kind of audio signal onto a pad — mono or stereo, WAV, AIFF, FLAC, OGG and MP3, at virtually any sample rate or bit resolution. Furthermore, SD3 pads can load SFZ files, which allow for multisampled drum hits and additional processing.

If you’re unfamiliar with SFZ files, they may seem daunting at first but they’re simply text files you create and edit in Notepad — just make sure that when you save them, the suffix is SFZ and not TXT (although you can always change the suffix). The file tells SD3 the location of a sample you want to map, and the note to which you want to map it. However, an SFZ file can do more than just that, as we’ll see later.

The simplest way to load a pad is to drag and drop a file onto a pad in SD3’s Mixer page. Although each SD3 pad can play only one sample at a time, it can ‘contain’ more than one sound. You select the sound you want the pad to play by right-clicking on the pad, and then choosing the sound from the context menu.Sonar_1117_02

For example, the snare pad can play a sample assigned to MIDI notes 37, 38, 39 or 40. The context menu gives suggestions for those sounds (eg. snare, sidestick and so on), but they can be any sound you want. Typically, you would play the assigned sounds from a keyboard, drum controller or pad controller.

Disk World

The default Sonar installation stores SD3 samples in the folder C:\Program Files\Cakewalk\VstPlugins\Session Drummer 3\Contents\Kits. The Kits folder contains folders for particular drum sounds (Snares, Hats, etc), along with individual kit files that you load into SD3 to use specific kits.

Right-click on a  pad in the Mixer page to assign a  particular drum to that pad.Right-click on a pad in the Mixer page to assign a particular drum to that pad.SD3 comes with quite a bit of content, so each drum sound folder contains two main components: folders with sample sets for a drum (like DSF Modern Kit Bass Drum), and individual SFZ files that create a particular ‘instrument’ you can load onto a pad. For example, the file ‘DSF Modern Kit Kicks.sfz’ specifies how the kicks in the similarly named folder are mapped as multisamples.

When you load an instrument into an SD3 pad and then click on that pad, it will play back the selected sample, as instructed by the SFZ file.

I organise my samples a little differently because I want everything used in the kit in one place. So under Kits, I add a folder for my kit (in the screenshot’s example, it’s ‘14 - Carribeats’). That kit will have both a folder with all pertinent samples, and SFZ files that reference the samples.Sonar_1117_03

How you organise samples matters, because when you load an SFZ file, it has to know where to find the samples. Putting the SFZ files in the same folder that contains folders of the referenced files simplifies matters. Here’s the ‘Kicks.sfz’ file for the Carribeats kick drums, which references the samples in the Carribeats folder (lines preceded with // are comments that don’t assign anything):

//Kick instrument

<region>

sample=Carribeats\kick hard.aif

The ‘14 - Carribeats’ folder in SD3’s Kits folder has another folder containing samples, and SFZ files that map those samples.The ‘14 - Carribeats’ folder in SD3’s Kits folder has another folder containing samples, and SFZ files that map those samples.key=36

<region>

sample=Carribeats\kick 2 med.aif

key=35

A ‘region’ is the location of a sample along with any parameters describing that sample. The line below <region> specifies where to find the sample ‘kick hard.aif’ — it’s in the Carribeats folder. The next line maps the sample to MIDI Note 36, while the next region provides similar information for the kick that’s triggered by MIDI Note 35. Loading the ‘Kicks.sfz’ file as an instrument on the kick drum pad loads the two samples and maps them.

Let’s Make Life Easy

You probably don’t want to think about this SFZ stuff too much, or figure out which notes map to which pads — so just fill in the variables for the following files, and you’ll be able to load drum sounds in SD3. Note that although the SFZ files show assignments for each of the notes assignable to SD3, you don’t have to assign all notes. For example, if you have only one kick drum sample, assign it to one of the kick drum options.

SFZ files are tolerant regarding line spacing and such. The main requirement is that there should be no spaces between characters, unless the sample or folder name contains spaces. Also, the suggestions of what drums to map are only suggestions — you can map any sample you want. Here are some ‘plug and play’ SFZ files; to save space, ‘folder name’ stands for the name of the folder containing your samples. We’ll start with kick:

//Kick instrument

<region>

sample=folder name\kick 1 sample name

key=36

<region>

sample=folder name\alternate kick sample name

key=35.

This SFZ file loads on the crash cymbal pad:

//Crash cymbals instrument

<region>

sample=folder name\crash 1 sample name

key=49

<region>

sample=folder name\crash 2 sample name

key=57

Here’s the SFZ file for the floor tom:

//Floor Toms instrument

<region>

sample=folder name\floor tom 1 sample name

key=41

<region>

sample=folder name\floor tom 2 sample name

key=43

The mid tom is similar, except (aside from the sample names being different) the MIDI Notes map to 45 and 47. The high tom MIDI Notes map to 48 and 50.

Now for the hi-hats. The Regions are all part of a Group, which has additional code to make sure that triggering a hi-hat sample turns off any hi-hat samples that are still ringing. You needn’t understand why this is so — just copy the lines.

//Hi-hats instrument

<group>

group=1

off_by=1

off_mode=fast

<region>

sample=folder name\hat 1 sample name

key=42

<region>

sample=folder name\hat 2 sample name

key=46

<region>

sample=folder name\hat 3 sample name

key=44

<region>

sample=folder name\hat 4 sample name

key=26

And finally, the snares:

//Snares instrument

<region>

sample=folder name\snare 1 sample name

key=37

<region>

sample=folder name\snare 2 sample name

key=38

<region>

sample=folder name\snare 3 sample name

key=39

<region>

sample=folder name\snare 4 sample name

key=40

There are still additional drums — three ride cymbal sounds assigned to MIDI Notes 51, 53 and 59, as well as four percussion pads where you can assign 28 additional samples... but by now, you probably have things figured out (and yes, those additional samples can be power chords, sound effects, or whatever).

Accessorise Your SFZ Files

Several SFZ opcodes can help make drum sounds more expressive. You can add these lines for individual Regions (drums), or under a Group to affect all Regions that follow the Group. For a reference on SFZ, see www.sfzformat.com/legacy. Here are my favourite pitch change options.

  • transpose changes pitch in semitones. For example, transpose=-4 gives a deeper snare sound. The range is -127 to +127 semitones.
  • pitch_veltrack lets pitch track velocity. A value of 100 means that at maximum velocity, the sound is 100 cents higher in pitch. The range is -9600 to 9600 cents.
  • pitch_random introduces random pitch changes around the initial pitch; these changes can go positive or negative. The range is 0 to 9600 cents. Small values, like 20-50, add a little variety, but try some excessive values — sometimes the effect is cool.

SD3 also responds to filter changes. Making a sound brighter with higher velocities can help give the ‘vibe’ of multisamples when you have only a single sample available. To test out different velocities, in the Drum Kit graphic, click on the lowest part of a drum to hear the lowest velocity, and the highest part for the highest velocity.

  • fil_type chooses the filter type and number of poles. My go-to choices are one- or two-pole low-pass filters (lpf_1p or lpf_2p respectively).
  • cutoff specifies the initial frequency in Hz (around 500 works well for a lot of drum samples).
  • fil_veltrack ties the filter cutoff to velocity over a range of ±9600 cents. A value of 5000 generally does the job for something like a snare hit.

Here’s an example of the syntax for these options.

<region>

sample=Carribeats\snap snare harder.aif

key=38

//pitch parameters

transpose=-3

pitch_veltrack=50

pitch_random=20

//filter parameters

fil_type=lpf_2p

cutoff=500

fil_veltrack=5000

After creating the individual instruments, go to SD3’s Drum field in the lower left, and load pads with the SFZ files you created. Finally, save your masterpiece as a Kit — mission accomplished!