Welcome to No Limit Sound Productions

Company Founded
2005
Overview

Our services include Sound Engineering, Audio Post-Production, System Upgrades and Equipment Consulting.
Mission
Our mission is to provide excellent quality and service to our customers. We do customized service.

Monday, October 31, 2022

VCA OK

I’ve long wished Steinberg would implement true VCA–style automation in Cubase — it is, for me, a critical omission, and it’s one that’s nearly led me to jump ship a couple of times. Sure, Cubase’s grouping, routing and track–linking facilities are better than they ever have been, but it just doesn’t offer anything quite like automatable VCA master faders. What do VCA masters offer that standard automation doesn’t? For one, you can ‘group’ any channels together, even if they’re routed to different outputs. For another, each channel can be a member of multiple VCA groups at the same time which, again, isn’t possible, at least not without implausible aux–send setups to multiple groups.

Outside Assistance

Help is at hand, though, in the form of a freeware plug–in by Blue Cat called BC Gain. The plug–in comes in three versions, bundled together in their Gain Suite (www.bluecataudio.com/Products/Product_GainSuite), and it enables you, with a little lateral thinking, to add VCA groups and master faders to pretty much any DAW that lacks them. Unlike most ‘gainer’ plug–ins, different instances of BC Gain can be assigned to one (or none) of nine groups, and each instance can be controlled via MIDI. When you change the gain on one instance of the plug–in in a group, all other instances move accordingly. It doesn’t take a great leap of the imagination to realise that you could place instances in any insert slot you wish, assign them to a group, and then create a dedicated MIDI track whose fader may be used to control the group level.

Basic Setup

Although simple in concept, my experiments suggested that there are good ways and less good ways to implement this system in Cubase. Let me take you, step by step, through the way I find works best.

1. Open a new Cubase project and create a handful of audio tracks. In the example, I’ve made four stereo and four mono tracks.Use a ‘spare’ audio, FX or Group channel to host your ‘VCA Master’ instances of BC Gain — but be sure to choose the stereo version of the plug‑in.

2. Create one more track. It can be an audio, Group or FX channel. It doesn’t really matter which, but you may find that it’s more easily identifiable in the mixer if you make it a Group or FX Channel, as these will appear to the right of your mixer by default. Call this channel ‘VCA Master’.

3. Now, create a MIDI channel and label it ‘VCA Group A’. This channel’s fader will become your VCA Group A master fader.

We now have all the channels we need to test this out, so let’s put some sound through that first group of audio channels. You could import or record some audio, of course, but you can alternatively use Cubase’s Test Generator plug–in, just to get the level meters showing something. Now to wire all this mess together so it works as a VCA system...

1. Insert an instance of the BC Gain plug–in in the first insert slot of your VCA Master channel. Whether the channel you created is mono or stereo doesn’t matter, but be sure to choose the stereo version of BC Gain (there are also mono and dual–mono versions), as I was unable to link mono and stereo plug–ins in a single group successfully.

2. Click both the cog (settings) and chain (link) icons at the top left of the plug–in to reveal some hidden features. Click the pointer that just appeared under the gain knob and select ‘settings’ to bring up the MIDI control dialogue. Make sure MIDI Enabled is ticked, and click the MIDI Learn button. In the Group section of the plug–in select ‘A’.

3. On your MIDI channel, VCA Group A, set the output destination to the gain plug–in on your VCA Master channel. It should be easy to identify in the drop–down list. Waggle the fader on your VCA Group A MIDI channel and the plug–in’s gain control should respond. If the Learn function isn’t working properly, you might need to set the plug–in to receive on the correct MIDI channel, which is listed on the MIDI channel in the Routing section of the Cubase Mixer.

4. Insert another BC Gain stereo plug–in instance on your next audio channel. Click the link button and assign the plug–in to Group A. There’s no need to do any MIDI assigning this time. Just waggle your MIDI fader again, and you should see the control of both instances reacting to your fader movements.

Congratulations: you just used a VCA Master channel to control the level of two separate channels in Cubase! But we can take things a little further...

VCA OK1. In the MixConsole, Alt–drag and drop the second plug–in instance to copy it to any other channels you want to be part of the same VCA group. All of the plug-in’s settings will be copied, including the Group assignment. In this way you can quickly assign several channels to a single VCA group.

2. Now create a second VCA Master fader in exactly the same way —ie. create a new MIDI channel and call it VCA Group B.

3. Put another instance of BC Gain in the VCA Master channel’s second insert slot, set it up to respond to your second MIDI channel fader, and assign the plug–in to Group B.

4. Then insert yet another instance of one of your audio channels — it can even be in another slot on the same channel as before. Change the routing to group B and Alt–drag to create new instances on other channels. All these instances will now respond to your second MIDI Fader.

It’s much less hassle the second time around! Note that by placing multiple instances on a channel, that channel’s level can be influenced by more than one VCA Master Fader at a time. So far, so good, then — it works. But there are a few issues we need to overcome.

Overcoming Obstacles

First, although a single channel can be assigned to multiple VCA groups (as just described), you’re limited by the number of insert slots on each channel, which is fixed at six pre–fader and two post–fader. There’s no elegant way around this: if you need more slots, you’ll either have to route the channel in question to another channel and use the inserts on that one (you can always hide the second channel if you want), or use a third–party plug–in chainer such as DDMF Metaplugin.

