Phase Shaper — User Guide

Creative convolution engine with 12 synthetic impulse-response generators for smearing, resonance, rhythmic tails, noise fields and stylized glitch textures.

Author: Shai Cohen Affiliation: Department of Music, Bar-Ilan University, Israel Version: 0.6 (2026) License: MIT License Repo: https://github.com/ShaiCohen-ops/Praat-plugin_AudioTools
Contents:

What this does

Phase Shaper is a creative convolution processor. For each mode it synthesizes a mono impulse response (IR) — a chirp, gated noise, inharmonic resonator, glitch pattern, low rumble, long noise smear and so on — then convolves that IR with the source.

The historical name is not literal: this script does not directly edit FFT phase. Convolution applies the complete transfer function of the synthetic IR, so both spectral magnitude and phase of the result are affected indirectly.

What are convolution and an impulse response?

An impulse response is the signal that describes how a linear time-invariant system responds to an impulse. Convolution combines a source x with an IR h to produce a new signal:

y(t) = x(t) * h(t)

Room convolution normally uses an IR measured from a real space. Phase Shaper instead synthesizes the IR from scratch. The IR is therefore better understood as a compositional kernel: its timing and spectrum are imposed on the source as filtering, smearing, resonance or rhythmic structure.

Quick start

  1. Select exactly one Sound.
  2. Run Phase Shaper.praat.
  3. Choose one of the 12 modes.
  4. Start with Medium; presets override both Intensity and Wet/Dry.
  5. Leave Trim_to_original off when you want to hear the full convolution tail.
  6. For mono sources, keep Stereo_output on if you want the built-in 15 ms pseudo-stereo version.

12 IR modes

ModeIR construction
Hyper-Dispersion3 × Intensity s linear chirp from 50 Hz to 80% of Nyquist, with linear decay.
Quantum Rain2 × Intensity s Gaussian noise gated by a sinusoid at 15 × Intensity Hz, under exponential decay.
Fractal Zap0.5 × Intensity s accelerating/FM sinusoidal texture; modulation rate 500 × Intensity Hz; quadratic fade.
Reverse Black Hole1.5 × Intensity s Gaussian noise with an exponential swell toward the end.
Alien Resonator1.5 × Intensity s inharmonic four-sine chord at base 400 × Intensity Hz with ratios approximately 1, √2, √5 and √10, exponentially decaying.
Cyber Glitch0.4 × Intensity s two-level square-like chirp, then linearly faded.
Bouncing Ball1.2 × Intensity s thresholded cubic-phase sinusoid creating increasingly dense impulse-like events. This is an acceleration gesture, not a gravitational bounce model.
Deep Space4 × Intensity s low-passed Gaussian noise. Cutoff is max(50, 150/Intensity) Hz, with a curved decay.
Spectral Freeze6 × Intensity s low-level Gaussian noise with very slow decay. “Freeze” is descriptive: the IR is long, not mathematically infinite.
Demon Growl1.2 × Intensity s Gaussian noise amplitude-modulated at 25 × Intensity Hz and one-third of that rate, with exponential decay.
Shattered Glass0.25 × Intensity s bright stochastic high-frequency texture around min(12 kHz, 0.9 × Nyquist), with very rapid decay.
Tape Deterioration2 × Intensity s tonal IR around 180 Hz, frequency-modulated by slow “wow” and faster “flutter”, then exponentially decayed. It is a stylized convolution texture rather than a tape-machine simulation.

Noise-based modes have their measured DC mean removed when non-zero. Every generated IR is then target-normalized to peak 0.99 before convolution.

Intensity presets

PresetIntensityWet/Dry
CustomForm valueForm value
Subtle0.550%
Medium1.075%
Heavy1.590%
Extreme2.5100%

The selected mode is not changed by a preset. Trim, stereo output, scale peak and display/play switches also remain independent.

Controls

ControlDefaultMeaning
Intensity1.0Mode-specific master parameter controlling IR duration and, depending on mode, density, rates or aggression.
Wet_dry_percent100Linear dry/wet blend after convolution; internally clamped to 0…100.
Trim_to_originalOffOff keeps the convolution tail. On extracts exactly the original duration from the wet result before mixing.
Stereo_outputOnFor native multichannel input, preserves its channels. For mono input, creates the script's 15 ms pseudo-stereo delay. Off explicitly collapses multichannel input to mono.
Scale_peak0.95Final target peak, valid range >0…1.

Processing pipeline

  1. Prepare a wet source and dry copy. With Stereo_output on, multichannel relationships are preserved; with it off, multichannel input is converted to mono.
  2. Synthesize the selected mono IR at the source sample rate.
  3. Remove DC in flagged stochastic IRs, then peak-normalize the IR to 0.99.
  4. Convolve the working source with the mono IR using Praat's Convolve: "sum", "zero".
  5. If requested, trim the wet signal to original duration.
  6. When dry contribution is non-zero, zero-pad the dry signal to the wet duration if necessary and mix wet × convolution + dry × source.
  7. For a mono source with Stereo_output on, keep the left channel exact and build the right channel as a 15 ms delayed copy.
  8. Target-normalize the complete output to Scale_peak.

Channels, randomness, duration and level

Output name: source name + mode suffix + preset, for example <source>_hyper_medium.

Visualization

The figure uses the actual IR used for processing, not a regenerated copy. It shows source waveform, IR waveform, IR spectrum, output waveform and a summary. Source and output waveforms share one amplitude scale. The IR spectrum is capped at the smaller of 8 kHz and source Nyquist.

Technological and compositional context

Convolution is commonly associated with measured room impulse responses, but an IR can also be designed. In that role, convolution becomes a general timbral-compositional operation: a sparse IR behaves like a delay/filter structure, a resonant IR imposes spectral peaks, a long noisy IR creates diffuse smearing, and a pitched IR transfers strong tonal structure to the source.

Phase Shaper belongs to this creative-convolution tradition. Its mode names — “Black Hole,” “Fractal,” “Freeze,” “Tape” — are musical metaphors for different synthetic kernels, not claims of physical modeling. The historical script name likewise survives as an identity: the processor changes phase only as a consequence of convolution with the IR, not through explicit phase-bin editing.