DigiFreq: Home | MusicTechShop | Downloads (Free Music Software) | Videos | Music | Tips | Articles | Newsletter (FREE) | Deals | Issues | Recommend | News | Reviews | Discuss (Forums) | Contest | RSS Feed

Scott R. Garrigus' DigiFreq
only search DigiFreq
SRG Sites > DigiFreq > Articles > MIDI & Digital Audio Music Sequencer Techniques (Part 2)
*** Win FREE music recording software and hardware... Click Here! ***
MIDI & Digital Audio Music Sequencer Techniques (Part 2)
Written by Scott R. Garrigus - 2005, Scott R. Garrigus. All Rights Reserved.
This article is a continuation of Sequencer Techniques (Part 1).

In addition to responding to the usual MIDI controller messages such as pan, volume, and pitch bend, most synthesizer modules have a number of "hidden" parameters that can be of great use in adding expression to your tunes. The way to get to these parameters is through the use of Non-Registered Parameter Numbers (NRPNs). As an example, let's take a look at the Roland Sound Canvas. This modest module responds to no less than 13 different NRPNs (see Table 1) that allow you to control things like the attack, decay, and release of a patch's envelope, as well as the cutoff frequency and resonance. As a matter of fact, by manipulating these parameters you can create brand new timbres based on the existing sound set, which is otherwise uneditable.

Table 1: NRPN's for the Roland Sound Canvas
Param. Control 98 Control 99 Control 6
Vibrato Rate 8 1 14-114
Vibrato Depth 9 1 14-114
Vibrato Delay 10 1 14-114
Cutoff Frequency 32 1 14-114
Resonance 33 1 14-114
Attack Time 99 1 14-114
Decay Time 100 1 14-114
Release Time 102 1 14-114
Drum Pitch Drum#0-127 24 0-127
Drum TVA Drum#0-127 26 0-127
Drum Pan Drum#0-127 28 0-127
Drum Reverb Drum#0-127 29 0-127
Drum Chorus Drum#0-127 30 0-127

For instance, let's say I wanted to change my basic piano track into something with more of a string feeling but keeping the piano timbre. I would open the event list for that track and insert nine new controller messages (see Table 2). The first three messages would set a new envelope attack, the next three would set the decay, and the last three would set the release. Controllers 98 (Non- Registered Parameter LSB) and 99 (Non-Registered Parameter MSB) are used to set the type of parameter to be changed (in this case envelope attack, decay, and release), and controller 6 (Data Entry MSB) is used to set the value of each selected parameter. All of the settings for each of these controllers depend on what MIDI device you're using them with. Have a look in your synthesizer manual and you might be surprised just how much control you have over that little black box.

Table 2: NRPN Example
Message 1 - Control: 98 Value: 99
Message 2 - Control: 99 Value: 1
Message 3 - Control: 6 Value: 70
Message 4 - Control: 98 Value: 100
Message 5 - Control: 99 Value: 1
Message 6 - Control: 6 Value: 100
Message 7 - Control: 98 Value: 101
Message 8 - Control: 99 Value: 1
Message 9 - Control: 6 Value: 70

A couple things to keep in mind when using NRPNs - send any patch changes down the wire beforehand otherwise you may end up with a different sound than what you were aiming for - although this could result in a pleasant surprise. The other thing to remember is that controller 6 is dynamic, meaning it changes the value of whatever was the last parameter that was set with controllers 98 and 99. In the above example, if later on in the track I sent another controller 6 message, this would change the envelope release since that was the last set parameter. In order to change either the attack or decay, I'd have to resend the appropriate values for controllers 98 and 99.

Another exciting aspect about NRPNs is that they can be sent in real-time, just like any other controller messages. What this means to you is that depending on your synthesizer module, you can now dynamically change the characteristics of patches or any other supported parameters and record those changes into your mix. In the case of the Roland Sound Canvas, you could easily add expressiveness to your sounds by varying their cutoff frequencies and resonance. In addition, you can dynamically vary the pan position, volume and pitch of the individual drums in a set. That could make for some very cool percussion parts.

Of course, typing in all these parameters would be a bit tedious. A better way would be to setup a special mixing template for just this sort of task. Most high-end sequencers provide the capability for you to create your own virtual mixing controller. In Steinberg Cubase the feature is called the MIDI Mixer. In Cakewalk Pro Audio and Sonar it's called StudioWare. Everyone has a different name for it but the feature is still the same. If you're lucky, your software will come with a pre-made template for your MIDI instrument. Cakewalk has a Roland GS template for use with a Sound Canvas but it's missing any drum parameter controls.

If I wanted to add individual drum panning to the existing Cakewalk Roland GS template, I would open a new copy of the template into my existing project. I'd then add a new Cluster widget to hold the new set of controls. Then I would add a slider object to represent the drum instrument number. From there, I'd set the necessary properties for the slider including Label (Drum Number), Alias (Drum_Number), Automate in Track (AutoTrack), Range (0-Min, 127-Max), Primary Action (Kind: Controller, Channel: Part, Number: 98, Value: Drum_Number), and Return Action (Kind: Controller, Channel: Part, Number: 99, Value: 28).

