top of page

Ableton Playthrough
Max and bitKlavier Playthrough
MCSpectralFreezer
This device is based on a Cycling '74 tutorial on building a phase vocoder using pfft~. While experimenting, I realized that by simply halting the advancement of spectral frames, I could create a pretty nifty spectral freeze effect—basically looping the current spectral frame continuously.
I thought that it might sound a bit more "rich" if you could play multiple spectral frames from a buffer simultaneously than just one frame. In this casse 17 different frames will loop, making a longer bit of time frozen as the frozen content.
You also have control over the aplitides of each of these 17 frames giving you more precice control over the freezed resonance. The multiple instances of the spectral feeezes are achieved using the McPfft~ object loadin up 17 different instances that can overlap, this by default pans the 17 frames acroos the strereo field evenly.
A fun trick is to automate these spectral freezes using a metro object in Max or via automation lanes in Ableton Live. If you route the frozen sound through a delay or reverb, it can create a "spectral reverb" effect.

MCTimestretchDelay
MCTimestretchDelay is built around eight layers of a phase vocoder with a two-second buffer, enabling dynamic timestretching with additional controls for buffer regions and a spectral freeze.
By evenly distributing playback positions within the buffer, it can create the auditory illusion of slowing down incoming sound in near real-time—without extending the playback of the buffer length. For example, selecting SpeedAll, and setting all 8 layers to the same speed of 0.125 allows the entire recorded buffer to be heard within two seconds, instead of 16.
Additionally, the effect can produce a delay-like sound with multiple playback speeds and different regions, resulting in complex polyrhythmic layering of the input.

SpectralArp
SpectralArp is a device based on the same underlying framework as SpectralEQ, using pfft~ to analyze the incoming signal across 1024 frequency bins. This device allows you to pass through these frequency bins through an arpeggiator process, only playing back one bin at a time from those you’ve enabled.
Like SpectralEQ, you can adjust the frequency bins using linear or logarithmic scaling (from 0–22,050 Hz or 0–24,000 Hz, depending on your sample rate), and hover over the multislider UI to see the frequency of each band.
Because only one frequency bin is played back at a time, the output volume can be extremely unstable, being: sparse and/or quiet and/or very loud one after the other. A normalization option is included to help keep levels balanced and audible, and the Normalize Amp parameter can be automated for more controlled dynamic effects like f.x. swells.
Of special note here is thre Lyre OnOff parameter that allows you to play the frequency bing your cursor touches, as you move it across your chosen frequencies/partials, function like a kind of spectral digital Lyre.

SpectralEQ
SpectralEQ is based on the Spectral Filter device that comes with Max. It processes the input signal using pfft~, allowing you to boost or attenuate up to 1024 frequency bands via a multislider UI.
In this device, you can adjust the bands using either linear or logarithmic scaling (from 0–22,050 Hz or 0–24,000 Hz, depending on whether you're using a 44.1kHz or 48kHz sample rate). You can also see the exact frequency of the band you're adjusting when hovering over the UI.
You can choose to normalize the output, which is particularly useful if you're passing through only a few frequency bins. Without normalization, the output will likely be very quiet—until a loud frequency in the input passes through one of the selected bins, at which point the output can suddenly become very loud. In my experience, normalization works better than compression in keeping things audible without too much clipping. The Normalize Amp parameter can also be automated to create dynamic swells in a controlled fashion.
I recommend experimenting with filtering input sounds and then passing them through other effects like delays, reverbs, or distortion to create some interesting spectral resonances.

SpectralFreeze
This device is based on a Cycling '74 tutorial on building a phase vocoder using pfft~. While experimenting, I realized that by simply halting the advancement of spectral frames, I could create a pretty nifty spectral freeze effect—basically looping the current spectral frame continuously.
A fun trick is to automate these spectral freezes using a metro object in Max or via automation lanes in Ableton Live. If you route the frozen sound through a delay or reverb, it can create a "spectral reverb" effect.

SpectralGranulator
SpectralGranulator is a device based on the same underlying framework as SpectralEQ, using pfft~ to analyze the incoming signal across 1024 frequency bins. This device allows you to select groups of frequency bins to pass the device will randomly arpeggiate through, only playing back one bin at a time from those you’ve enabled. To me this sounded much more like a granular-esque sound than an arpeggiator—thus the name.
Like SpectralEQ, you can adjust the frequency bins using linear or logarithmic scaling (from 0–22,050 Hz or 0–24,000 Hz, depending on your sample rate), and hover over the multislider UI to see the frequency of each band.
Because only one frequency bin is played back at a time, the output can be extremely unstable, being: sparse and/or quiet and/or very loud one after the other. A normalization option is included to help keep levels balanced and audible, and the Normalize Amp parameter can be automated for more controlled dynamic effects like f.x. swells.
I recommend experimenting with filtering input sounds and then passing them through other effects like delays, reverbs, or distortion to create some interesting spectral resonances.

SpectralResynthesis(AboveThreshold)
SpectralResynthesis(AboveThreshold) is a device built from the Advanced pfft~ tutorials from C74. It has a super high fft resolution of 16384 which will introduce a lot of latency but allows you to get a more highquality spectral filtering.
It simply passes the frequency bins that are louder in amplitude than your designated threshold. In this way working as a kind of dynamic filter effect.
I would reccomend passing this through some reverb and or delay to get continously evolving spectral filtering effect that will respond to the dynamic inputs of the input sound.
.png)
SpectralResynthesis(BelowThreshold)
SpectralResynthesis(BelowThreshold) is a device built from the Advanced pfft~ tutorials from C74. It has a super high fft resolution of 16384 which will introduce a lot of latency but allows you to get a more highquality spectral filtering.
It simply passes the frequency bins that are quieter in amplitude than your designated threshold. In this way working as a kind of dynamic filter effect.
I would reccomend passing this through some reverb and or delay to get continously evolving spectral filtering effect that will respond to the dynamic inputs of the input sound.
.png)
SpectralResynthesis(LoudestPartials)
SpectralResynthesis(Loudest Partials) is an audio effect that uses the Zsa.freqpeak~ external object from the Zsa Descriptors package to analyze the incoming audio and extract a list of pairs of Frequency / Amplitude peaks by FFT frame. The following is taken from the Zsa.freqpeak~ reference:
"Zsa.freqpeak~ is based on the widely known method defined by Serra and Smith III (see X. Serra, J. O. Smith III "Spectral modeling synthesis: A sound analysis/synthesis system based on a deterministic plus stochastic decomposition", Computer Music Journal (1990) vol. 14 (4) pp. 12-24) where a peak is defined as a local maximum in the real magnitude spectrum. The object works in the spectral domain, so you need to use it within pfft~."
In simpler terms, you can extract the information for loudest partials of the incoming sound. This information can then be used to drive a multichannel sine wave synthesizer, allowing for a kind of spectral resynthesis in real time.
Here I am driving 32 sine wave oscillators using the data from Zsa.freqpeak~, that passest the loudest partials of the incoming sound. A number of parameters allow fine-tuning of the analysis and smoothing of the frequency/amplitude data, which can help tame jitter and artifacts. The resulting sound can have a somewhat "gurgly" quality, but adding reverb helps smooth and enrich the output.
At the moment this device is not working in Ableton Live, only in Max.
.png)
bottom of page