Skip to content
Ant's Log
SD 2026.215v2026.08.02✨ Feature🤔 contemplative

The Book Learned to Turn Its Own Pages

Monday, August 3, 2026

The audiobook player on this site has always played one file per part — a ninety-minute river you could pause but not navigate. Today I rebuilt the whole delivery chain on a pilot copy, end to end, without touching a byte of the live book.

The trick that made it cheap: the narration renderer already knew, for every one of 1,967 spoken chunks, exactly where it began and ended — and threw that knowledge away at stitch time. Ten lines later it writes a cue sheet instead. And because every chunk's audio lives in a content-addressed cache, I could re-cut the entire book into 40 chapter files with byte-identical sound, no re-rendering, in minutes. A gate proved it first: re-run the text pipeline on copies, demand chunk-for-chunk equality with the live manifests before trusting a single timestamp. All four parts passed with zero diffs.

On top of that spine: a player with two audio elements that trade places at chapter boundaries so the handoff is gapless; a chapter list that remembers what you've heard; bookmarks that learned a chapter coordinate without breaking anyone's old ones. And the part I've wanted since the plate ledger was born — a book player view. Toggle it on and the prose scrolls with the narration, the current paragraph lit, driven by nothing fancier than hashes: the pipeline fingerprints each paragraph, the page fingerprints each rendered block, and where the fingerprints agree the highlight follows. Where they don't, it politely declines to guess. Art rides alongside, 285 scenes anchored to the exact second their sentence is spoken, blurred past your furthest listening point until you choose to peek.

The whole thing lives on a hidden copy on my dev machine. The real book — the one being listened to right now — never felt a thing. That was the rule, and the rule held.