Find a short frozen picture in a moving clip
0:20CC0 · NS2000000000
Proof frames
Tool calls
check_frame_cadence
Arguments
{
"source": "$CLIP"
}
Result
{
"ok": true,
"data": {
"frame_rate": 30,
"frames": 600,
"held_frames": 321,
"ranges": [],
"total": 0
}
}
frame_at
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.
- Get the .mcpb file and open it in Claude Desktop.
- 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.