Link the VCA Master instances of BC Gain to a  MIDI channel’s fader, either using MIDI Learn, or programming the values by hand. Setting the plug–in’s Control Max value to +20.2dB results in a  more useful gain range and near–unity position.Link the VCA Master instances of BC Gain to a MIDI channel’s fader, either using MIDI Learn, or programming the values by hand. Setting the plug–in’s Control Max value to +20.2dB results in a more useful gain range and near–unity position.Second, you might have noticed that the MIDI protocol’s 0–127 settings are causing a couple of issues: by default, the ‘zero’ point (ie. no gain, no attenuation) lies somewhere in between values 63 and 64 — your plug–in’s gain control can be set to +0.47 or –0.47 dB, but not unity. There’s no getting around the resolution of the MIDI fader itself, but you can tweak how the BC Gain plug–in responds. I found that restricting the maximum gain to 20.2dB (leaving the minimum at –60) gave a more useful control range that placed an almost no boost/attenuation position (–0.01dB) of the MIDI channel fader at about the same place (MIDI value 95) as unity gain on the regular audio channel faders, leaving you with around 20dB of gain and 60dB of attenuation available. What’s more, if you make sure you create and set up all of your VCA Master instances of the BC Gain plug–in first, and only add new instances as you need them for each channel, the grouping will be relative — so as it loads at unity by default, you’ll always be able to return to that value by placing your MIDI fader at 95. Neat!

Despite the slight (–0.01dB) offset on the Master instance, the knob on the channel instance can be set precisely to 0.00dB gain/attenuation. Assigning the channel instance on the same group as the master means it, and any other instances in the group, will be controlled by your MIDI Fader.Despite the slight (–0.01dB) offset on the Master instance, the knob on the channel instance can be set precisely to 0.00dB gain/attenuation. Assigning the channel instance on the same group as the master means it, and any other instances in the group, will be controlled by your MIDI Fader.You can use the Visibility controls of Cubase’s second (or third) Mixer to create a  dedicated VCA mixer, which you can assign its own shortcut key (‘V’ for VCA, perhaps?).You can use the Visibility controls of Cubase’s second (or third) Mixer to create a dedicated VCA mixer, which you can assign its own shortcut key (‘V’ for VCA, perhaps?).With all these extra channels and instances, your project can soon start to feel very cluttered. You could, if you wished, abandon the MIDI faders and use your VCA Master channel’s Quick Controls to govern the VCA group master levels. Personally, I prefer to have the option of having the VCA faders in the MixConsole. You can take advantage of Cubase’s multiple mixers, though. Go to Devices/MixConsole 2 (you can assign a keyboard shortcut to this). Use the mixer’s Visibility function (on the mixer’s left, or revealed using the mixer’s Setup Window Layout icon, top left, if hidden) to hide all channels except those you wish to see. This doesn’t affect what you see on the main MixConsole, but on MixConsole 2 you can see only your dedicated VCA controls. In the Project page, you can hide all these MIDI channels inside a collapsed Folder track if you wish.

And there we have it. While it may not be the most elegant VCA system ever implemented — you can’t merge the VCA automation with the track automation, as in Pro Tools, for example — it’s free, it solves a genuine problem many users have with Cubase and Nuendo, it’s both easy to configure and reliable in use, and you can save the setup as a project template, in which assigning a channel to a VCA group is as easy as inserting a plug–in and clicking a letter. I’ve created a template project with all the VCA Master side of things set up, so I just have to insert an instance on a channel when required. As luck would have it the ‘V’ key isn’t assigned to a shortcut by default, so I was able to assign that to MixConsole 2, which I’d set up to show only the VCA faders — you can find it along with a short demonstration video on the SOS web site at http://sosm.ag/oct14-cubase-media, though you may need to set up your own keyboard shortcut for the mixer, as these are stored in your own Cubase preferences. 



Published October 2014

Friday, October 28, 2022

Get Glitched

Cubase has all the tools you need to add vocal glitching effects to your pop or EDM tracks.

Listen to almost any contemporary pop music, particularly electronic dance music, and you’ll notice just how often vocal sampling techniques are used. The samples can serve all sorts of useful purposes, but they’re most often used as ‘ear candy’ — effects to keep the listener engaged, and to create rhythmic interest. This idea has been around for as long as sampling itself, of course, and you can do a lot of it with nothing more than judicious audio editing in Cubase’s Project window. But Cubase offers all sorts of other useful tools which can get you where you want to be rather more quickly.

The Special Agent

I find that the fastest method is to use Cubase’s bundled drum machine, Groove Agent (SE4 or ONE). This may have been designed for working with drum sounds, but it allows you to load any samples you wish and associate them with individual drum pads — so there’s nothing to stop you using it to trigger vocal phrases.

The Sample Editor’s Hitpoint system can be used to divide vocal loops, not just drum loops.The Sample Editor’s Hitpoint system can be used to divide vocal loops, not just drum loops.Groove Agent also allows you to import audio slices that you’ve created from a single audio event using the hitpoint system in Cubase’s Sample Editor, and to map those slices onto a continuous series of drum pads. Again, this feature is primarily intended for slicing an audio drum loop into individual hits, but although the slicing process can require a little more hands-on attention for vocals, the same approach can be used to map individual words or syllables from a vocal part onto Groove Agent’s pads pretty quickly. Once you’ve done that, you have control of the vocal elements at your fingertips — quite literally, if they’re sitting on your MIDI keyboard or drum pad!

