You are here

Vive La Convolution!

Sonar Tips & Techniques
By Craig Anderton

Turn noise into impulse responses for Sonar’s REmatrix convolution processor.

For years, Sonar included the Perfect Space convolution reverb. But it was a 32-bit reverb in what was becoming a 64-bit world, and now Sonar Platinum bundles Overloud’s REmatrix Solo (a single-layer version of their multilayer REmatrix) as a ProChannel module. Of course you can still use the Perfect Space reverb, and even load its impulse responses into REmatrix — you’ll find these impulses at C:/Program Files/Cakewalk/VstPlugins/Perfect Space, for a typical installation. But REmatrix offers several advantages over Perfect Space, including lower latency.

Convolution Basics

Convolution reverb is to synthesized, ‘algorithmic’ reverb as samples are to synthesizers (or if you prefer a more visual parallel, as photos are to paintings). Although people think of convolution as related to reverb, convolution is a mathematical term that describes what happens when you multiply two spectra. For reverb, one of these will be the sound source itself, and the other will be an impulse response, which is a recording of an acoustic space’s characteristics.

After importing an impulse, it becomes part of a list of available user impulses.After importing an impulse, it becomes part of a list of available user impulses.

For an analogy, consider the impulse as a ‘mould’ of a particular space, and that the sound is ‘poured’ into the mould. If the space is a concert hall, then the sound takes on the characteristics of the concert hall. But anything can be used as an impulse. For example, convolving a synthesizer guitar patch with an impulse recording of an acoustic guitar body can create a more convincing guitar sound. Impulses exist not just for concert halls, clubs, various rooms and so on, but also for amplifiers, tunnels, resonant structures, spring reverbs, filters and the like. If you can ‘excite’ a space or device with a short, loud burst of noise, you can create an impulse of it.

The trade-off has traditionally been the same as that for samplers versus synthesizers: lack of parameter control. Latency has also been problematic. But just as some companies have figured out how to get ‘inside the sample’, convolution reverbs are getting more flexible as well. REmatrix Solo can vary the decay time and pre-delay, as well as non-time-dependent EQ controls. As to latency, faster computers make that less of an issue.

REmatrix comes with lots of IRs, and Cakewalk’s Dan Gonzalez contributed 126 excellent room IRs to the first Member Program release in February. You can also use any WAV file under 20 seconds as an impulse, and there are tons of free impulses on the web that represent all kinds of environments and gear. Just remember that the quality of the final sound depends entirely on the quality of the impulse response. You’ll have to look through a lot of freebies to find the keepers, but look long enough and you’ll find some useful impulses.

Custom Impulses

REmatrix Solo has a two-step process for using your own impulses. First, you click on the left-most of three buttons in the IR window, then choose User and Import. Navigate to the impulse you want to load. After it’s loaded, REmatrix will confirm that it loaded properly. To actually use the impulse, go through the same procedure but note that now, any impulses you imported will show up in the User list. Click on an impulse to load it.

Convolution Meets Synthesis

Here’s where it gets really interesting, because we’re going to create ‘perfect’ reverb impulses so you can create any room you want without having to actually go into a room and take an impulse. Then, we’ll use convolution to apply that idealised impulse to a signal.

If you listen to an actual impulse, it’s kind of messy. And that’s good, because it gives you a real-world room. But what if you want the smoothest reverb ever, without the tell-tale signs of artificiality that algorithmic reverb gives you? We have a solution.

It’s been known for a long time that convolving a signal with white noise gives reverb, but this was usually seen as more of a curiosity without that much practical use. White-noise reverb tended to be bland, and get lost in a mix due to its slightly muddy character. Real rooms were much more interesting. However, it’s possible to find a happy medium, and the result is reverb that doesn’t sound like standard convolution reverb, but more like perfect algorithmic reverb — without the tell-tale modulation or other artifacts.

You need to start with a high-quality white-noise sample. The higher the quality, the better; I generated 10 seconds of 24-bit/96kHz white noise in Sony Sound Forge to provide the raw material for the impulse.

