arthur/js
Your Name 5ac919b9d6 Audio-clocked playback for judging sync
Lip sync cannot be judged silently. extract.sh now pulls the audio track and
writes manifest.json alongside the frames; the page reads the true extraction
rate from it rather than assuming one, since a guessed fps desynchronises
picture from sound - the one thing this view exists to show.

Audio is the clock: frame = floor(currentTime * fps). A slow render loop drops
frames instead of drifting, and half/quarter speed work via playbackRate with
the picture following for free. Scrubbing, stepping and clicking a thumbnail
all seek the audio too.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-24 14:53:09 -04:00
..
app.js Audio-clocked playback for judging sync 2026-09-24 14:53:09 -04:00
landmarks.js roto: video -> take file builder with interactive tuning 2026-09-24 14:38:07 -04:00
mathutil.js Frame removal for plates; mouth keeps every frame 2026-09-24 14:51:15 -04:00
pipeline.js Frame removal for plates; mouth keeps every frame 2026-09-24 14:51:15 -04:00
raster.js roto: video -> take file builder with interactive tuning 2026-09-24 14:38:07 -04:00
selftest.js Frame removal for plates; mouth keeps every frame 2026-09-24 14:51:15 -04:00
synth.js roto: video -> take file builder with interactive tuning 2026-09-24 14:38:07 -04:00
take.js Audio-clocked playback for judging sync 2026-09-24 14:53:09 -04:00