Shepard tone

Layer octave-spaced voices to create a pitch that appears to rise or fall forever.

ready

node examples/shepard.js up 15s
dir=<up|down>
movement direction
wave=<type>
sine, triangle, square, or sawtooth
rate=<octaves/s>
movement speed
-d, --duration <time>
run time (CLI accepts s/m/h suffixes; default: 30s)
Graph
Octave bank → Gaussian gains → Destination
Input
Direction, rate
Output
Pitch illusion

This is the Shepard tone illusion online: octave-spaced voices fade in and out so the pitch seems to rise or fall forever without ever settling on a top or bottom note. Play it in the browser to hear the auditory illusion, or run the Node CLI to render the same infinite tone for a demo or a test file.