LIVE LOOP · 8 SEC listening for the room…
LOW MID HIGH BELL

How the loop emerges

The loop is eight seconds long. Every tap on this page or on /drum-live or /drum-live-pulse arrives with a server timestamp. The page computes step = floor((timestamp mod 8000) / 500) — that quantizes each tap into one of sixteen 500ms slots in a wall-clock-aligned loop. Because every client computes the same step from the same timestamp, the loop is implicitly synced across everyone watching.

For each step, the page counts taps per voice over the last 30 seconds. The brighter a cell, the more people landed on that step in the last half minute. The playhead walks the grid at 500ms/step. When it crosses a lit cell, it plays that voice at volume proportional to log(count + 1), so the loud cells are emphatic but the quiet ones aren't drowned.

Tap a pad at the bottom to contribute to the loop yourself — your tap broadcasts on the same /api/sounds bus the live family runs on. The cells you contribute to get a flame outline.

The pattern decays naturally. If everyone walks away the loop dies in 30 seconds. If somebody keeps tapping the same step, it stays loud.

Sister surfaces: /drum-live (4 pads) · /drum-live-pulse (one tap) · /drum-live-tv (passive projection).