There are two stages to this process: first, the mapping of your vocal part to Groove Agent’s pads; and second, the creative exploitation of your samples in a musical context.

Master Your Vocal Chops

Pick a suitable phrase for this ‘chop shop’ treatment. You don’t have to tackle the whole vocal recording, so just start with a key phrase or hook that has a bit of character. If you’ve not done so already, perform any routine editing that you might usually do in terms of tightening the timing or pitching, so that you have a ‘finished’ phrase, ready to be given the chop.

Once happy with your selection, open the phrase in the Sample Editor, select the Hitpoints tab, and then adjust the Threshold setting so that each obvious transient (typically the start of each word) has its own hitpoint. This will require more tweaks than when working with a drum loop, as drum transients tend to be quite obvious, and thus easy for the detection algorithm to identify. With vocals more than any other source, that tends not to be the case.

The odds are that you’ll need to audition each possible slice between the hitpoints to verify that it’s correctly positioned, so start by activating the Edit Hitpoint option (the small arrowhead icon). Now, when you hover your mouse over an audio slice, the cursor will become a speaker icon — and you can click and hold to audition the slice.

Having created slices from your hitpoints, you can select them in the Audio Part Editor and then drag and drop to Groove Agent. Having created slices from your hitpoints, you can select them in the Audio Part Editor and then drag and drop to Groove Agent.Your aim is to ensure there’s a hitpoint exactly at the start of each word in the phrase. The automatic detection should work well for any obviously separate words, but manual editing will be required where words run into one another, or where hitpoints are placed at each syllable within a word. In the latter case, it’s easier when you come to play with the phrase if you remove the additional hitpoints within the word, but slicing to syllables can also create some useful creative options. You could always repeat this process later if you decide you want to include some individual syllables.

The hitpoints are easy to move, add and disable, so your tweaks needn’t take too long, but do make sure that you spend enough time on this because the more precisely the hitpoints are placed, the easier it will be for you to play the slices via Groove Agent. As you move across a hitpoint at the top of the Sample Editor window, the cursor will change to a double-headed arrow, allowing you to move a hitpoint by clicking and dragging. Holding the Alt (Windows) or Option (Mac) key will bring up the Add Hitpoint tool, and to disable a hitpoint just hover over the hitpoint line and press Shift. With your hitpoints placed correctly, select the Create Slices option in the Sample Editor’s Hitpoints tab. An audio Part will replace the original Audio Event on your audio track. Inside this Part is an Audio Event for each slice that’s defined in the Sample Editor.

Luxury Pad

You’re now ready to get these slices into Groove Agent (SE4 or ONE), so open an instance of this instrument via the VST Instruments rack, link a MIDI track with it, and double-click on your Audio Part to open it in the Audio Part Editor. Select one slice with the mouse and hit Command+A/Ctrl+A (Mac/Windows) to select all slices automatically. All you now need to do is drag the selected slices to an empty pad in Groove Agent and, as you release the mouse, each slice will be placed on a separate empty pad. The slices should be assigned in order to adjacent pads, each with its own MIDI note.

Get Creative

That’s the technical stage completed, so now it’s time for the fun part. If all you want to do is use MIDI to trigger your new vocal samples, just select the MIDI track that’s linked to Groove Agent and start playing. Even at this level, there’s plenty of fun to be had. You can create all the usual stutter effects, and experiment with different combinations of words. Indeed, picking a few key words and repeating them in a rhythmic fashion is a good basic option if you just want to get a feel for things. But you’d be missing out on some of the more ear-catching options that Groove Agent SE4 or Groove Agent ONE offer you, and can start to sound a bit tired quite quickly. So here are a few suggestions to help you start making more interesting effects...

Once placed into Groove Agent, each slice appears on an individual drum pad and can be edited as a  separate sample. Once placed into Groove Agent, each slice appears on an individual drum pad and can be edited as a separate sample.Both Groove Agent SE4 and ONE can generate a MIDI sequence that you can copy to the Project window. You can use that to play back the pads in sequence, thus reassembling your original vocal part. Why? Well, you can edit this MIDI sequence to do all sorts of interesting things with the timing and sequence of the vocal part. One important point to note, though, is that you must set Groove Agent’s tempo to match the Cubase project tempo before you generate the MIDI sequence. This ensures you get perfect sync when the MIDI is played, and if you fail to do so it can cause a lot of head-scratching!

If you also have MIDI data for your track’s drum part — as you almost always will for pop or EDM tracks — try taking some key sounds from your vocal line and use the MIDI timing of the drum part to trigger them. The effect is rather like creating a vocal-sample beatbox. It takes a little experimentation to identify the vocal samples that will work best for snare, kick and hi-hat replacements — you only need to trigger them for a short time for a rhythmic effect like this, so not all sounds are suitable — but a very effective trick is to drop out the main drum parts for a bar, substitute in your ‘vocal drums’, and trigger them using the same MIDI rhythm.

In Groove Agent SE4, the Slice window includes a tiny ‘Drag MIDI Phrase To Host Sequencer’ button (bottom right). Grove Agent ONE has a  similar function.In Groove Agent SE4, the Slice window includes a tiny ‘Drag MIDI Phrase To Host Sequencer’ button (bottom right). Grove Agent ONE has a similar function.If you have some spare pads on Groove Agent, you can copy some of the samples to empty pads, but this time play around with their settings, such as tuning, pan and reverse. Drop these into your rhythmic vocals phrases for additional variation.