The Alias acts as sort of a program variable which is then used in the Value setting of the Primary Action property to tell Cakewalk to use the value of the on-screen slider (0-127 set in the Range property) as the MIDI controller value. In contrast, the Value setting of the Return Action is permanently at 28 because MIDI controller 99 is a constant value in this case. The Label is just an on-screen text name for the slider and the Automate in Track property just tells Cakewalk which track to record the automation data from this slider to during mixdown. In this case, AutoTrack automatically sets this property to whatever the currently selected track may be.

To complete the drum panning controls, I would also need to insert a Knob widget to represent the drum panning value. With this new control set I could now easily select any of the Sound Canvas drum instruments by moving the slider to the appropriate number and then pan the instrument using the knob - recording any changes to a designated track. Of course this whole procedure would be a bit different in another sequencing program but the concept is still the same. Once you learn how to create your own virtual mixer templates, the possibilities are endless.

When inspiration hits, you don't want to waste your time fiddling with sequencer setup parameters. You want to be able to start your software and get right to work. If you create a template file that contains everything set just the way you like it, you'll have a much better chance of getting that cool lick down before you forget it. Here's what you need to do to create the ultimate project template...

1. Use the File > New command to create a blank project. Then setup the track display with all of the instruments in your studio. Set the name, input, output, channel, bank, patch, volume, pan, etc. for each track.
2. Go through the rest of the program and set things up exactly the way you like them. That includes window positions, zoom, and even the last tool used. In Cakewalk Pro Audio and Sonar other parameters like timebase, file information and comments, tempo settings, meter and key settings, clock and synchronization information, and more can all be saved.
3. If your software has a built-in System Exclusive librarian, fill it up with all of your favorite Sysex macros, so that you have them readily available. This could be anything from a favorite bank of patches for one of your synthesizer modules or even basic messages like: Roland GS Reset (F0 41 10 42 12 40 00 7F 00 41 F7) and Yamaha XG Reset (F0 43 10 4C 00 00 7E 00 F7). If your software doesn't have a Sysex librarian feature, then just designate a special track for Sysex messages and save each macro as a separate sequence or clip. Be sure to keep that track muted so its data won't be transmitted during playback. When you need to use a certain Sysex macro, just drag-and-drop it to an open track.
4. Taking the Sysex track idea one step further, you can also create special tracks for your favorite MIDI controller macros. A MIDI volume track can hold different sets of volume changes such as fade in and fade out segments for a number of bars. A MIDI pan track can hold different sets of pan changes. Some interesting ones include a left to right sweep, and right to left sweep, and a center to right to left back to center sweep. In addition, you can create tracks for your favorite drum patterns or sequenced melodic patterns as well. And if your sequencer allows you to store MIDI and audio data together in the same file, you can set up tracks containing some of your favorite digital audio samples and loops too. This way you have all the tools you need right at your disposal for quick and easy drag-and-drop use.
5. The final step is to save your file with all of its settings so that when you open it again, everything will be perfect for your next session. If your sequencer supports it, you can also have the template file load automatically every time you load the software. For Steinberg Cubase on the Mac, name the file Autoload. For Steinberg Cubase on the PC, name the file DEF.ALL. And for Cakewalk Pro Audio and Sonar, save the project as a template file called NORMAL.TPL.

Today's digital audio sequencers provide you with a lot of power to accomplish your musical goals. Many times you can achieve the same results in a number of different ways. The tips we've covered here are mainly productivity boosters and techniques you might not have otherwise thought about.

One final word of advice is to go out and buy yourself a small binder to use as a studio journal. As you work on different projects, take a few moments to jot down any new techniques you may come up with in the process. It's also a good idea to reference what you read about in publications (like DigiFreq ;-), so that you can easily go back and find the issue and page number where you initially saw it. Not only will this save you time on future projects, but eventually you'll have a nice collection of information to refer to.

While technology shouldn't govern the way you make your music, it can certainly help you create the songs of your dreams. The more you learn about how to utilize the tools at hand, the easier the process will be.

For more information:
* Sequencer Techniques (Part 1)
* Power! Books

To stay informed about new articles, be sure to click here to sign up for the DigiFreq Music Technology Newsletter. It's free!
Sharesubmit to reddit
[Back to the Articles Index]
Free music technology newsletter (E-mail):   [About Your Privacy]

DigiFreq: Home | RSS Feed | MusicTechShop | Downloads (Free Music Software) | Videos | Music | Tips |
Articles | Newsletter (FREE) | Deals | Issues | Recommend | News | Reviews | Discuss (Forums) | Contest

SRG Sites: SRG | Power Books | NewTechReview

Copyright 2018 by Scott R. Garrigus. All Rights Reserved. --- Privacy Policy

DigiFreq is for informational purposes only. - Disclosure Statement