Phase Shaper — User Guide
Creative convolution engine with 12 synthetic impulse-response generators for smearing, resonance, rhythmic tails, noise fields and stylized glitch textures.
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.
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:
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
- Select exactly one Sound.
- Run
Phase Shaper.praat. - Choose one of the 12 modes.
- Start with Medium; presets override both Intensity and Wet/Dry.
- Leave Trim_to_original off when you want to hear the full convolution tail.
- For mono sources, keep Stereo_output on if you want the built-in 15 ms pseudo-stereo version.
12 IR modes
| Mode | IR construction |
|---|---|
| Hyper-Dispersion | 3 × Intensity s linear chirp from 50 Hz to 80% of Nyquist, with linear decay. |
| Quantum Rain | 2 × Intensity s Gaussian noise gated by a sinusoid at 15 × Intensity Hz, under exponential decay. |
| Fractal Zap | 0.5 × Intensity s accelerating/FM sinusoidal texture; modulation rate 500 × Intensity Hz; quadratic fade. |
| Reverse Black Hole | 1.5 × Intensity s Gaussian noise with an exponential swell toward the end. |
| Alien Resonator | 1.5 × Intensity s inharmonic four-sine chord at base 400 × Intensity Hz with ratios approximately 1, √2, √5 and √10, exponentially decaying. |
| Cyber Glitch | 0.4 × Intensity s two-level square-like chirp, then linearly faded. |
| Bouncing Ball | 1.2 × Intensity s thresholded cubic-phase sinusoid creating increasingly dense impulse-like events. This is an acceleration gesture, not a gravitational bounce model. |
| Deep Space | 4 × Intensity s low-passed Gaussian noise. Cutoff is max(50, 150/Intensity) Hz, with a curved decay. |
| Spectral Freeze | 6 × Intensity s low-level Gaussian noise with very slow decay. “Freeze” is descriptive: the IR is long, not mathematically infinite. |
| Demon Growl | 1.2 × Intensity s Gaussian noise amplitude-modulated at 25 × Intensity Hz and one-third of that rate, with exponential decay. |
| Shattered Glass | 0.25 × Intensity s bright stochastic high-frequency texture around min(12 kHz, 0.9 × Nyquist), with very rapid decay. |
| Tape Deterioration | 2 × 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
| Preset | Intensity | Wet/Dry |
|---|---|---|
| Custom | Form value | Form value |
| Subtle | 0.5 | 50% |
| Medium | 1.0 | 75% |
| Heavy | 1.5 | 90% |
| Extreme | 2.5 | 100% |
The selected mode is not changed by a preset. Trim, stereo output, scale peak and display/play switches also remain independent.
Controls
| Control | Default | Meaning |
|---|---|---|
| Intensity | 1.0 | Mode-specific master parameter controlling IR duration and, depending on mode, density, rates or aggression. |
| Wet_dry_percent | 100 | Linear dry/wet blend after convolution; internally clamped to 0…100. |
| Trim_to_original | Off | Off keeps the convolution tail. On extracts exactly the original duration from the wet result before mixing. |
| Stereo_output | On | For 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_peak | 0.95 | Final target peak, valid range >0…1. |
Processing pipeline
- Prepare a wet source and dry copy. With Stereo_output on, multichannel relationships are preserved; with it off, multichannel input is converted to mono.
- Synthesize the selected mono IR at the source sample rate.
- Remove DC in flagged stochastic IRs, then peak-normalize the IR to 0.99.
- Convolve the working source with the mono IR using Praat's
Convolve: "sum", "zero". - If requested, trim the wet signal to original duration.
- When dry contribution is non-zero, zero-pad the dry signal to the wet duration if necessary and mix
wet × convolution + dry × source. - For a mono source with Stereo_output on, keep the left channel exact and build the right channel as a 15 ms delayed copy.
- Target-normalize the complete output to
Scale_peak.
Channels, randomness, duration and level
- Native multichannel: preserved when Stereo_output is on; the same mono IR is convolved with every channel.
- Stereo_output off: multichannel sources become mono.
- Mono + Stereo_output on: output becomes pseudo-stereo with a 15 ms delay only in the right channel.
- Duration: with Trim off, approximately source duration + IR duration (minus one sample in ordinary discrete convolution). With Trim on, original duration.
- Randomness: Quantum Rain, Reverse Black Hole, Deep Space, Spectral Freeze, Demon Growl and Shattered Glass use unseeded Gaussian randomness; repeated runs can therefore differ.
- 0% wet: the mixed signal becomes dry, but the final
Scale peakstill target-normalizes it. It is therefore not an amplitude-identical bypass. - Final level: every non-silent result is target-normalized to
Scale_peak.
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.