Sunday, November 16, 2014

How to Build a Multi-output Drum Kit in MOTU MachFive 3

Building a drum kit in a traditional sampler like MOTU MachFive 3 is a bit different from building a more typical sample-based instrument (like a sampled synthesizer) in a number of ways:
  • Drum sounds are usually "one-shots," where the whole sample plays all the way through instead of stopping the moment you release the key.
  • Drum kits often have "choke groups," where some of the sounds are mutually exclusive. This is most common with hi-hat sounds, where a closed-hat hit cuts short a longer open-hat sound.
  • To avoid the telltale "machine gun effect" with programmed drums, many kits use multiple recordings of the same instruments and play them back in a "round robin" fashion, so each hit sounds a little different from the last.
  • Since drums and other percussion sounds have very different tonal qualities and are frequently processed and EQed in very different ways, it's common to route individual drum sounds to their own audio channels for unique processing.
While MachFive is a very capable and powerful instrument, its deeply-layered interface and lack of electronic documentation or other online resources can make it difficult for a new user to figure out how to pull all of the above elements together to make a full-featured drum kit. I'm going to walk you through the process of building a kit that meets all of the stated requirements.

As an added bonus, you'll be able to use this knowledge to get the most out of third-party drum-based instuments, such as UVI's excellent BeatBox Anthology.

The kit we are going to build.
For the purposes of illustration, I recorded some drum samples and uploaded them for you to use as you work through the tutorial. I also included a short MIDI clip that you can use to check your work.

At the very bottom of this post you'll also find the video tutorial I recorded to supplement this walkthrough.

