SCENEGOD/scenegod
type-two 29694afda5 [m10-B] auto-cut to the beat + align film shots to downbeats
autoCutPlan()/autoCut(): given a beat grid and 2+ cameras, place camera cuts
on grid downbeats at a chosen bar cadence, cycling cameras so the same angle
never lands twice running, with a phase offset so a from-the-playhead run
doesn't open on the camera already live. Cut times come straight out of
gridTimes('bar') so a placed t IS a downbeat rather than a rounded neighbour.
Applied inside group() = one undo; refusals throw rather than half-apply.
UI: a scissors popover with cadence, range, per-camera checkboxes and a live
count that is literally the plan (previewed count == applied count).
FILM panel gains 'align to beat': snaps every shot's in/out to the nearest
downbeat, never reorders, clamps inside the scene, returns collapsing shots
untouched with a skipped list, and always names which grid it used.

Verified on scenes/music-video: 4 cuts at exact downbeats 3.749s apart
(2 bars at 128.02 BPM), cam2->cam3->cam4->cam1, one undo restores exactly.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-26 11:42:10 +10:00
..
web [m10-B] auto-cut to the beat + align film shots to downbeats 2026-07-26 11:42:10 +10:00
server.py [m9-C] beat detection + audio trim at mux 2026-07-26 00:13:40 +10:00