Groove Agent has lots of automation options so you can apply real-time control to parameters such as pan and pitch in your new vocal sequences. Groove Agent has lots of automation options so you can apply real-time control to parameters such as pan and pitch in your new vocal sequences.Groove Agent allows you to automate a number of playback controls on a per-pad basis so, next, try building a MIDI phrase from just two or three key words, and then add automation data for things such as pan or pitch to add some additional effects. It’s really easy to find interesting effects this way if you have a suitable hardware controller to generate the automation data.

Finally, having created your chopped and glitchy alternative vocal lines, using any of the approaches suggested above, solo the MIDI track and use the Export option to render this new vocal as an audio event. Then, open the audio and experiment with VariAudio to create some pitch-based effects. These can be subtle (essentially a shift in ‘melody’) or more extreme (obvious ear-candy). The difference with this approach is that any pitch shifting doesn’t also slow down/speed up sample playback and VariAudio attempts to preserve the formants, resulting in a more natural sound.

These are, of course, just suggestions; once you have your vocals sitting in Groove Agent (SE4 or ONE) you can let your experimental side lead you on. Rhythmic, stutter, chopped or glitchy; vocal effect clichés are all within your reach.

Audio Demo

I’ve placed an audio example on the SOS web site. It’s a short track based around an eight-bar vocal phrase. You hear it in its original form first, with a simple backing track to provide a little musical context. There are five further eight-bar sections, each separated from the previous one by a one-bar drum loop, in which I’ve applied the various creative options described in the main text. You can, of course, take things much further than I have here, but the examples should provide ample illustration of what can be achieved.

sosm.ag/nov14-cubase-media 



Published November 2014

Wednesday, October 26, 2022

Cubase's Track Lanes & Track Versions

Cubase’s Track Lanes system is great for speedy comping, but Track Versions brings plenty more to the party...

In previous workshops, I took you through the process for recording, and ‘comping’ both lead vocals (SOS August 2011) and multi-track drum recordings (SOS February 2012) using Cubase’s Track Lanes facility. But Cubase 7.5 introduced a feature called Track Versions, which our reviewer Mark Wherry likened very favourably to Pro Tools’ Playlists. It makes the recording and management of multiple takes from a multiple microphone configuration much more efficient in some scenarios. Yet both Track Lanes and the newer Track Versions have their uses.

Comping Compared

Whether working with MIDI or audio, if you’re dealing with a single performer and working on a single section of a song at a time (an individual verse, chorus or solo), the Track Lanes approach has its merits. The most obvious advantage is that, in cycle record mode, new lanes are created automatically. You can, therefore, let the performer cycle through the song section a number of times without interrupting the artist or any need to start and stop the recording between takes. And, as described in the August 2011 column, comping something like a lead vocal from a set of lanes is a perfectly manageable task.

Track Versions, on the other hand, doesn’t generate new versions in cycle recording mode automatically. Instead, if you want to record a new take, you must create a new (initially blank) ‘version’ prior to recording. This makes it more suitable for use with longer takes — perhaps capturing a number of whole performances from start to finish, from which you intend to comp the perfect version.

I used a  modest six-track drum recording to keep the example simple, but the more complex the recording, the more likely it is that Track Versions will be easier to work with than Track Lanes.I used a modest six-track drum recording to keep the example simple, but the more complex the recording, the more likely it is that Track Versions will be easier to work with than Track Lanes.New Track Versions can be created directly from the Track List. New Track Versions can be created directly from the Track List.When working with a multi-mic recording, particularly when you have lots of mics and lots of takes, I find Track Versions easier to work with in the Project window. Instead of having multiple lanes spread across multiple tracks, you see a much tidier ‘one Track Version at a time’ display. While you can still easily move between the different versions, and edit sections from them into a ‘master’ take, the more compact display format is less likely to leave you lost in an endless stream of takes and tracks.

Let’s walk through a multi-miked acoustic drum kit example and see how you’d use Track Versions for this. There are two key phases: first, recording the various takes, then building your ‘comp’ from those takes.

On The Take

The first part of the process is to capture your various takes on a number of audio tracks. This can be broken down into a number of simple steps:

1. Create the required number of audio tracks for the microphone configuration that you’re using, and configure your hardware audio inputs accordingly.

2. Place all these tracks in a Folder track and enable Group Editing for that folder (using the button with the two horizontal lines that turns orange once enabled).

3. Record your first take.

In the screenshot example, there are five mono tracks (including snare, kick and hi-hat) and a stereo track to capture some of the room ambience via a pair of mics set back from the kit. Note that, in this case, I have also created a Group Track to act as a stereo bus for the drums, and all the individual drum tracks have been routed to it. Group Editing means that any edits made to one of the tracks will be applied automatically to all tracks in the folder. This is essential for avoiding problems with phasing or mic spill that can manifest themselves if you attempt to mix and match audio from different mics in your final comp (for example, using the room mics from one take, but the kick, snare and hi-hat mics from another).

Take Two

To record a second take you need to create a new Track Version. You can do this in one of three ways: via the Project / Track Versions / New Version menu option; by hovering the mouse over any one of the track names in the Track List and selecting New Version from the drop-down menu located at the right-hand edge of the track name field; or by opening the Track Versions panel in the Inspector and clicking on the New Version button.

