June 13, 2026 1 min read

Ambify

Personal project2025Web AudioAudio DSPNext.jswavesurfer.js

Loading…

the idea

The goal behind Ambify was simple: take any sound and turn it into an ambient texture, in the browser, with as few controls as possible.

the engine

The audio file is decoded with the Web Audio API and sliced into short grains, 50 to 200 milliseconds each, spawned at random points within a start and end region you choose. Grain size, density, playback rate, detune and attack/release shape the texture. Everything then runs through a convolution reverb whose impulse response is generated in code, so the decay can be changed on the fly.

the interface

I built a layout-only alpha first to work out the controls, then added the audio engine in the beta. The waveform is drawn with wavesurfer.js so you can see the region grains come from, and the dials are custom components rather than stock sliders.

NEON DRIFTA. KOLEE
0:00-3:34