Fruity Convolver (Convolution, Convolution Reverb & Linear Phase EQ)
Fruity Convolver is a real-time Convolution plugin
that can be used to add reverberation, create special effects, apply an acoustic impulse (audio signature) captured from audio equipment/plugins or perform as a
linear phase equalizer. When convolving, Fruity Convolver applies the sonic character of one sound to another by convolution of the input audio with an
impulse response. The impulse response is an audio recording
of an impulse sound after it has bounced off something, bounced around a room (reverberation), passed through an electronic circuit (soaking up the magic within), passed through a plugin
(sampling the effect) or any combination of the preceding events. Alternatively, impulse responses can be synthesized or simply another audio file (experiment!).
The convolution process is little more complex than multiplying every sample at the plugin input by the samples in the impulse response. This means that each sample of the input audio triggers the playback of a copy of the impulse response, where all the samples in the
impulse response are multiplied by the value of the input sample (-1 to +1). In other words, if the input audio is a single click, 1 sample at 100%, then you will hear the original impulse response. If the impulse response is a single 100% click 5 seconds after the start of the file, you
will hear an echo of the input audio delayed by 5 seconds.
Most commonly convolution is used to reproduce the reverberation captured from real acoustic spaces you wouldn't normally have the opportunity to record in, or expensive/rare hardware reverb units. It's also possible to capture an impulse response through a guitar amplifier, from a speaker, microphone or to use any interesting audio file as an impulse response to
create weird effects. The process of making impulse responses is discussed in the section 'Making your own impulses' at the bottom of this page.
Alternatives to Fruity Convolver include Fruity Reeverb and Fruity Reeverb 2.
See the Fruity Convolver Video Tutorial Series here.
NOTE: Any audio file can serve as an impulse, experimentation will reward you with unique and interesting sounds.
There are two main areas on the plugin interface. The knobs along the top of the plugin give access to commonly used controls and the lower 'Editor' window that can be switched between
impulse, the impulse can be manipulated like any recorded audio, and equalizer that can apply equalization to the impulse.
- Dry Adjusts the level of the dry signal (0 to 100%).
- Input stereo separation Turn left to maximize stereo separation of the input or right to create a mono input.
- Wet Adjusts the level of the wet signal (reverb / convolution) sound (0 to 100%).
- Normalize Loudness normalization. This is useful to maintain a consistency across impulses as there can be dramatic differences in gain between them.
- Wet stereo separation Enhance or reduce the stereo effect in the wet output.
- Delay Adds a delay to the first reflection from the impulse. NOTE: Fruity Convolver puts any set or detected delays to good use, using the time afforded by the delay lower CPU load. Many reverb impulses have a period of silence at the start, the time taken for the sound to reflect off the closest surface to the microphone/s. Fruity Convolver will detect these delays and will use the extra time to reduce its CPU load also.
- Self-conv The impulse is convolved with itself before being convolved with the input. This creates a similar effect to putting a reverb on the impulse.
- Stretch Uses high quality resampling to change the length & pitch of the impulse. NOTE: This is not timestretching so the frequency of the impulse response is shifted
lower with stretching and higher with time-compression. It usually sounds right, unlike time-stretching on the impulse with constant pitch from the editor functions that often results in
- Eq Balance between the Equalized and Normal impulse response.
- KB Input Select to enable keyboard shortcuts in the impulse & EQ editors.
- Updating Animates while the plugin is processing changes to settings. There may be a short period of silence when the convolution algorithm updates. Note: Don't touch the delay, stretch, self convolve or eq controls if an interruption to the sound will be an issue (live performance for example).
Impulse Editor Window
Fruity Convolver's Impulse Editor is based on Edison, so see Edison's help for features not covered here. The main controls and options needed to use Fruity Convolver's Impulse Editor are:
- Load Impulse Click the Browse impulses button (shown green above) and drag Impulse files from the Browser and drop on the Editor Window.
- Left-clicking Shows the location of the currently loaded impulse response.
- Right-clicking Shows FL Studio's default impulse response folder.
- Shift + Up / Down Arrow keys Will step up/down the Browser list and will load the impulse response into the most recently focused Fruity Convolver.
Alternatively click the disk icon and use the Windows file browser to locate your own impulse responses.
- Envelopes Several standard envelope controls are accessible along the bottom of the window that act on the Impulse sound. From left to right -
- Pan To edit the Pan envelope.
- Volume To edit the Volume envelope.
- Stereo Separation To edit the Stereo Separation envelope.
- All-purpose envelope Can be assigned to playback velocity/direction and various other functions.
Editing envelopes After selecting the desired envelope type, Right-click in the 'Impulse Editor Window' to add points, and Left-click to move points and tension markers. Right-click points to open a context menu that will allow you to delete points or change the curve type.
- Trigger impulse (spark icon) Click this icon to create a 'click' impulse to create impulses from plugin effects (see a video tutorial here):
- 1. Load two instances of Fruity Convolved in the FX slots above and below the effect to be captured.
- 2. Make sure the plugin has a fairly loud dry signal passing through so the recording Fruity Convolver can reliably detect the onset of the impulse sound. This is used to compute predelay.
- 3. Press the record button on the lower Fruity Convolver that will perform the impulse recording.
- 4. Press the Trigger impulse control. The recording Fruity Convolver will capture the impulse until the signal level falls to zero and automatically stop.
To make impulses from external hardware devices we recommend using the Sine-wave sweep method discussed below.
Although in this case you can record the sine-wave sweep as it is played through the equipment, no need for microphone rigs.
Impulse Equalizer Window
The equalizer functions acts on the impulse itself, not directly on the audio passing through the plugin, so the effect is to change the EQ of the convolved part of the output. You can also
use this section to perform Linear phase EQ (see below).
The background display shows a frequency spectrograph with time on the vertical axis (time zero is at the top) and frequency on the horizontal axis (frequency is indicated in Hz and Octaves along the bottom of the display). The EQ can be useful to fine-tune impulse responses that don't have the desired tonal characteristics. Pops & claps often excite the mid-range frequencies more strongly than the low and high frequencies. A gentle U shaped curve can help restore a more pleasing frequency balance.
NOTE: The EQ curve above was created by drawing a rough 6-segment set of straight lines and then applying the Smooth up tool.
Working with the EQ envelope
Editing envelopes After selecting the desired envelope type, Right-click in the 'Impulse Editor Window' to add points, and Left-click to move points and tension markers. Right-click points to open a context menu that will allow you to delete
points or change the curve type. The default mid-line is 'no change'. Boost/Cut values appear in the FL Studio Hint Bar as the nodes and tension handles are moved.
- Boost/cut The top of the display = +12 dB, middle line = no change and bottom of the display = 100% cut (-infinite dB).
EQ envelope menu
- Open state file / Save state file Opens/saves envelope states. Several different pre-defined state files are available. NOTE: State files prefixed by Impulse EQ - belong to
Fruity Convolver, the state files prefixed EQ - belong to the EQ tool associated with the Impulse Editor Window.
- Copy state / Paste state Use this to copy and paste envelopes, usually between instances of the EQ editor across open plugins.
- Undo Undoes the last envelope edit.
- Undo history Shows the editing history since the last reset.
- Flip vertically Inverts the current envelope.
- Scale levels Opens the Scale Level tool.
- Normalize levels Scales the envelope so the highest and/or lowest levels reach +/100%.
- Decimate points Opens a simple tool that allows manipulation of the number of control points in the envelope (useful in conjunction with Analyze audio file).
- Filter Opens the Envelope Filter tool (useful in conjunction with a rough-drawn EQ curve).
- Smooth up - Opens the Smooth Up tool that allows smoothing of the envelope shape (useful in conjunction with Analyze audio file).
- Smooth up abrupt changes - Quick removal of 'spikey' or sudden changes in the envelope.
- Turn all points smooth - Preset filter to quickly filter the envelope.
- Turn EQ into impulse response Included mainly for your edification. The equalization curve is converted into a linear-phase impulse response. NOTE: This process will
set the plugin to 100% Wet, 0% Dry since the EQ impulse response necessarily includes a delay to include pre-ringing required to maintain phase linearity.
Linear Phase EQ presets
There are two special presets that turn Fruity Convolver into a Linear Phase Equalizer.
That is the phase response of the filter is linear as a function of frequency. Some people claim linear phase filters sound better than other filter types, 'minimum-phase' designs as used in analog
EQ and most plugins, particularly on transients. NOTE: The penalty for Linear Phase EQ is a longer plugin latency so PDC may be required for use on
all but the Master track.
- Linear phase EQ (long latency) / (short latency) These presets use an impulse designed to filter the input audio according to the equalization curve you set on the plugin. There is no difference between these presets other than the position of the impulse
response in time and so the delay caused by the convolution. As both cause significant output delays, as do all linear phase filters, they are best used in mastering situations.
Use Load a Linear phase EQ preset and set the equalizer curve as discussed in the section above. This process relies on an impulse response that has been centered in the impulse window to allow for a symmetrical impulse response necessary to preserve phase.
Fruity Convolver comes with a collection of impulse responses, however the addictive nature of these files will mean that you will soon be looking for more. Below are several links to get you started.
To load a new impulse response from outside FL Studio, Left-click on the 'Load File' icon on the Impulse Editor window and browse to the location of the new impulse responses.
Making impulse responses from plugin effects
Making your own impulse responses from plugin effects is fairly simple. Typical candidates are reverb plugins or any effect that does not change as a function of time (e.g. reverb and EQ). Phasing, flanging and delays won't work.
- Select a Mixer track and Load Fruity Convolver in FX slot 1 then deactivate it. This Fruity Convolver will be used to create the impulse.
- Load the FX plugin to be 'impulsed' in FX slot 2, below the first Fruity Convolver, and set the plugin to the patch/sound you want. Make sure it's passing the Dry input sound also (don't use 100% wet).
- Reactivate the Fruity Convolver on FX slot 1.
- Load a second Fruity Convolver in FX slot 3. This will be used to record the impulse response from the plugin above.
- Click the Record button of Fruity Convolver on FX slot 3. This will arm it for recording.
- Click the Trigger impulse (spark icon) of Fruity Convolver on FX slot 1. This will initiate the recording through the plugin on FX slot 2 and into the Fruity Convolver on FX slot 3.
- Deactivate the plugins on slots 1 and 2. Test your impulse sounds the same as the FX plugin in slot 2.
Making your own impulses from external sources
This section assumes that you want to make impulse responses of real-world objects, equipment or spaces. If you are interested in making impulse responses from plugins see the 'Trigger impulse' 4-step
tutorial in the Impulse Editor Window section above. NOTE: The limitations discussed below don't apply to making impulses from plugins internally in FL Studio.
Making acoustic impulse responses is no more than a specialized exercise in stereo audio recording. If you are capturing reverberation then the quality of the impulse response will depend on the quality
of the audio source, the microphones used, the microphone placement, background noises (although sine-wave sweeps avoid this, see below) preamplifier quality and recording equipment. Ideally the
recording chain needs to be as transparent as possible so it imparts as little of its own sonic character on the recorded impulse responses. Remember that this process is all about capturing subtle, often
low level signals. To do this right you need to have a professional and quality audio recording setup. But this isn't the Image-Line school of scary, 'do it perfectly or don't bother' impulse response recording,
we just want to keep your expectations in perspective. If your mobile phone can record audio, why not give it a bash with that, you will still gain insight into the process and your impulse responses will be
interesting, if not good.
To create an impulse response you need to record the object being excited by a full audible spectrum (20 Hz to 20 kHz) impulse. There are two main methods
for achieving broad-band impulse response recordings:
- Noise burst method - The ideal burst sound is a loud, single-cycle wavefront with an infinitely fast pressure-rise, a single spike in air pressure. While it is not practically possible to create a
perfect acoustic spike, short, sharp sounds such as hand-claps, two blocks of wood slapped together, loud clicks or white noise blips from good speakers, balloon-pops or starters-guns can substitute
reasonably well. This impulse will sound different depending on whether it's heard in a bathroom or a cathedral. Recorded on a mobile telephone or with a $10,000 microphone. These different sounds
represent the 'acoustic fingerprint' or echo of the impulse in or through the object. The impulse response therefore captures an acoustic fingerprint and allows us to apply it to any other audio.
- 1. Set up your stereo microphones in the location that has the sound you want.
- 2. Put on your hearing protection, you will be making loud impulse sounds!
- 3. Record the burst sound. You will need to experiment to get the levels right, you don't want to clip the recording but also want to be able to capture the reverberant sound well. Moving the
burst source away from the microphones can help here. There are also many stereo recording techniques that we will
leave up to you to sort out (have fun). Generally a nice pair of omnidirectional stereo mics in the A-B (spaced) array or baffled A-B array
(this authors favorite) work well. Think about the reverberant sound you are trying to capture. If it's a concert hall, where is the audience located? Put your microphones there (best seats in the house, don't be stingy!) where are the instruments located? Make your impulse
noise from there. What if you want the sound from the performers perspective? Then you put the microphones on stage and make the noise from there also, you get the idea.
- 4. The recording is your impulse response, load it into Fruity Convolver and appreciate the hard work that goes into making great sounding impulse response recordings.
Problems with the noise burst approach include the sonic character of the impulse sound contaminating the impulse response, poor frequency coverage and poor signal to noise ratio as background noises contaminate the recording, particularly the decaying tail.
- Sine-wave sweep method - This is the preferred as it avoids many of the problems associated with the noise burst approach. Here we record a sine-wave frequency sweep (20 Hz to 20 kHz) as it excites the acoustic object. After some additional mathematical processing an impulse can be computed from the recording that represents only the sonic characteristics of the object across the frequency spectrum and with a very high signal to noise ratio. In addition to the recording rig you will need a good speaker (possibly amplifier) and CD, portable media player or laptop to
play the sine-sweep wav file. Remember we are after quality audio reproduction here.
- 1. Generate or download a 20 Hz to 20 kHz sine-wave sweep of at least 10 seconds duration although longer sweeps result in better quality impulses. 20 seconds is a good target.
- 2. Set up your stereo microphones in the location that has the sound you want. Use the stereo technique of your choosing (see the 'noise burst' method, above).
- 3. Set up a high-quality speaker in the location from where you want the sound to originate. Remember speakers are directional so you should face them in the direction
a performer or musician would be facing in the environment then put your microphones where the audience would be. Studio monitors are ok here, although they will have poor low
frequency response (< 55 Hz) and probably lumpier than you expect at other frequencies. If you have the gear to calibrate the speaker to a flat frequency response, do it.
- 4. Play the sine-wave sweep in the acoustic environment over your quality speaker and record the result. Then go off and tape down and wedge foam or tissues in all the objects in the room that
made resonant buzzing noises and do it again.
- 5. Use deconvolver software to construct the impulse. Voxengo's Voxengo Deconvolver works well. Load the original and recorded files in the program and they will be processed to create the impulse response .wav file. NOTE: The unregistered Voxengo Deconvolver demo version does not allow batch processing and is limited to 3 deconvolution per program's session.
- 6. Load your impulse response into Fruity Convolver and wonder if it isn't easier to just download other peoples impulse responses.
Impulses can be taken from literally anything that can transmit or reflect audio signals. In addition to sampling reverberation, you can create an impulse from a microphone, e.g. recording a frequency sweep through a Neumann U87 microphone would theoretically capture the 'fingerprint' U87 sound. Similarly, recording a guitar amplifier and cabinet would capture the sound of the electronics and speaker. The applications of impulses is therefore almost unlimited.
Convolution engine by: LiquidSonics.
Delphi code translation: Frederic Vanmol (reflex).
GUI and Code by: Didier Dambrin (gol).