The Track Versions panel in the Inspector allows you to select and manage your Track Versions.The Track Versions panel in the Inspector allows you to select and manage your Track Versions.Once you do any of these things, the existing takes will ‘disappear’, but don’t worry — they’re just hidden and still exist! You’re now ready to record, and you can repeat the process as often as you need to until you have the takes you wish to work with.

Via the Inspector’s Track Versions tab, you can now see and select any of the takes (Versions) for playback, switching instantly between them. You can also rename, delete or duplicate a take using this panel.

Craft Your ‘Comp’

Having recorded your takes to different Track Versions, you’re ready to construct your ‘comp’ from the best bits of the individual takes. Again, this requires a number of steps.

First, find and select the Track Version you like best in general, and create a Duplicate Version via the Track Versions panel in the Inspector. This duplicate will become your final comped performance, so give it a meaningful name such as ‘Comp’ or ‘Master Take’.

Next, audition the various takes and identify the sections in other Track Versions that are better than the corresponding parts of your ‘best’ take. For example, if bars 11-14 in Track Version 3 are better than those in your ‘master take’, select Track Version 3 and, using the Range Selection tool (an appropriate Snap setting can make selection easier) select the range you wish to copy. You only need select the range on one track because, rather wonderfully, the same range will then be selected on all tracks in the Folder automatically. Once selected, using either the Edit menu or keyboard commands (Cmd/Ctrl+C), copy this selection.

With Group Editing enabled for a  Folder, any edits you apply to one track are applied automatically to the others. With Group Editing enabled for a Folder, any edits you apply to one track are applied automatically to the others.You can then switch back to your ‘master take’. By default, the same range used when copying is already selected (you can, though, select a different range if you wish to paste the new audio at a different position) and then paste the copied section (again, via the Edit menu or Cmd/Ctrl+V). The standard Undo options can be used if you need to step back in the editing process for any reason.

Repeat the copy/paste process as often as is required to compile your finished ‘performance’. And if you decide that you want to start again, you can delete the master take you have created and return to the first step above — which is why I suggested working on a duplicate.

Finally, play back your new comped master take, and check that it sounds right. In particular, check for any pops or clicks at the joins between different audio clips. Cubase will automatically apply fades at the start/end of clips to smooth things out, but you can adjust these settings via the Project/Auto Fade window. You can also set fades at the track level; simply right-click on a track in the Track List and select the Auto Fade Settings option to fine tune.

And There’s More!

Three further things are worth noting. First, as illustrated by a couple of the screenshots, Track Versions are, visually, much tidier than Track Lanes (with multiple tracks, each with multiple lanes, these can get unwieldy), and this can make managing your project far easier. And the bigger your recording session, the greater the advantage of the Track Version approach over using Track Lanes.

If you need to edit the fades for the audio clips used in your final comp, you can do so at the track level, as here for the kick drum track.If you need to edit the fades for the audio clips used in your final comp, you can do so at the track level, as here for the kick drum track.Also, just as with Track Lanes, the same channel settings apply (EQ, inserts, sends, and so on) to the different Track Versions. Both systems therefore work well for alternate takes using the same basic instrument sounds. However, neither approach is going to be ideal if you wanted to experiment with different instrumentation or processing as your ‘alternate version’. If you’re creating an ‘unplugged’ acoustic version, for example, then configuring additional audio tracks within a suitable folder structure, or even creating a new dedicated project and transferring those elements that will be common to both, is a better approach.

The Track Lanes and Track Versions systems are not mutually exclusive; you can easily switch between them.The Track Lanes and Track Versions systems are not mutually exclusive; you can easily switch between them.Also, if you’re unsure which is likely to be the best approach, note that you’re not tied exclusively to using one system instead of the other: you can easily convert between the two different formats (Lanes and Versions) via the Project/Track Versions menu.

Chords & Tempo Tracks

I’ve focused on using the Track Versions for recording and editing audio, but it has another trick up its sleeve that Track Lanes lacks, and which may be of particular interest to writers and composers: it can be used with track types other than audio and MIDI, including the Chord Track and the Tempo Track. Both options hold considerable creative potential, but also some practical limitations depending upon the nature of your project. These are, however, topics for another day 



Published December 2014

Monday, October 24, 2022

Hardware-controlled Channel Strip In Cubase

Behringer BCR2000 control surface.

Here's how to set up your own hardware–controlled channel strip in Cubase.

