Spirals (Max for Live)
!!! LOAD TIME WARNING: Because the DSP for this device is written in gen~, it must compile all the code upon loading an instance in your project. This device uses over 160 allpass filters to properly emulate the tension of a physical spring, so loading up an instance may take a few seconds longer than other devices. On my computer, which is the lowest-end model of the M1 Macbook Pro, this takes about 15 seconds. This device is also not exactly light on the CPU. A few instances shouldn't cause your project to buckle, but think twice before using it on every single track in your project!
Spirals is a Max for Live device that uses a combination of phase dispersion, delay, and diffusion to make an effect that’s inspired by the distinct sound of classic spring reverbs.
Instead of using convolution, I opted to recreate the physical characteristics of a spring by looking at spectrograms of actual spring impulse responses, and using the DSP tools I had available to try to get as close to those as possible, while still offering a range of tweakability that simulated spring reverbs normally do not.
Here’s how it works. An incoming sound is fed through an initial high pass filter (controlled by the Input HP knob) to cut out some of the low frequencies, and then that signal is sent into two separate parallel processors. One processes only the high frequencies, and the other processes only the mids and low frequencies. Each of these signal paths has a phase disperser which uses 80 tuned allpass filters in series to smear the phase across the frequency spectrum to create the distinct “chirp” sound. This is very similar to the kilohearts “disperser” effect that we all know and love. The output of that is run through a delay, a simple diffuser made of comb filters and allpass filters, and then fed back into the phase disperser to create a feedback loop.
Each chain then runs through some gentle saturation, and then they are combined to be mixed back in with the dry signal at the level set by the Dry/Wet knob.
The LF Time knob lets you change the delay time of the low frequency delay line. The HF Time knob lets you do the same for the high delay line. The Timescale knob lets you scale both of these at the same time.
The Character knob lets you adjust the tuning of the phase dispersers, which changes the overall vibe of the spring from dark and loose, to bright and tight. The Decay knob lets you adjust the feedback amount of both delay lines. Higher decay settings result in longer reverb tails.
Tested and works in Live 10, 11 and 12.
Max for Live Device (.amxd)