Add gentle shimmer or a layered ensemble effect with one to three modulated voices. Adjust rate, delay, depth, wet mix and trim live, then preview the actual processed WAV.
Your content stays on your device Free, with no account
Add movement. Build the ensemble. Local audio · no uploads
No file selected.
Up to 128 MiB per file; decoded audio up to 256 MiB (about 23 min mono / 11½ min stereo). Formats depend on your browser's decoder. Working audio and WAV exports use 48 kHz.
Choose audio to begin. Nothing plays automatically.
Source waveform
No audio loaded
Your waveform will appear here.
0:00—
Load audio to choose a section.
Click the waveform to seek the source; use Play/Pause, exact time or jump controls. Rate, delay, depth, voices, mix and trim change live. This source audition stops at the source end; create the WAV to hear its complete selected tail. Fixed-setting modulation is anchored to source time; live changes keep continuous phase.
0.00 s
Playback stopped.
Chorus settings
Change settings while playing to hear chorus live. Uncheck to compare original audio; exports always use the selected effect.
Speed of the pitch movement in the delayed voices. Slower settings give a gentle shimmer; faster settings give a more obvious wobble.
Center of the short delay sweep. It must stay at least 1 ms above depth so every voice reads past audio.
Amount each voice sweeps around the base delay. Zero depth gives a static short delay, not a dry bypass.
Blends original audio with the averaged delayed voices. 0% is dry before output trim; 100% is delayed voices only, with a short silent lead-in.
Applies to dry and wet output. Interpolation and boosts can change peaks; reduce trim if clipping is reported. No automatic limiter or normalization.
Voices use different modulation phases and are averaged, rather than added at full level. A single fully wet voice is vibrato-like.
The complete tail is at most about 50 ms. Keeping duration can cut the last delayed samples. Live source audition stops at the source end; the generated player includes a selected tail.
Quick sliders pause for exact values finer than their steps; your entered value stays usable. Presets include trim and clip-ending mode.
Planned output durationChoose audioDelay sweep and voice details appear here.
The original file stays unchanged.
Listening volume affects monitoring only. The result uses the selected clip-ending mode. Listening volume does not affect export.
Input up to 128 MiB; source and output float audio each have a 256 MiB limit. Output planning includes the optional short tail. Live changes are smoothed; changing delay or depth can briefly sweep pitch. The actual WAV applies current fixed settings, not a history of knob movements.
ACTUAL CHORUS WAV
Hear and download the result
Create a WAV to preview the actual adjusted file.
48 kHz · 16-bit PCM WAV · original channel count. Modulated short delays use cubic interpolation and linked settings, with no crossfeed or automatic stereo widening. Dry/wet blending can cause phase cancellation and coloration. No feedback, normalization or limiter. Clip-ending limits do not add a fade. Tags/artwork are omitted. Changes clear exports; Stop terminates the local worker.
A FEW SIMPLE STEPS
How to use Chorus
Choose or drop audio, or try the sample. Wait for filename, size and ready status.
Choose a preset or adjust rate, base delay, depth, voices, wet mix and output trim. Keep original duration or include the short chorus tail.
Press Play preview and change settings live. Seek with the waveform or transport controls; bypass processing to compare the original.
Create the chorused WAV, hear the actual complete result and download it. Changes invalidate previous exports.
PRIVATE BY DESIGN
Why use this tool?
Your audio is never uploaded to any server. Decoding, multi-voice chorus processing, playback and WAV encoding run locally in your browser with self-hosted code. No account, external model or audio history is required.
Tool inputs stay in your browser. Only your theme preference is saved on this device.
A few things worth knowing
How does chorus work?
Chorus blends original audio with one to three short delayed copies whose delay times move sinusoidally. The delayed voices use different fixed phase offsets and are averaged, not added at full level. A single fully wet voice is vibrato-like; multiple voices and dry blending create a layered sound. No feedback or automatic stereo widening is added.
How do delay and depth interact?
Base delay is 5–40 ms and depth is 0–10 ms. Each active voice sweeps between base minus depth and base plus depth. Base must be at least 1 ms greater than depth, so the processor reads past samples. Depth zero creates a static short delay; it does not bypass the effect. Rate is 0.1–5 cycles per second.
Do settings affect playback live?
Yes. Rate, delay, depth, voice weights, wet mix and trim update the playing local AudioWorklet without restarting, using short smoothing transitions and continuous oscillator phase. Delay/depth changes can briefly sweep pitch. Export applies current fixed settings, not a recording of knob movements.
What happens to stereo, mix and volume?
Source channels are processed independently with the same modulation, preserving channel count and relative balance without crossfeed. Mix is a linear dry/wet crossfade; 0% is original audio before output trim, and 100% is delayed voices only with a short silent lead-in. Blending can cause phase cancellation and coloration. Cubic interpolation or output boosts can change peaks; clipped samples are counted. No automatic limiter or loudness normalization is included.
Can I keep the tail or seek through the effect?
Keep original duration trims the last delayed samples. Include short chorus tail appends at most about 50 ms, including interpolation-edge allowance. Zero wet mix disables appended tails. Live audition covers the source section only; the actual WAV player includes a selected tail. Fixed-setting modulation is anchored to source time, so a seek matches that portion of a fixed-settings export. Live control history can differ.
What are the limits?
One mono/stereo source up to 128 MiB, decoded at 48 kHz within a 256 MiB float budget. Output has its own 256 MiB float budget, including a selected tail; large sources may need original-duration mode. Device memory can impose lower limits. Output trim is −24 to +6 dB. Live AudioWorklet requires a supported browser and HTTPS or localhost. Export is 48 kHz 16-bit PCM WAV; tags/artwork are omitted. Stop/edit/clear/replacement terminates the local export worker and discards stale results.