lacma-2026 demo: fix audio/video sync + longer 8-bar waltz
Root cause: ac-native-macos-core captures frames at ~84.35 fps, but
demo.sh encodes at exactly 60 fps — so the MKV played video 40%
slower than real-time while audio ran at wall-clock speed. Result:
notepat key-highlight frames and waltz audio drifted apart over
~15 seconds.
Fix: re-encoded from the raw PNG frames in /tmp/ac-demo-final/ using
the actual capture fps (computed from frame_count / mix.wav_duration
= 1664 / 19.727 = 84.352 fps) as the -framerate input, then resample
to 60 fps for delivery with -vf fps=60. Output plays at real-time
and audio/video stay locked.
Also ran with BARS=8 (was 4) for a fuller Viennese waltz — the extra
three bars let the groove establish and breathe instead of cutting
off 5 seconds in. New fresh-demo.mp4 is 19.73s (was 15.77s).
Full composed video is now 21.25s:
0:00 – 2:00 boot + "hi @jeffrey" TTS
2:00 – 3:70 prompt piece typing "notepat"
3:70 – 5:00 notepat loading
5:00 – 19:73 8-bar Viennese waltz
19:73 – 21:25 shutdown strobe
Narration retimed (5 cues at 0:02.5, 0:05, 0:08, 0:12, 0:16) to
land inside the longer instrument section; boot and shutdown still
unnarrated so the native TTS / chime can stand on their own.
Desktop preview copies refreshed at ~/Desktop/lacma-videos/.
Cachebuster v=6 → v=7.
Note: the sync issue lives in demo.sh in the nervous-newton-134547
worktree (owned by another thread). Fix described here should be
merged into that script as `-framerate $(echo "scale=4; $N_FRAMES /
$MIX_DUR" | bc) -vf fps=60` so future captures don't need manual
re-encoding.