Audio Tool · Web Audio API · Operate Surface · 2026 · Solo — Web Audio API DSP, silence-detection algorithm, ID3v2 binary encoder, waveform visualization, Operate surface design, TDD (32 tests), Vercel production deployment

Pod Chapter

Browser-local podcast chapter detector: RMS energy windowing, EMA smoothing, adaptive 30th-percentile silence threshold, chapter boundary extraction, and ID3v2.3 CHAP frame binary encoding — all implemented from scratch in TypeScript without any audio or ID3 library dependency.

The problem

Adding chapter marks to a podcast MP3 requires either paying for desktop software (Hindenburg, Descript) or hand-authoring JSON timestamps. No browser-local tool runs actual audio signal processing to detect natural chapter breaks and write them into the MP3 binary as standard ID3v2 CHAP frames. Pod Chapter fills that gap: real PCM analysis, not a remote API call.

Architecture

Key decisions

01

Adaptive threshold

30th percentile of RMS values per file instead of a fixed dB floor — handles whisper podcasts and loud interviews without config.

02

EMA smoothing first

Exponential moving average (α=0.05) before thresholding suppresses transient noise spikes without requiring a bandpass filter implementation.

03

Boundary at gap midpoint

Chapter boundary placed at gap midpoint (not gap start) so neither chapter loses audio content at its boundary edge.

04

ID3v2.3 over v2.4

ID3v2.3 chosen for broadest podcast app compatibility (Apple Podcasts, Overcast, Pocket Casts) — v2.4 uses syncsafe sizes in CHAP which many parsers mishandle.

05

Zero library dependency

All binary encoding written from scratch for hiring signal and to avoid AGPL/GPL library contamination from the VoiceStudio-adjacent audio tooling space.

Metrics

32 tests
TDD tests (17 audio-engine + 15 ID3 encoder)
0 libs
Third-party audio/ID3 dependencies
0/10
Slop audit score