Sainted Word Records · audio-reactive video engine
I build tools that turn sound into picture.
I'm Kai Djuric — a builder at the intersection of music and software. My work gives musicians, DJs, and labels a way to turn any track into a music video with zero budget, zero video-editing skills, and zero backend.
The engine
A music visualizer with a composer's taste.
Most visualizers just react to the spectrum. The Sainted Word engine classifies every asset you give it — motion, brightness, hue — and routes each one to the band of the song that suits it. The composition is algorithmic. The score is the audio.
Drop in a track, pick a look, and export a finished MP4 straight from the browser. No ffmpeg, no server, no transcode — just one HTML file and your library.
15.6k
engine HTML (gzipped)
5
FFT bands
6
layers per composition
27
library items · 0 backend
5 visual languages
Same engine. Five completely different looks.
Five single-file variants, each with its own aesthetic. Same controls, same library, same MP4 export — just a different mood.
Neon
Electric magenta / cyan. Hot club, screen-blend stacks, sharpened easings, scanlines. Cuts on the beat, not after it.
screen blend · 3 reactors · sharp
02 · FILMFilm
Sepia / 16mm grain. Handheld warm tone, per-pixel grain, soft vignette, slow drift. Smooth easings throughout.
sepia · grain · smooth
03 · GRIDGrid
Monochrome / hard cells. 2×2 + half-cell composition, snap to the beat. Binary easings — no in-between, only on or off.
grayscale · hard cells · snap-beat
04 · SMOKESmoke
Cream warm / heavy blur. Everything at 0.5 opacity, slow drift, blurry and slow. The song moves through fog.
cream · heavy blur · 0.5 opacity
05 · HALLUCINATIONHallucination
RGB shift / scanline body. Every reactor maxed. RGB channel shift, lighter and difference blends, noise canvas overlay.
rgb shift · difference · noise
ALL FIVEOpen the engine ↗
The full Sainted Word Records project — the engine, the versions, the library, and the story behind it.
Under the hood
Built on the web platform.
Adaptive beat detection
Bass-energy tracker with an adaptive threshold. Locks the BPM, fires an envelope on every kick, decays gracefully. Works on techno, jazz, and an ill-advised spoken-word record.
Layered composition
Six layers, each with its own blend mode and a stack of reactors. Scale to bass, hue to mids, position to the spectrum's edge. Feature bindings, not keyframes.
Library as palette
Drop a folder of videos, GIFs, or images. Each is auto-classified by motion, luma, and mean hue, then routed to the role that suits it. Different song, different look — same library.
Native MP4 export
Canvas captured via MediaRecorder at 30 fps with H.264 + AAC, 8 Mbps. No ffmpeg.wasm, no server, no transcode. The file you download plays in any editor.
Fresh look every remap
The auto-mapper picks from top candidates weighted by score and shuffles the blend order. Each RE-MAP click yields a new composition. Hit it until something sticks, then record.
Single-file, zero install
The whole engine is one HTML file. Drop it in a folder, open it in Chrome or Safari, it runs. No node_modules for the user — the Vite project is just for development.
Stack
No native dependencies. Just a browser and your library.
Let's make your music move.
Built by a musician for musicians — if you have audio and a release date but no video budget, the engine is yours. Open it, drop in a track, and hit record.