In SoundHack, convolution is used to combine aspects of two soundfiles (an input and an impulse response) by multiplying their spectra together to form a third sound file. As a result, frequencies common to both will resonate and be reinforced in the output.

Sound is processed 'block by block' with each block being the size of the impulse response. The length of the block may be specified in the convolution window. 

  SoundHack seems to work best when the impulse response is relatively short (due to ram memory).

If the impulse is too long a message box may appear that declares there is not enough memory to process. By either increasing the memory to the program or shortening the 'length used' of the impulse response, this problem will be alleviated. 

Convolution  Sound Examples:
As a basic example, here is a convolution of a 5 second noise file (impulse) and a short voice sample of the word "dog" (impulse response). 
  White Noise.    Dog    Noise*Dog (convolved). 
Because noise contains a random distribution of all frequencies, those frequencies common to the impulse sound of the voice get "mapped" over the noise. Essentially, the noise is filtered by the voice resulting in a sound which may sound like a stretched, but blurred version of the voice.