agentic-video Gallery

Find a short frozen picture in a moving clip

Sync and qualityLectureTool missed
0:20CC0 · Andrew Krizhanovsky (Alexander Kirillov, lecturer)

Proof frames

Click a frame to seek

Tool calls

2 calls · agentic-video 0.3.1
check_frame_cadenceimac · 344 ms

Arguments

{
  "source": "$CLIP"
}

Result

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

Arguments

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

Result

{
  "ok": true,
  "data": {
    "frame_time_sec": 12.445767,
    "width": 640,
    "height": 480,
    "source_width": 640,
    "source_height": 480,
    "crop": null,
    "scale": 1,
    "file_path": "<cache>/13411b2a57a510e82c1a/frame_at/frame_at_e986f5306b7b5a09.png",
    "tool_file": {
      "_tag": "ToolFile",
      "name": "frame_at_e986f5306b7b5a09.png",
      "mimeType": "image/png",
      "encoding": "base64",
      "data": "<210284 base64 chars dropped>",
      "byteLength": 157713
    }
  }
}

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
[12.445767]
Check failedprecision 0.00 (min 1), recall 0.00 (min 1), tolerance 0.066733s

How it was checked

Truth from
constructed
Fixed at

Planted by this recipe: ffmpeg kept the first 20 s of the source at 30000/1001 frames per second and replaced the 9 frames after frame 373 with a copy of frame 373 (freezeframes, in place), so the repeated frames last 0.30 s. The truth is the time the picture stops moving, 12.446 s (frame 373). Frame 373 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 12.45 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
Andrew Krizhanovsky (Alexander Kirillov, lecturer)
Source
commons.wikimedia.org
This file is made available under the Creative Commons CC0 1.0 Universal Public Domain Dedication.