Synths node
PaulStretch
Stretches any audio file up to 1000 times longer without changing its pitch, turning a two-second vocal snippet into an hours-long, slowly shifting ambient texture. The classic "everything sounds like a choir of angels" trick.

What it does
PaulStretch is a synth: it turns notes into sound. It takes audio in and gives audio out.
Try it
Stretch a spoken-word sample 20x and drown it in reverb for an instant soundscape bed.
Vocal SamplePaulStretch (20x)Reverb
Inputs and outputs
Inputs
- audio record in
Outputs
- audio out
Controls
Every control with a range can be driven by a modulator, a note, an audio level or a sketch.
| Control | Range or options | Default |
|---|---|---|
| stretch | 1 to 1000 | 8 |
| paulWinSize | 2048 (46ms), 4096 (93ms), 8192 (186ms), 16384 (372ms), 32768 (743ms), 65536 (1.49s), 131072 (2.97s) | 4 |
| phase rand | 0 to 1 | 1 |
| pitch | -24 to 24 | 0 |
| finetune | -100 to 100 | 0 |
| freq shift | -1000 to 1000 | 0 |
| detune | 0 to 100 | 10 |
| volume | 0 to 2 | 0.800000012 |
| start | 0 to 1 | 0 |
| end | 0 to 1 | 1 |
| position | 0 to 1 | 0 |
Example patch
This patch wires PaulStretch to what it needs and shows the result. Download it, then use File, Open in Infinite, or read it here: it is plain text.
infinite-patch 1
rev 2
# PaulStretch: a starting patch for the PaulStretch node
node 1 Synths PaulStretch
id node
pos 520 300
end
node 2 Synths Oscillator
id in0
pos 0 300
end
node 3 Utility Audio Out
id speakers
pos 1080 300
end
aud node 0 in0
aud speakers 0 node