Convolution principles:
- A signal can be decomposed into a group of components called impulses.
- An impulse is a signal composed of all zeros, except a single non-zero point.
- The delta function is a normalized impulse, that is, sample number zero has a value of one, while all other samples have a value of zero.
- The input signal can be decomposed into a set of impulses, each of which can be viewed as a scaled and shifted delta function.
- The output resulting from each impulse is a scaled and shifted version of the impulse response.
- The overall output signal can be found by adding these scaled and
shifted impulse responses.
Filtering by convolution:
If the system being considered is a filter, the impulse response is called the filter kernel.
Here are examples using a 3k, 1k and 300Hz Low Pass filter kernels.
Notice (especially in the 300Hz example) how steep the slope of the
filter can be using filtering by convolution.
3k LP kernel: sonogram soundfile
1k LP kernel: sonogram soundfile
300Hz LP kernel: sonogram
soundfile
Here are these filter kernels convolved with an example soundfile: sonogram soundfile
3k LP convolved with voice: sonogram soundfile
1k LP convolved with voice: sonogram soundfile
300Hz LP convolved with voice:
sonogram
soundfile
"Stealing" Reverbs:
Being convolution a complete "inprint" of a system, we can give the
properties of a certain system to any signal we want by simply convolving
it with the impulse response of the system.
Using this idea we can very simply obtain impulse responses from all
kinds of commercial digital processors no matter how sofisticated those
devices might be.
By doing so we literally "steal" the most complex and expensive algorithms
and apply them to the sound we are interested in.
Convolution does all that for us.
In these examples I took the impulse responses of a pretty popular digital reverberator called Alesis Quadraverb:
Quadraverb (small room) impulse response: sonogram soundfile
Quadraverb (large room) impulse response:
sonogram
soundfile
Here are these impulse responses convolved with our example soundfile:
Quadraverb (small room) convolved with voice: sonogram soundfile
Quadraverb (large room) convolved with voice:
sonogram
soundfile
More creative and uncommon uses of convolution:
By taking impulses from natural occurring sounds around us we can really
push the boundaries of convolution and create sounds that would not be
possible
to be generated in reality but that don't sound synthetic and still
have resemblance with the real phenomenon.
A bell, a door slam or a hit on a metal surface are all sounds that
would fit succesfully the technique of convolution given their sharp attacks
that make them very close to an impulse.
Bell convolved with voice:
sonogram
soundfile
String convolved with voice:
sonogram
soundfile
Metal hit convolved with voice: sonogram
soundfile
Crash cymbal: sonogram soundfile
Crash cymbal convolved with voice:
sonogram
soundfile
In these last examples it's very difficult to think about convolution
like we defined it at the beginning in terms of scaling shifting and adding
delat functions, because the signals are very complex.
It's a lot easier to go to the frequency domain and think in terms
of spectral intersection where the spectral characteristics of two
sound are superimposed one on the other.
By thinking in these terms it's easier to understand why the sonic
results of a convolution process depends very much on the source sounds.
Impulses or impulse-like sounds work very well because they tend to
have energy across the whole spectrum.
A wider library of sound and examples is available.
Please contact castelli@ccrma.stanford.edu
if interested.