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