Effect 13 of 15 · Pedals
Delay: what you played, again
The signal is held for a set time and then played back. Feedback sends each repeat round again, a little quieter and a little darker.
Play it alone
Signal into the board
Use headphones. With speakers, a microphone hears the board’s own output and sends it round again: that loop is feedback, and it howls. Turn the output volume down before you press Start.
The test signals are synthesized by this page, sample by sample. Your instrument is asked for only when you press Start with “Your instrument” chosen, with the browser’s echo cancellation, noise suppression and automatic gain control switched off.
Clipping: the output reached full scale. Turn a level down.
- Sample rate
- not started
- Processing latency
- not started
- Output latency
- not started
- Input latency
- not started
- Reported total
- not started
Browser audio has latency: you hear each note a little after you play it. These are the browser’s own figures and they leave things out.
The delay, alone
In, this one pedal, out. Drag a knob sideways, or focus it and use the arrow keys or the wheel. The whole board has the rest.
Delay
Time380 msFeedback35%Tone3 kHzMix30%
The signal
What it does to the signal
A delay stores the signal and plays it back after a set time, mixed with the signal as it is played now. Fed back into itself, the delayed signal repeats, each repeat quieter than the last.
Here the input goes two ways. One way is the dry path, straight to the output. The other goes into a loop: through a low-pass filter, which is the Tone knob, into a delay line, and out to the output as the repeats. Part of what leaves the delay line, as much as Feedback sets, goes back to the start of the loop. Every repeat has therefore been through the delay once more than the one before, been multiplied by the feedback once more, and been through the filter once more: later, quieter and darker.
The Web Audio specification requires a delay inside a loop to be at least one render quantum long, 128 samples, which is 2.7 ms at 48 kHz. The shortest time this knob offers is 40 ms.
General definition: Wikipedia, “Delay (audio effect)” (revision 1368297557, read 2026-09-28). Everything on this page about how this pedal works describes this page’s own code. It is built from standard Web Audio nodes.
The graph
The graph, drawn.
audiocontrol: moves a setting, is never heard
A loop of standard nodes: a sum, a filter, a delay, and a gain leading back to the sum.
The knobs
Every knob, in real units.
| Knob | Range | Starts at | What it changes |
|---|---|---|---|
| Time | 40 ms to 1.2 s | 380 ms | The time between what you play and its first repeat, and between each repeat and the next. |
| Feedback | 0% to 90% | 35% | The share of each repeat that is sent round again. At 35% each repeat is 35% of the amplitude of the one before. |
| Tone | 800 Hz to 8 kHz | 3 kHz | The corner of a low-pass filter inside the loop. Every repeat passes through it once more than the last. |
| Mix | 0% to 100% | 30% | At 50 the dry signal and the repeats are both at full level. |
Measured
What the test measured
Rendered offline, then measured
- Switched off and rendered over 48,000 samples of the plucked-string signal, the output was identical to the input in every sample, and the pedal was not in the graph. [as described]
- Time 380 ms, Feedback 50%, Mix 50%. An impulse went in at time 0. The output was the impulse itself, then silence, then the first repeat starting 380.00 ms later (sample 18,240 at 48 kHz) and peaking at 380.02 ms. [as described]
- The second repeat carried 45.0% of the first one’s RMS level and the third 47.3% of the second’s. Feedback sets 50%; the tone filter in the loop takes the rest. [as described]
- The dry impulse came out at 1.000 of its input level: at Mix 50% both paths are at full level. [as described]
- A burst of white noise: with Tone at 8 kHz, 64.8% of the first repeat’s energy was above 3 kHz; with Tone at 800 Hz, 0.50%, and 0.001% of the second repeat’s. Each pass round the loop is another pass through the filter. [as described]
Rendered in an OfflineAudioContext at 48,000 Hz in Chrome/154.0.8037.58, 2026-09-29 01:07 UTC. The test is work the page’s builder ran, not something your browser does when you open this page.
Limits
- Feedback stops at 90%. The repeats always die away; the pedal cannot be made to run away with itself.
- Turning Time while repeats are sounding changes their pitch, because the delay glides to its new length and what is in it is stretched or squeezed on the way.
- There is no tempo and no tap. Time is milliseconds.
Where it goes in the chain
After the drive. GuitarPlayer’s guide to pedal order says delays come after the drive block “in 99% of cases”. Before a drive pedal, the repeats are distorted together with the notes played over them. The whole order, and the reasons, are on the signal chain page.
Method
What is computed, and what is read.
Computed here, nothing fetched
Every sound on these pages is computed in your browser by the Web Audio API: 9 of the 15 pedals are graphs of the engine’s standard nodes, 5 are AudioWorklet processors, the wah is both, and the 3 test signals are synthesized sample by sample. No recording is loaded and no data feed is read. The one request the board’s own scripts make is for their AudioWorklet module, a file on labs.llc; the pitch detector is the one the Tuner uses.
Every effect was rendered offline with a known signal and measured: 73 of 73 checks came out as described. Nothing was tested on a real instrument or audio interface, only one browser was used, and nobody listened: the tests measure numbers, not tone. The method, the table of checks and what the latency figures mean are on the about page.
Sources
The W3C Web Audio API 1.1 and Media Capture and Streams specifications (W3C Document License); RFC 9110 and RFC 3986 for the share link’s fragment; GuitarPlayer’s guide to pedal order, quoted briefly; Wikibooks, “Guitar/Effects Pedals”; and each effect’s English Wikipedia article at a named revision (CC BY-SA). All read 2026-09-28; none is fetched by the page.
What happens to what you play
Audio from your input goes into the audio graph and out to your output device, and nowhere else: it is not recorded, stored or sent. Presets and the board as you left it stay in this browser’s local storage. A share link carries the board after the #, which browsers do not send to servers.