97ffc426fe
Take-two forensics: rawvideo carries no per-frame timestamps — ffmpeg stamps frames by ARRIVAL at the declared fps, so a 2fps producer yields a 30x time-lapse, 0.6s-long '60fps' file with zero errors anywhere (explains the creator's accelerated webcam motion + truncated length observations). The pump now logs frames-produced-vs-target per 5s with the avg render/submit split — take three names the slow stage instead of us theorizing. FramePumpTests 9/9. (Multi-commit working unit: remaining declared files land in the next commit.)