In this post I’ll show you how to unleash the power of DSP (digital signal processing) to make your guitar sound like never before. The spectral delay is one of my very favorite effects, and I doubt that it can be achieved with any analog guitar pedal. It uses FFT analysis (fast Fourier transform) to create hundreds of sparks or stars that fall like raindrops or broken crystal. I just think it sounds beautiful.
The patch in this post was created by Frank Barnecht and posted on his website a few years ago. I use it here with his kind permission.The original package can be downloaded here (you can learn a lot more about FFT analysis by reading his post). EDIT : Frank Barnecht’s patch is based on a tutorial by Johannes Kreidler. He wrote a very good and comprehensive Pd tutorial available here.
So what is a spectral delay? “Spectral” refers to the spectrum of a sound, that is (roughly) the distribution of the frequencies it contains over the range of frequencies that the human ear can percieve. Every sound is made of (or can be reproduced by) many sine waves with different frequencies. A note played on a piano for instance is actually made of many sine waves added together : the fundamental and the partials (or harmonics).
Fast Fourier Transform analysis, named after french mathematician Joseph Fourier, is a method to find these individual sine waves in any sound. It can be used to find the spectrum of a sound. In Pd, FFT analysis outputs a lot of numbers describing the sound that’s being analysed. These numbers can then be used to perform resynthesis using the inverse Fourier Tranform. What’s interesting for us is that some processing can be done on the numbers between analysis and resynthesis.
In the spectral delay, we use FFT to cut the sound into very thin frequency bands. A different delay is then applied to each of these bands before resynthesis. If the length of the delay lines is very different from one frequency band to another, the result is that the original sound is scattered and you can hear all the partials (harmonics) ringing at different times.
Here’s a screenshot of the patch (though all the interesting stuff is in the abstration).
I encourage you to play with the different controls in the patch. You can obviously adjust the mix between dry and wet signal, but it will be much more interesting to change the value in the “del-sin” and “fb-sin” number boxes. These automatically create a sine wave of adjustable wavelength in the Delay and Feedback tables that are used between FFT analysis and resynthesis. You can also use the vertical sliders to set the entire table to a constant. The first horizontal slider between the Delay and the Feedback tables makes the delay deeper. All these controls are from Frank Barnecht’s original patch and I think they’re wonderful to help you understand what a spectral delay is. I have just added two sliders at the bottom that can be used to cut the higher frequencies (which sometimes sound too digital to me).
- Download my (slightly modified) version of Frank’s patch here.
- I suggest you listen to this sample first!