agentic-video Gallery

Find a short frozen picture in a moving clip

Sync and qualityScreen recordingTool missed
0:20CC0 · NS2000000000

Proof frames

Click a frame to seek

Tool calls

2 calls · agentic-video 0.3.1
check_frame_cadenceimac · 448 ms

Arguments

{
  "source": "$CLIP"
}

Result

{
  "ok": true,
  "data": {
    "frame_rate": 30,
    "frames": 600,
    "held_frames": 321,
    "ranges": [],
    "total": 0
  }
}
frame_atimac · 338 ms

Arguments

{
  "source": "$CLIP",
  "time_sec": 14.408333
}

Result

{
  "ok": true,
  "data": {
    "frame_time_sec": 14.4,
    "width": 640,
    "height": 306,
    "source_width": 640,
    "source_height": 306,
    "crop": null,
    "scale": 1,
    "file_path": "<cache>/025b581ddefabd784b05/frame_at/frame_at_d6747d9be7e78a61.png",
    "tool_file": {
      "_tag": "ToolFile",
      "name": "frame_at_d6747d9be7e78a61.png",
      "mimeType": "image/png",
      "encoding": "base64",
      "data": "<82416 base64 chars dropped>",
      "byteLength": 61810
    }
  }
}

Question and answer

Question
Is there a freeze in this clip?
Answer
check_frame_cadence listed no stretch of repeated frames in this clip.
Tool returned
[]
Truth
[14.4]
Check failedprecision 0.00 (min 1), recall 0.00 (min 1), tolerance 0.066667s

How it was checked

Truth from
constructed
Fixed at

Planted by this recipe: ffmpeg kept the first 20 s of the source at 30/1 frames per second and replaced the 9 frames after frame 432 with a copy of frame 432 (freezeframes, in place), so the repeated frames last 0.30 s. The truth is the time the picture stops moving, 14.400 s (frame 432). Frame 432 was chosen by a fixed rule: every pair of frames within 0.5 s either side differs by more than 0.5 grey levels and by less than 40. The tolerance is 2 frames, 0.067 s.

The script repeated one frame for 0.30 s from 14.40 s, so the freeze is planted and is not a fault in the film. check_frame_cadence lists only repeats that last at least 0.5 s, so it may not list a freeze this short.

Try it yourself

Use agentic-video to check my video for frozen or repeated frames. Run check_frame_cadence on my file and tell me each stretch of repeated frames it lists, with its start time. Then run frame_at on that start time, or on 10 seconds if it lists none, and tell me what the frame shows. Use my own file.
  1. Get the .mcpb file and open it in Claude Desktop.
  2. Or: pip install agentic-video

Clip and licence

Licence
CC0
Author
NS2000000000
Source
commons.wikimedia.org
This file is made available under the Creative Commons CC0 1.0 Universal Public Domain Dedication.