Take a quick look at the demo I posted on Twitter last week. (remember to turn on the sound!).
Note: in the video I demonstrate the effect with the use of a mobile phone's Voice Memo app. You can get much better results if you use a stereo microphone/field recorder. Also, recording a hand clap may not be the most accurate method, although, all this gets the job done! With some extra space for improvement if you have better equipment or if the results do not satisfy you. All will be explained later in this article.
Table of Contents
- What is Convolution Reverb?
- How to record and edit Impulse Responses?
- Setup in Unreal Engine
- That's it!
What is Convolution Reverb?
It's a digital audio effect that is capable of reflecting reverberation of space. As I mentioned in the introduction to this article - every space has its own way of responding to sound. We can capture the fingerprint of any space and create an Impulse Response (IR). The IR can be later applied to any other sound through the process called Convolution.
You can capture IRs of not only spaces, but also analog audio equipment or digital effects in your DAW.
You can find a more detailed explanation on Wikipedia.
How to record and edit Impulse Responses?
An Impulse Response is an audio file that contains a fingerprint of a space.
To capture an Impulse Response we need to record said space.
But it can't be just any recording. We want the space to respond to the broadest spectrum of frequencies possible.
There are different ways of achieving desired effect. For example:
This is a as simpler variant. We simply need to record an impulse and the response of the room we're in. The impulse can be different things. In the example I clapped my hands, but you can also pop a balloon, hit a piece of wood with another piece of wood. The most important thing is for the initial impulse to cover as broad frequency range as possible. It would be best if the signal would also have equal density across the spectrum.
We can ensure the broadest using a spike of white noise - a type of noise that has equal energies at different frequencies. It covers the whole spectrum and has equal density across it.
You can download one, but you can also fairly easily create your own by generating a sample-length of white noise in your DAW.
2. Sine sweep
Instead of making sure that all frequencies fit into as short a time as possible, you can generate (or download) a sine sweep that travels across the frequency spectrum. Sine wave is great, because for a given pitch it has just a single harmonic - the fundamental, hence we're sure to cover the full frequency.
This method is more complex not only because you need a good speaker (ideally a pair of speakers) to play the sound, but also because sweeps need to be converted into Impulse Responses via process of deconvolution. You can find different deconvolvers online, like this one.
In Ableton Live you can use IR Measurement Device from Max For Live Essentials.
The best results can be achieved using a stereo microphone or e.g. a pair of mics at a 90-135 degree angle. I didn't have the luxury of recording in stereo, so I resorted to the simplest technique I like to call 'grab your phone and see what happens' - and it worked quite alright despite the fact of the effect being mono.
You can try a different setup, but a good idea would be not to have the sound source directly next to your microphone. Give it some space.
As you may have already figured out - if you want to record a spike or a sweep, you'd need some speakers. You can record in all possible setups as long as you get results that satisfy you. You can try for example playing left and right signals separately. Or both at the same time. Although a tip that seems to be repeated by a lot of people is - try to make your recordings as loud as possible without clipping.
You can also find a sweet spot for recording your space by walking around and clapping to see where it sounds nice.
Editing the IR
In the example I've tried to edit out the initial transient. This is mostly because I had my Convolution Reverb as a Submix Send. In this case I preferred to have a '100% wet' Impulse Response without the initial signal (clap). You just have to find the sound you're looking for. Try different approaches and see what works for you best.
In general case you'd rather prefer for your IR to begin immediately (no silence before the IR) and to fade rather smoothly.
You can download some handy impulses and sweeps here.
- Recording Impulse Responses
- Creating Impulse Responses: To Bang or To Sweep
- Sound Designer Survival Guide: Impulse Response Recording
- Creating Impulse Responses | Ableton, Max4Live by Hainbach
Example setup in Unreal Engine
You can download the Impulse Response I've created for the twitter demo 🔊 here. You can also check out for example the free Echo Thief Impulse Response Library for some quality responses or other libraries available in the Internet.
Create a Sound Submix by right-clicking in the Content Browser and navigating to Sounds > Mix > Sound Submix
Create a Submix Effect Preset by right-clicking in the Content Browser and navigating to Sounds > Effects > Submix Effect Presset
In a pop-up window that will appear, select a Submix Effect Reverb Preset as the Submix Effect Class
Add the Submix Effect Reverb Preset to the Submix Effect Chain in your Sound Submix asset
Send your audio wave to the Sound Submix by adjusting the Send Level
Import your Impulse Response wave file, then right-click and select Create Impulse Response. This will create an Impulse Response asset
Open the Reverb Effect Preset asset and select your Impulse Response
Convolution Reverb is a powerful tool. Although I tried to make this a comprehensive read, but I for sure haven't covered everything there is to know. You can try for example creating a response of hardware, reverb VST plugins, or even other effects to achieve different results and unleash unknown creative powers! It's also good to understand how it works under the hood to be able to make conscious decisions. You can also try to process the impulse response even further and play with what comes out.
Convolution Reverb is known to sound designers and music producers for some time now, but this Unreal Engine feature it is a new, fast, and easy tool to create even more immersive digital experiences.
Have fun playing with it, I'm looking forward to see how you use it!