Showing posts with label convolution. Show all posts
Showing posts with label convolution. Show all posts

Thursday, 14 August 2014

Ethereal Reflections

Reverberation Like Effects With Enveloped White Noise 

About half way through The Chase there is a pause where the sound goes very much more quiet and distant. This was a pure 'I wonder if that will work' moment for me. The effect was done not by a change in synthesis parameters, or adding an effect in the traditional sense - it the sound is nothing but an effect. It was done using impulse response reverberation using an white noise envelope.

convoll=sf.Multiply(sf.WhiteNoise(beat*4.0),sf.NumericShape((0,0),(beat*0.5,1),(beat,0.1),(beat*4,0)))
convolr=sf.Multiply(sf.WhiteNoise(beat*4.0),sf.NumericShape((0,0),(beat*0.5,1),(beat,0.1),(beat*4,0)))
left13 =reverberate(+left12,convoll)
right13=reverberate(+right12,convolr)

The Chase:
Normally we think of capturing an impulse response. We do this from recording in a space (an abandoned factory for instance) or from the output of a classic reverberation unit. How about designing one from scratch to produce exactly the effect we want?

I have continued with these ideas. Maybe the most extreme example is the use of 'diamond shaped' white noise signals in convolution for the stretch effect in Invasion:

rLen=20480
ns=sf.NumericShape((0,0),(rLen/2,1),(rLen,0))
convoll=sf.Multiply(+ns,sf.WhiteNoise(rLen))
convolr=sf.Multiply( ns,sf.WhiteNoise(rLen))

wleft =reverberate(left,convoll)
wright=reverberate(right,convolr)

Invasion: