agentic-video Gallery

Find a short frozen picture in a moving clip

Sync and qualityTutorialTool missed
0:20CC-BY-3.0 · Living Colour Filmproduktion, Hamburg, for Wikimedia Deutschland

Proof frames

Click a frame to seek

Tool calls

2 calls · agentic-video 0.3.1
check_frame_cadenceimac · 345 ms

Arguments

{
  "source": "$CLIP"
}

Result

{
  "ok": true,
  "data": {
    "frame_rate": 25,
    "frames": 500,
    "held_frames": 0,
    "ranges": [],
    "total": 0
  }
}
frame_atimac · 207 ms

Arguments

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

Result

{
  "ok": true,
  "data": {
    "frame_time_sec": 3.12,
    "width": 400,
    "height": 224,
    "source_width": 400,
    "source_height": 224,
    "crop": null,
    "scale": 1,
    "file_path": "<cache>/708825afe7db735b0ac7/frame_at/frame_at_e1bd69f90e040de6.png",
    "tool_file": {
      "_tag": "ToolFile",
      "name": "frame_at_e1bd69f90e040de6.png",
      "mimeType": "image/png",
      "encoding": "base64",
      "data": "<67112 base64 chars dropped>",
      "byteLength": 50333
    }
  }
}

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

How it was checked

Truth from
constructed
Fixed at

Planted by this recipe: ffmpeg kept the first 20 s of the source at 25/1 frames per second and replaced the 8 frames after frame 78 with a copy of frame 78 (freezeframes, in place), so the repeated frames last 0.32 s. The truth is the time the picture stops moving, 3.120 s (frame 78). Frame 78 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.080 s.

The script repeated one frame for 0.32 s from 3.12 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
CC-BY-3.0
Author
Living Colour Filmproduktion, Hamburg, for Wikimedia Deutschland
Source
commons.wikimedia.org
This file is licensed under the Creative Commons Attribution 3.0 Unported license.