I've broken this process into two parts. First we'll build a new kit from scratch, and once that's all done we'll set the kit up for multi-output use.


  1. Download the sample pack I put together for this tutorial and unzip it.
  2. Launch MachFive. I like to run it as a standalone for this part (just because it's quicker than loading your DAW first), but you can open it as a plugin if you like.
  3. Click the Wrench icon in the top section of the MachFive interface and go to Preferences > General. Make sure One Shot is checked for Sample drag’n’drop mode, then close the preferences box.
  4. Select an Empty part in the Parts tab of the sidebar.
  5. Use the Browse tab of the sidebar to locate the tutorial samples that you unzipped earlier.
  6. In the main MachFive window, select the Edit view and make sure that at least the Oscillators, Keygroup Editor, and Edit sections are displayed.
  7. Drag the M5 Kick sample to the C1 key on the virtual keyboard in the Keygroup Editor. This will create your program’s first layer, keygroup, and oscillator. Your keygroup will have a 1-note range and contain a single SAMPLE oscillator that contains the kick sample.

    You should be able to play the C1 note on your MIDI controller (or touch it on the virtual keyboard) and hear the kick drum play back.
  8. Next drag the M5 Snare sample onto the D1 note of the virtual keyboard. This will add a new keygroup and oscillator for the snare sample to your existing program layer.
  9. In the Layers section of the List tab of the sidebar, click the + sign to add a new layer.
  10. Rename the layers by double-clicking their names and then entering a new one. I named the first layer Main Drums and the second layer Hi Hats.
  11. Click the layer that you just created so that it is the only one highlighted in the Layers list. You’ll notice that your Kick and Snare keygroups are temporarily hidden in the Keygroups section of the main window.

    You can highlight all layers at once by clicking the gray area underneath the last layer. If you click the gray area again, all layers will be deselected/hidden. Just select a layer and then click the gray area again to display all layers again.

    Only the empty Hi Hats layer is selected.
  12. Back on the Browse tab of the sidebar, drag the M5 Closed Hat sample to F#1 and the M5 Open Hat sample to A#1. Your Hi Hats layer now has two keygroups, one for each sample.

    Try playing the samples with your MIDI controller. You’ll find that you can play both hi hat sounds at the same time, which usually isn’t desirable for hi hat sounds. We’re going to fix that next.
  13. Back on the List tab, with the Hi Hats layer selected, locate the ex. group column in the Keygroups section of the sidebar. You might have to scroll to see it. If you can’t find the column, right-click any one of the column headers and then check ex. group in the shortcut menu that appears.

    Once you can see the ex. group column, set the ex. group value for both of the hi-hat keygroups to 1. (You can change the value by dragging your mouse vertically over the numbers, or double-clicking the numbers and entering the value from the keyboard.) Setting ex. group to a non-zero value creates a “choke group” for the hi-hats, where playing one keygroup will cut the other short, just like a real hi-hat.

    After setting the ex. group values to 1, try playing the Hi Hat sounds again. You should find that the two Hi Hat samples now cut each other off when triggered.

    We put the hi-hats on their own layer so that it is clear when you’re looking at the keygroup layout which keygroups are set up for exclusivity (since layers can have different colors). It is not required to put them on separate layers, since exclusivity groups are a keygroup option.
  14. Back in the List view, select the Main Drums layer so that only it is visible, and then switch to the Browse tab.
  15. Click the first M5 Shaker sample in Browse tab, and then SHIFT+CLICK the last M5 Shaker sample, so that all eight samples are selected.
  16. While the files are selected hold down the ALT key while dropping them onto the A3 key of the virtual keyboard. This opens the Sample Drag’n’Drop menu.
  17. Because my shaker sample files are named a certain way, we can make use of MachFive’s built-in mapping methods when importing them into the program. Select NoteName RoundRobin under Mapping method, and Main Drums under Destination.

    When you click OK, MachFive creates a single keygroup, and adds a new Sample oscillator for each sample, automatically setting them up for round-robin play. (Try playing the A3 key on your MIDI controller. You should hear a different shaker sound each time you hit it.)

    If you select any of the newly-created oscillators, you can see that Cycle is selected in the OSC(S) portion of the Edit section. The other oscillators for the Kick and Snare keygroups are set to All, which means that all samples in that keygroup play at once (which is fine, since there's only one sample per kegroup for those sounds in this kit).
  18. At this point, if you look in the List tab of the sidebar, you should see that there are two layers and five keygroups.
  19. To save your kit, click the Wrench icon in the main section of MachFive and select Save Program and Samples. This will save an M5P file and all the imported samples into the selected location. The samples will be stored in a subfolder inside the folder where the M5P is saved.


In this section we’re going to use MachFive in multi-output mode and assign different drum sounds to different audio tracks in a DAW for individual processing. I’m going to use Steinberg Cubase 7.5 here, but the general steps should work in most DAWs.
  1. Start up your DAW and load MachFive3 as a plugin. In Cubase 7.5, I like to add it as a “rack instrument” in the VST Instruments dialog.

    On some platforms and plugin formats, the MachFive plugin might come in different versions. If you have more than one choice, make sure to load the “Multi-output” version. On 64-bit Windows, there is only one MachFive plugin, and it does support multi-output.
  2. Add a MIDI track to your DAW that points to your MachFive instance. In Cubase you have the option to create a new MIDI track when you load a plugin. If you haven’t done that already just add the new MIDI track and direct its output to MachFive’s MIDI in. Take note of the channel you set here.
  3. Configure your DAW so that it can receive four additional stereo outputs from MachFive. In Cubase you do this by clicking MachFive3’s Activate Output button in the VST Instruments dialog and then clicking on the outputs you wish to receive. As you can see here, I have enabled four additional stereo channels in addition to the plugin’s main stereo out.
  4. Inside MachFive, select the part with the same MIDI channel as the MIDI track you created in your DAW. (In this case, A1.) If you don’t already have an appropriate part here, you can add one with the + button, and select the correct channel from the drop-down list.
  5. Double-click the “Empty” program name to open up the MachFive browser and locate the M5P program you saved in PART 1 above.

    Click Close in the Browse dialog once the program is loaded. Try triggering some notes in the kit with your MIDI controller to make sure everything’s working so far.

  6. In the List tab on the sidebar, make sure all layers are selected so you can see all of the keygroups listed.
  7. Locate the output column in the keygroups section. You will probably have to scroll to see it.

    If you can’t find the output column, it may be hidden. To show it, right-click one of the column headers under Keygroups and then check output in the shortcut menu that appears. You should now be able to scroll and see that column.
  8. Click the gray area beneath the keygroups to deselect them. (If you don’t do this, changing any field in the Keygroups section will apply to all keygroups in the program.) With the groups deselected, right-click the Output value for each keygroup, and set it accordingly:

    Kick: Out 2, Snare: Out 3, Hi Hats (both keygroups): Out 4, Shaker: Out 5

    In MachFive, only part outputs can be assigned to anything other than Main Out. MachFive’s Aux buses, which are typically used for send effects, always go to Main Out, and can’t be reassigned. For this reason, when you’re building a multi-output program, you should only use the individual output channels, not the one labeled Main Out. Otherwise you might end up mixing that keygroup’s output signal with effects playing through MachFive’s main outs.
  9. You might want to use wrench > Save Program And Samples As to save a separate multi-output version of your kit.
  10. Back in your DAW, if you have your MachFive MIDI track armed, you should be able to trigger different notes in your kit and hear them play back through different input channels in your DAW. In Cubase, you can expand MachFive3’s folder under VST Instruments to see the different channels. I have renamed my channels here to indicate which instrument and MachFive output they represent.
  11. Now that all instruments are coming in via their own audio channels, you can add insert effects and apply EQ to each incoming channel independently. I took this snapshot while playing a MIDI clip on my kit. You can see that each sound group is coming in on its own channel and I have processing plugins on each channel.



I wrote this little track to serve as intro and bed music for my tutorial video. It's not really a full-on completed composition, but you can hear what I've got so far here:


cbird1057 said...

Thank you thank you thank you for this great post.

I could NOT find the ex. group area!

<<< If you can’t find the column, right-click any one of the column headers and then check ex. group in the shortcut menu that appears. >>>

MachFive has the strangest UI I've ever seen: huge blank areas and tiny mini-menus squished into obscure corners. Your post helped me find the world's most hidden shortcut menu.


Ultimate Outsider said...

Yeah, when I first figured it out (it's not mentioned anywhere in the manual, as far as I could tell), I was like, "How is anyone supposed to know this?" That's the whole reason I decided to do the post. Glad it worked for you!

Tanisha Chowdhury said...

Thanks a lot for this post.Hi everybody,,,I'm a student & my hobby is playing Drum.Last week i've bought a Drum from