The next step is to bring this potential impulse into Sonar for processing. One goal is to shape the white noise to reproduce how a sound would decay in a perfect room. Start with a fast fade-out to give a logarithmic amplitude decay. For a more pronounced attack and smoother decay, use the Clip Gain function to shape the decay further — imagine the ‘shape’ you want for the reverb decay, then tailor the clip to replicate that shape. However, note that for a natural sound, you want to define enough points in the automation curve so that you don’t hear any break points in the signal. If you can hear where the automation nodes change level, you need more nodes.A fade was added to a file of white noise; Clip Gain automation is refining the curve further. The automation lane controls the ProChannel’s low-pass filter frequency. Note how, at the point indicated by the Now time, the filter has already closed down quite a bit. Rolling off the lows around 70Hz gets rid of ‘mud’.A fade was added to a file of white noise; Clip Gain automation is refining the curve further. The automation lane controls the ProChannel’s low-pass filter frequency. Note how, at the point indicated by the Now time, the filter has already closed down quite a bit. Rolling off the lows around 70Hz gets rid of ‘mud’.

Room characteristics also involve frequency-response changes. To avoid the muddiness associated with using pure white noise for reverb, enable the ProChannel’s high-pass filter at around 70Hz with a 36dB/octave slope. You’ll also want high-frequency damping. An easy way to do this is to automate the ProChannel EQ’s low-pass filter control to dampen the highs during the decay. A fairly gentle 12dB/octave slope seems to work well for this. Note that in the real world, highs drop off relatively fast; if they decay too slowly, the reverb will sound unnatural because it won’t change enough during the all-important first couple of hundred milliseconds.

As to pre-delay, that’s easy: add an envelope attack, or for a more radical difference, insert silence at the beginning. But to my ears, a short envelope attack time sounds more natural, ‘blooms’ better, and avoids masking a note’s attack.Adding a slight fade-in gives a natural pre-delay effect. Usually a slow fade curve gives the best results, but feel free to experiment.Adding a slight fade-in gives a natural pre-delay effect. Usually a slow fade curve gives the best results, but feel free to experiment.

There are many possible variations on this theme — I’ve created long and short decays, bright rooms, rooms with heavy damping, rooms where the reverb swelled up to a peak... you get the idea. The sky’s the limit.

REmatrix Solo Settings

Once you’ve customised your noise file, you can edit things further from within the REmatrix Solo plug-in. The Time control will default to the impulse length, but most of the time shorter settings will work fine too. The Delay control adds pre-delay, but I prefer adding an attack time to the white noise, as described earlier. Regardless of how you set the REmatrix controls, though, your processed white noise will give an effect that’s more artificial than a room, but more idealised than an algorithm — it’s sort of the reverb equivalent of idealised CGI graphics. It can sound very cool!

Impulse Management

REmatrix Solo’s method of organizing user impulses is very limited. There’s a single file, ‘factory.rir’, which contains all the factory impulses located in the IRLibraries folder at C:/Users/Public/Documents/Overloud/REmatrix Solo. Importing a user file via the REmatrix import option creates a separate ‘userIRs.rir’ file in the REmatrix Solo folder located in the same path. You can’t create additional folders, so if you have a lot of impulses, you’ll end up feeling like you’re looking for a needle in a haystack.

Because there’s often some trial and error involved in getting a great impulse, you’ll typically end up with a bunch of WAV files that you eventually need to pare down. So, I recommend changing the name of the existing userIRs.rir file to something else (eg. userIRs.xrir) so you can load lots of IRs into a new userIRs file, which REmatrix Solo will create automatically as you import files. (Note that managing IRs should be done in a new project. If you alter the userIRs file that REmatrix solo expects to see, it will pout.)

Now bring the Browser into the process. Select the Browser’s Media tab, then navigate to the C:/Users/Public/Documents/Overloud/REmatrix Solo folder. When you’ve created something in Sonar that sounds like it might be a good impulse, drag it into the browser and build up a collection. Then, import a file into REmatrix Solo and evaluate it. If it’s a keeper, great. Otherwise, right-click on the file in the browser, then choose Delete from the context menu.

Once you’ve narrowed down the IR files to what you’ll want to use in the future, rename the userIRs.rir file to something else, and restore the name of the original userIRs.rir file. Now you can import your favourite impulses into REmatrix Solo by choosing the desired file from the list of User Presets, and it will become part of your User Presets file.

Published June 2015