Frame-consistency inspector

This app inspects a short generated video clip for temporal coherence: how much the picture changes from one sampled frame to the next. A large jump marks flicker, a morphing object or a cut; a smooth curve marks steady motion. The video is opened only in this browser tab, and nothing you load is uploaded or sent anywhere.

Load a video

No video loaded yet.

Analyse
Choose a video file to begin.
Timeline

The dashed line is the peak threshold. Dots mark local peaks above it. Click anywhere on the timeline to seek the video to that point.

Top peaks

These are the five largest differences in the whole clip. They do not change with the threshold slider above, which only decides which points are marked on the timeline.

Peaks appear here once you analyse a video.

What the curve tells you

A steady camera pan usually gives a smooth, gently raised curve, since most pixels shift a little from frame to frame. A hard cut between two different shots usually gives a single sharp spike, since almost every pixel changes at once. Flicker from a generative video model often gives a jagged, uneven floor: the difference never settles low, because small details are redrawn slightly differently in every frame even when nothing in the scene truly moves. These are patterns to watch for, not fixed numbers, since the right scale depends on the clip, its resolution and the amount of motion in it.

How it works

The app pauses the video and moves its playback position forward in steps of a tenth of a second (seeking). After each move, it waits for the browser to report that the seek is complete, or for a short fallback delay if that report does not arrive. At each step, the current picture is drawn onto a small hidden canvas, about 160 pixels wide, and read back as grey values, a weighted average of red, green and blue chosen to match how the eye judges brightness. The plotted difference at each point is the average size of the change in every pixel between that frame and the one before it, on a scale of 0 to 255. The difference image in the peaks panel is the same per-pixel change, made brighter so that small changes are visible, not a claim about the true size of the change.

The app bundles no data of its own and calls no external service. The video file you choose stays in this browser tab and is discarded when you reload the page or choose another file.