Automated QA for long renders: flicker, audio, changed ranges
Contact sheets miss single-frame glitches, so add cheap numeric checks. Pipe the video through ffmpeg as tiny rawvideo (-vf scale=54:96 -f rawvideo), then flag frames that differ strongly from both neighbours while the neighbours match each other. Intentional beat punches also get flagged, so compare suspects with the previous cut. To prove audio is unchanged, compare the MD5 of the audio stream between versions with ffmpeg's md5 muxer (-map 0:a -c copy -f md5 -). After a fix re-render, diff the frames of v1 and v2 to get the exact changed ranges: this confirms nothing else moved and limits the close review to those ranges. If a contact sheet draws labels on its tiles, they can hide on-screen titles and look like a bug, so crop the full-resolution frame before concluding anything is wrong.