What is convolutionConvolution is the effect of multiplying
every sample in one wave or impulse by the samples
that are contained within another waveform. In a
sense, this feature uses one waveform to model
the sound of another waveform. The result can be that
of filtering, echoing, reverberating, phase shifting,
or any combination of these effects.

For
example, convolving someone saying Hey
with a drum track (short full spectrum sounds such as
snares work best) will result in the drums saying
Hey each time they are hit.
With the proper impulses, any reverberant space can
be simulated. For example, if you have an impulse of
your favorite cathedral, and convolve it with any
audio, then the result would sound as if that audio
were played in that cathedral.
You can generate an impulse like this by going to the
cathedral in question, standing in the spot where you
would like the audio to appear it is coming from, and
generating a loud impulsive noise, like a snap
or loud click. You can make a stereo
recording of this click from any location
within the cathedral. If you used this recording as
an impulse, then convolution with it will sound as if
the listener were in the exact position of the
recording equipment, and the audio being convolved
were at the location of the click.

What
is an impulse response fileAn impulse response file is the
data by which every other sample in your waveform
will be multiplied. If the impulse is a single sample
of a full volume tick, then the
convolution of that impulse with any audio data will
just be that audio data itself. If that tick
is at half volume, then the original audio data will
be reproduced at half volume.

If
there are several ticks, descending in amplitude over
time, such as one tick every 100 milliseconds, and
half as loud as the previous tick (fig. 2), then the
result of convolution (fig. 3) with some audio (fig.
1) will be that sound echoed with 100ms between each
echo, and each echo at half the volume of the
previous echo.

fig. 1

fig.
2

fig.
3

Another
interesting use for convolution is to generate an
infinite sustained sound of anything. For example,
one singing aaaaaah for one second could
be turned into thousands of people singing aaaaaah
for any length of time by using some white noise.

To
get a feel of convolution, load up and play with some
of the sample Impulse files on this page using your
favorite hardware or software convolver.
Enjoy !

A
bit more about convolutionImagine the following example :
An audio file containing 8 samples (X0 to X7) convolved
with an impulse file containing 4 samples (i0 to i3).
That would give the following table :