Image tool

Frame-by-Frame Player

Choose a browser-playable local video, pause on a moment, and move forward or backward using an assumed frame rate. Nothing is uploaded.

In-browser processingNo account requiredPrivacy details ↗

No file selected

Up to 200 MB. Browser-decodable local files only; nothing is uploaded.

Step seeks by frames ÷ assumed fps. It may repeat or skip decoded frames, especially for variable frame rate video. This does not detect the source fps or guarantee exact frame stepping.

Playback time
—
Displayed decoded-frame time
Not observed yet

A QUICK WALKTHROUGH

How to use this tool

  1. Choose one local video up to 200 MB.
  2. Set the assumed frame rate, then use playback, the timeline, or a time jump.
  3. Pause and step by 1, 5, or 10 estimated frame intervals.

Honest frame stepping

Stepping pauses the video and seeks by the selected number of frames divided by your assumed fps. It is time-based approximation, not indexed frame decoding. Variable frame rates, keyframes, and browser seeking can repeat or skip frames. When available, requestVideoFrameCallback reports the displayed decoded-frame timestamp; otherwise the page shows playback time.

Local playback only

The selected file stays on this device. Only finite-duration videos that your browser can decode are supported. File extensions do not guarantee codec support. This tool has no YouTube or URL input, upload, video export, frame-image export, loop points, or filmstrip.

GOOD TO KNOW

Common questions

Is every step exactly one decoded frame?

No. Set the known source frame rate for a closer approximation. A displayed-frame timestamp is an observation, not a guarantee of exact stepping.

Is my video uploaded?

No. A local object URL connects the chosen file to the browser video player.