Softube’s Console 1 system (http://sosm.ag/jun14console1) is an excellent idea. Having hands–on control over channel selection and standard channel–strip plug–ins can make navigating a mix much easier than with a mouse. And using a standard set of plug–ins on every channel means you’re freed from the burden of choice, which can waste so many of your precious mixing minutes.

You’re forced to use Softube’s (admittedly excellent) plug–ins, though — you can’t use Cubase’s bundled plug–ins or any other third–party ones you’ve invested in over the years. That got me wondering if I could create my own channel strip in Cubase, based on whatever plug–ins I wished to use, and control it using one of my existing MIDI control surfaces. While my solution may not rival the elegance of Console 1, I did find a way to do precisely what I wanted using nothing but Cubase 7.5’s Generic Remote facility, my chosen plug–ins and a Behringer BCR2000 MIDI controller. In this article, I’ll explain how you can configure your own channel strip and controller.

Tooling Up

The aim is to create a Cubase project template. It will feature a standard channel strip on each of the mixer’s audio channels. We’ll use Cubase’s Generic Remote facility to map the BCR2000 so that it can select channels, and have a common set of hardware controls for tweaking various parameters on the currently selected channel. We’ll also consider setting up some other things, such as send–effects routing.

Why did I choose the BCR2000? Partly because it was to hand, and partly because it’s inexpensive. But a few things make it particularly handy. As it boasts so many physical controls, you can assign plenty of functions to a single button press or knob turn, and the less you have to think about switching from one bank of controls to another, the freer you are to get on with the mix.

Complete control of a channel strip’s functions can use up a lot of controls very quickly — count the knobs and switches on the Waves SSL channel-strip plug–in and you’ll see what I mean. You can always be more selective in which parameters you want to access with your controller but, as a rule, the more controls to which you have direct access in one controller preset, the better. If your controller has only a handful, check the manual to see if there’s a way to scroll to different banks or presets. You may be able to assign the controller to an EQ in one mode, and press another button to have it control the dynamics section, for example, allowing you to control a more comprehensive ‘strip’ than at first you’d thought possible.The first step is planning: choose your channel–strip plug–in(s) and decide which parameters you’d like controlled by which hardware controls. I  found it helpful to add labels in an imaging program, so I  could work from that when setting up the Generic Remote.The first step is planning: choose your channel–strip plug–in(s) and decide which parameters you’d like controlled by which hardware controls. I found it helpful to add labels in an imaging program, so I could work from that when setting up the Generic Remote.

The BCR2000 offers useful types of control: there are many continuous rotary encoders (32 in total) and assignable buttons (20) and eight of the encoders double up as buttons to add to that tally. The BCR2000 can receive parameter information back from Cubase and all the encoders are circled by LEDs so they can indicate the current parameter value on the selected channel. Rotary encoders are far better suited to our task than the analogue pots and faders used on cheaper controllers — a knob or fader that has a fixed start and end point can cause problems when switching from one channel to another with different settings, as the hardware control will be in the wrong place! Novation, Mackie and Icon make or have made suitable alternative controllers, and they’re not alone. Pretty much anything with a combination of motorised faders or rotary encoders and buttons will do.

By default, the buttons on the BCR2000 generate MIDI notes (they can be programmed to transmit other data if you prefer). This means you could try this out with any MIDI piano keyboard or drum pad, particularly if it also features encoders and/or moving faders.

The other thing you’ll need, other than a copy of Cubase, is to decide on the plug–in(s) to employ in your standard channel strip. To keep things simple, I’ll use just one (Waves SSL E–Channel) but you can choose as many as you have insert slots available. Bear in mind, though, that keeping things in a single plug–in (such as a Neve or SSL channel-strip emulation) means you only have one plug–in GUI to open and close, which makes it easier to see all the key channel parameters at a glance. It also means you need only a single button to open and close it.

Generic Remote

With your controller (to make explanation easier I’ll assume you’re using a BCR2000) hooked up to your computer, fire up a blank Cubase project and go to Devices / Device Setup / Remote Devices and select Generic Remote. If a Generic Remote is not visible in the list on the left, click the ‘+’ sign to add one, then select the BCR2000 from the MIDI Input and Output drop–down menus.

Saving a Generic Remote file is not intuitive — you’d think that hitting ‘Apply’ would do the job. While that updates the details for the current project, it seems (on Cubase 7.5.2 running on Windows 7 64–bit, at least) not to get recalled when closing and re–opening the project. Instead, all of the settings are stored in XML files which you must Export to save your settings. Do that now, so you have a backup of your starting point, and call it ‘generic–default.xml’ or some such. We’ll use the same approach later to save the changes we make to a different XML file. You can create as many XML files as you wish, which means you could create a virtual Neve strip, a virtual API one or whatever alongside the SSL one. You just need to create a project template with the right plug–ins and import the correct XML file in the Generic Remote.

To save your work in the Generic Remote, you need to export it to an XML file. I lost a few hours work before I realised this! Happily, though, you can create as many different versions as you want.To save your work in the Generic Remote, you need to export it to an XML file. I lost a few hours work before I realised this! Happily, though, you can create as many different versions as you want.

While setting things up, you’ll be opening and closing the Generic Remote Editor frequently, so I suggest creating a keyboard shortcut to open the Device Setup window. I found that Alt–D (D for Device) was easy to remember and wasn’t allocated to anything else.

Configuring Your Controller

Now to make the control names in the top half of the grid meaningful. In the Control Name column type in names for each control you wish to use, and when done you can delete any surplus rows to avoid confusion. For example, for my BCR2000, I added two entries for the dual–purpose encoders 1–8, one for ‘rotate’ and another for ‘push’. Then I added one entry each for the other encoders, and one for each button. If you value your sanity, do this in an ordered, logical way, and make a note of which button/knob/fader is called what. I found it useful to download a picture of the BCR2000, open it in an imaging application and add text labels so I could figure out what I wanted where.

Selecting the plug–in parameter you wish your hardware device’s control to govern — typing in the search field makes this much quicker than using your mouse to scroll through the options.Selecting the plug–in parameter you wish your hardware device’s control to govern — typing in the search field makes this much quicker than using your mouse to scroll through the options.

When you’re done labelling, you need to allocate a hardware control to each row in the upper table. This sort of thing was tedious back in the day, but the Generic Remote’s MIDI Learn facility makes it easy. Make sure the Learn tickbox is ticked, then click in the Control Name column in the first row, and twiddle/press the corresponding control. Cubase will fill out most of the information for you, including the control type, MIDI channel, note and value range. However, it will not put any data in the Flags field. This field determines whether you want Cubase to ‘see’ signals from any given control and/or feed back the parameter value so it can be displayed on the BCR2000. You want both the Receive (on by default) and Transmit flags to be enabled — the first means Cubase will detect data from that control, the second that it will send channel–parameter information back to the unit, to allow the LED rings to reflect the current value, for instance.In the upper table all controls need to be set to Receive in the Flags column, and if you want your rotary encoders’ LEDs to reflect the current channel’s parameter value, you’ll need to set it to Transmit too.In the upper table all controls need to be set to Receive in the Flags column, and if you want your rotary encoders’ LEDs to reflect the current channel’s parameter value, you’ll need to set it to Transmit too.

You’ll need to go through and do the same for each and every hardware control you wish to be able to use, but I’d suggest getting one control up and running and controlling the desired parameter first, as if you get anything wrong at this stage it’s a lot of work to unpick! It’s also a good idea to untick Learn when editing the Flags field — I tended to forget it was on when I was working things out, and inadvertently assigned the wrong control several times! When you’ve got one control working, hit Export to save your Generic Remote as an XML file so you don’t lose your work.

Project Template

To use the Generic Remote as a channel-strip controller, you’ll need to place the same plug–in(s) in the same insert slot(s) on every channel. You’re also going to need to create an audio channel for each track you’re going to want your controller to be able to select. So if you want to use your controller to be able to select 32 channels, you’ll need to create 32 audio tracks. If you don’t do this, you’ll find that the option to select those channels is not available in the relevant Generic Remote menu, and that’s the only reason you must create them now; you can, if you wish, delete surplus channels later, before saving your project template. When it comes to creating a real project based on this template, you can either save a channel preset and recall it for new channels, or just duplicate existing channels.

Click OK to close the Generic Remote window, create an audio channel and insert your chosen plug–in(s). I put the SSL plug–in in insert slot 2 so that I’d have slot 1 free for any corrective work — a de–esser, perhaps, or a more surgical EQ to nix bothersome resonances — without having to move the SSL plug–in to a different slot (and thus break communication with the BCR2000). I then created another 31 channels (you can create fewer or more if you wish — it really depends on what sort of material you’ll be working on) and dragged and dropped (while holding Alt) the SSL plug–in to copy it to the other channels’ insert slot 2.By enabling all sends in your project template, you won’t need to switch them on or off to make use of your dedicated hardware send controls.By enabling all sends in your project template, you won’t need to switch them on or off to make use of your dedicated hardware send controls.

Next, I selected all the channels in the mixer (click on the left–most one and shift–click the right–most, engage Q–link at the top of the mixer) and enabled all the effects sends on all channels, but left the actual send values at zero. This makes it possible to assign each send level to a specific knob on the BCR2000 for the selected channel, without having to think about enabling or disabling the send. The idea is that you create up to eight (you may not need or want that many) effects channels as your standard send effects. For example, you might want a short and long reverb and delay, a widener patch, a parallel distortion and so on — the choice is yours. There’s nothing to stop you creating more effects tracks and having different sends for each channel — you’ll still have direct access to the send level. But having a basic set of standard send effects can be a useful time saver.

Mapping Plug–in Parameters

So, you have Cubase recognising your controller, and you have your channels, standard processors and sends set up in a project. Now it’s time to start assigning plug–in parameters to the BCR2000’s controls. This is done in the lower table of the Generic Remote window, the row names of which match those you created in the top table earlier. While the upper table tells Cubase what information is coming in, the bottom one tells it what controls to issue to your project when a knob is twisted or a button pressed.

Each entry in the Device column needs to be set to VST Mixer. There are other options in this column that you can explore, which give access to transport controls, key commands, macros and so on, but as I already have most such things assigned to keyboard shortcuts, I didn’t want to tie up the controls on the BCR2000 unnecessarily. The three other columns you’ll need to tweak are Channel/Category, Value/Action and Flags.To make your control act only on the current channel, you need to set the channel category in the lower table to Selected. For channel–selector buttons, you’d choose the relevant channel instead.To make your control act only on the current channel, you need to set the channel category in the lower table to Selected. For channel–selector buttons, you’d choose the relevant channel instead.

Click in a cell in the Channel/Category column to access the drop–down menu. For anything associated with the channel strip (plug–in parameters, send levels and so on) set this to ‘Selected’ so that the control signal will only affect the current channel. In a similar fashion, specify the plug–in parameter you wish to control via the Value/Action drop–down list. This process is tedious if you use a mouse — I found typing in the search filter at the top much speedier. For example, typing ‘Inp’ whittled the list down to the InputLevel parameter for the Waves SSL plug–in on insert slot 2, and pressing enter assigned that row’s control.

For rotary controllers, you don’t want anything selected in the Flags field. I found that things were set to Push Button and Toggle by default so I had to deselect these — failure to do so will lead to some strange behaviour of your plug–in controls. As the push buttons are MIDI notes, though, they need to be set to Toggle. That way, each note–on command toggles the status of a button on your plug–in, rather than engaging it momentarily.

You’ll probably find that you need to set the commands from any buttons to Toggle in the lower table. If rotary encoders are set to toggle, they’ll go from zero to maximum — worth bearing in mind when troubleshooting!You’ll probably find that you need to set the commands from any buttons to Toggle in the lower table. If rotary encoders are set to toggle, they’ll go from zero to maximum — worth bearing in mind when troubleshooting!As far as the plug–in control is concerned, that’s pretty much it. You just decide which parameters you want which hardware controls to govern, select them in the table, and away you go. Do the same to give you control over the channel FX Send levels. And remember to export your XML file to save your work (boring advice, I know, but repeating it might save you lost hours!).

Channel Selection

So far, you’ll only be able to control the plug–in when it’s instantiated on the currently selected channel, but ideally you’ll want to be able to select that channel via the BCR2000’s buttons. If you’ve not done so already, repeat the process for assigning controls to the plug–in via MIDI Learn, so that Cubase can ‘see’ the hardware buttons. This time, in the bottom half of the Generic Remote window, we don’t want to operate on the Selected Channel — because we’ve not yet selected it!

Set the Device value for the control to VST Mixer, the Channel/Category value to the desired audio track (as I mentioned earlier, you have to have created the tracks already if you wish to be able to select them here), the Value/Action field to Selected and the Flags to Push Button and Toggle. Press Apply, and your button should now select the specified channel. Repeat the process for as many channels as you have buttons for. On the Behringer BCR2000, I assigned the two rows of eight buttons at the top of the unit to the first 16 channels.

That’s not a huge number of channels for a mix is it? Fortunately, the BCR2000 has buttons that allow you to scroll from one controller ‘preset’ to another — for each preset, you can assign the buttons to a different set of 16 channels. The beauty of this is that all those controls that you routed to parameters on the currently selected channel needn’t change. All you need to do is make sure that the buttons are operating on a different MIDI channel in each preset (hold Edit, press the button and twiddle the ‘Ch’ knob). Once done, you can map the second bank of 16 buttons to select channels 17–32, the third to 33–48 and so on. Sixteen channels multiplied by 16 presets (one for each MIDI channel) gives you up to 256 channel–selector buttons if you need them.

If you have a controller with fewer controls that supports this preset/bank switching, you could use one preset for your EQ, another for compression, another for tape saturation, and so on, or you could assign one preset to control your send–effect chains. You’re only really limited by your imagination.

Extras

If you have any controls left over, you’ll want to assign one to the channel pan control too. You don’t really need to control the Cubase mixer channel gain or fader levels if using the SSL plug–in, as that has its own input and output level controls, but you could do so if your chosen plug–ins lacked this. If you want to map things like Cubase channel mute and solo (I already had keyboard shortcuts for this sort of thing, so chose to leave BCR2000 buttons free for other functions) you can find these commands in the Value/Action column. The Read/Write enable commands might be worth setting up if you’re going to use your controller to record automation. If you really want to go to town, I suggest investigating the options in the Device list.

Quirks & Troubleshooting

When you’re done, export your XML file one last time, then save your Cubase Project as a Template. Create a new project from your Template. If you followed my instructions to the letter, everything should be working perfectly — but I bet you have missed something somewhere! Here’s a quick guide to some of the niggles I encountered.

Making plug–ins appear in a standard place on the screen for all channels is fiddly as, while Cubase remembers the last place the plug–in GUI was placed, it does so separately for each channel. The only route I found to achieve this was to manually drag the instance for each track to the same place (eg. top–left of the screen) for each and every channel and not move it again. Instead, assign a BCR2000 button to the task of opening and closing the plug–in window on the selected channel. If your channel strip combines several different plug–ins, though, this is a pain. And it’s similarly annoying if you decide during a mix that you’d rather all instances appeared in a different place.

I neglected to restore my BCR2000 to its factory default settings before embarking on this adventure, and I found on occasion that I’d inadvertently set up two different controls to govern the same MIDI parameters on the same channel. That caused some head scratching at the time! If you encounter this, it’s pretty easy to track down the offending controllers by scanning the Address column in the uppermost table of the Generic Remote window for the same values.

I tracked several problems down to having deselected the toggle function when it should have been selected or vice versa. I also neglected to set the Flags field for the controller to Transmit in the top part, to get the LED visual feedback working properly. And, try as I might, I couldn’t find a way to make the buttons’ LEDs light when the parameter was active. Not that I found that to be a huge problem, but do let me know if you figure out how to do that!

Annoyingly, I found that using the full resolution of the rotary encoders meant that once I’d moved a parameter away from it’s default position, I couldn’t return to it using the BCR2000, although I could using the mouse. That’s fine for some parameters, but not for all. If it’s a problem, the trick is to reduce the range of the control very slightly by limiting its input value to 126 instead of 127 (in the Max Value field in the upper table in the Generic Remote window). This enables you to return to a neat and tidy zero/unity using your knobs.

One pleasant surprise was that the two subtly different–sounding versions of the Waves SSL plug–in (the E–Channel and the G–Channel) both worked with the same Generic Remote setup, so I was able to use whichever I preferred on any channel, and mix and match mono and stereo versions without having to re-map things.

Quick Mix

With the right control surface, the options are pretty much endless. I’ve found that working with a standard strip like this can save a lot of time and dithering (not in the technical sense of the word!) while mixing. And, as I invariably find that I do at least the first pass of my mixes better when working quickly, it’s been well worth me spending the time I’ve taken to set this up. Now I just need to resist the temptation to build a hundred different channels and Generic Remotes! 




Published January 2015