Warren Labs — Impulse Response capture
Capture the reverb of a real space (a hall, your studio, that old-school auditorium) as an
impulse response (IR) you can load into a convolution reverb. The method is a **log sine
sweep + deconvolution** — the studio standard, robust against background noise.
Needs only Python 3 + numpy (the script has its own WAV reader/writer). Verify the math:
python3 ir_capture.py selftest # → in-band IR correlation ~0.995 = PASS
What you need
- A speaker in the room (a decent full-range monitor or PA — one speaker, mono).
- A microphone at the listening position (one mic = mono IR; a spaced/stereo pair = stereo IR).
- A way to play a WAV through the speaker and record the mic — your DAW is perfect.
- A quiet room (turn off HVAC/fridges; the quieter, the cleaner).
Steps
1 — Make the sweep
python3 ir_capture.py make-sweep --out sweep.wav --seconds 8 --sr 48000
Use a longer sweep (--seconds 10–15) for big/loud spaces — more noise immunity. Keep the
project sample rate consistent everywhere (48000 is a good default).
2 — Play + record
- Put
sweep.wavon a track and route it to the one speaker. Set a healthy but clean level
(loud enough to dominate the room noise; not so loud the speaker/room distorts).
- Arm the mic track and record while the sweep plays. Let it run through the 1 s of silence
at the end so the room's tail is fully captured.
- Export the mic recording as a WAV at the same sample rate →
take.wav
(16/24/32-bit PCM or 32-bit float all work; mono or stereo).
3 — Deconvolve into an IR
python3 ir_capture.py deconvolve --sweep sweep.wav --response take.wav --out my_room.wav
Out comes my_room.wav — the room's impulse response (mono or stereo, matching your recording),
trimmed to the direct-sound onset and normalized. Options:
--length 4.0keep a longer tail (big halls)--reg-db 70cleaner/softer if the capture was noisy (higher = more smoothing)--predelay 0.01keep more air before the direct sound
4 — Use it
Load my_room.wav into any convolution reverb (Warren Labs Vault when it ships, or any IR
loader) and you're in that space.
Tips
- One speaker, mono. For a stereo IR, use a stereo/spaced mic pair — not two speakers.
- Levels: watch for clipping on the mic input; the sweep should sit well above the room hiss.
- Don't move during the take; keep the room still (no talking, no footsteps).
- Multiple positions make richer libraries — capture a few mic spots and pick the best.
- No speaker? A sharp transient (balloon pop, starter pistol) is a cruder fallback: record it
and just trim/normalize the recording by hand — lower fidelity, no deconvolution needed.
Save your spaces
Each my_room.wav is a portable file — name them (studio_live.wav, school_auditorium.wav),
keep them in a folder, and that's your personal reverb library. (When Vault ships, the in-plugin
About panel will link here for these instructions, and users can load their own saved spaces.)