QA a clip for a silent gap before posting
0:20CC-BY-2.5 · Orange Open Movie Team (Blender Foundation)
Proof frames
Tool calls
review_video
Arguments
{
"source": "$CLIP"
}
Result
{
"ok": true,
"data": {
"metadata": {
"source_path": "~/work/cards/review-film/clip.mp4",
"duration_sec": 20,
"width": 640,
"height": 360,
"fps": 24,
"format_name": "mov,mp4,m4a,3gp,3g2,mj2",
"size_bytes": 2536151,
"has_audio": true,
"audio_codec": "aac",
"video_codec": "h264",
"fingerprint": "1f10ec128743f3c7614b",
"has_video": true
},
"contact_sheet": {
"file_path": "<cache>/1f10ec128743f3c7614b/contact_sheets/sheet_24samples_4cols_423fa4.jpg",
"sample_count": 24,
"rows": 6,
"cols": 4,
"start_sec": 0.417,
"end_sec": 19.583,
"timestamps": [
0.417,
1.25,
2.083,
2.917,
3.75,
4.583,
5.417,
6.25,
7.083,
7.917,
8.75,
9.583,
10.417,
11.25,
12.083,
12.917,
13.75,
14.583,
15.417,
16.25,
17.083,
17.917,
18.75,
19.583
],
"frame_width": 768,
"frame_height": 432,
"tool_file": {
"_tag": "ToolFile",
"name": "sheet_24samples_4cols_423fa4.jpg",
"mimeType": "image/jpeg",
"encoding": "base64",
"data": "<1432512 base64 chars dropped>",
"byteLength": 1074383
}
},
"cuts": [
{
"timestamp_sec": 1.916667,
"score": 0.353341,
"kind": "cut"
},
{
"timestamp_sec": 4.2,
"score": 0.478588,
"kind": "transition"
},
{
"timestamp_sec": 4.958333,
"score": 0.403614,
"kind": "cut"
},
{
"timestamp_sec": 6.708333,
"score": 0.727466,
"kind": "cut"
},
{
"timestamp_sec": 7.583333,
"score": 0.738655,
"kind": "cut"
},
{
"timestamp_sec": 10.583333,
"score": 0.653845,
"kind": "cut"
},
{
"timestamp_sec": 13.708333,
"score": 0.681344,
"kind": "cut"
},
{
"timestamp_sec": 15.208333,
"score": 0.636708,
"kind": "cut"
}
],
"cuts_total": 8,
"loudness": {
"average_rms_dbfs": -24.697,
"peak_dbfs": -4.631,
"peak_sec": 5.01,
"window_sec": 0.25,
"silence_threshold_dbfs": -60,
"silence_gaps": [
{
"start_sec": 13.85,
"end_sec": 15.46,
"duration_sec": 1.61,
"threshold_dbfs": -60
}
],
"silence_gaps_total": 1,
"outliers_total": 66,
"fault_outliers_total": 0,
"outliers": [
{
"start_sec": 20,
"end_sec": 20.010667,
"band": "low_mid",
"direction": "cut",
"shape": "transient",
"delta_db": -33.931,
"fault_level": false
},
{
"start_sec": 20,
"end_sec": 20.010667,
"band": "mid",
"direction": "cut",
"shape": "transient",
"delta_db": -29.672,
"fault_level": false
},
{
"start_sec": 16,
"end_sec": 16.5,
"band": "high",
"direction": "boost",
"shape": "transient",
"delta_db": 27.342,
"fault_level": false
},
{
"start_sec": 15.25,
"end_sec": 15.5,
"band": "mid",
"direction": "cut",
"shape": "transient",
"delta_db": -22.833,
"fault_level": false
},
{
"start_sec": 15.25,
"end_sec": 15.5,
"band": "low_mid",
"direction": "cut",
"shape": "transient",
"delta_db": -22.283,
"fault_level": false
},
{
"start_sec": 19.75,
"end_sec": 20.010667,
"band": "sub",
"direction": "cut",
"shape": "transient",
"delta_db": -20.348,
"fault_level": false
},
{
"start_sec": 0,
"end_sec": 4.5,
"band": "mid",
"direction": "cut",
"shape": "transient",
"delta_db": -18.291,
"fault_level": false
},
{
"start_sec": 12,
"end_sec": 13,
"band": "high",
"direction": "boost",
"shape": "transient",
"delta_db": 18.006,
"fault_level": false
},
{
"start_sec": 7,
"end_sec": 8,
"band": "high",
"direction": "boost",
"shape": "transient",
"delta_db": 17.553,
"fault_level": false
},
{
"start_sec": 18.5,
"end_sec": 20,
"band": "high",
"direction": "boost",
"shape": "transient",
"delta_db": 17.128,
"fault_level": false
}
]
}
}
}
Question and answer
- Question
- QA this clip before I post it.
- Answer
- review_video's longest silent gap in the sound runs from 13.85 to 15.46 seconds, lasting 1.61 seconds.
Check passedIoU 0.98, minimum 0.7
How it was checked
- Truth from
- constructed
- Fixed at
Planted by this recipe: ffmpeg cut 20 s of the source from 34.50 s, and muted its sound (volume 0, digital silence) from 13.83 to 15.45 s of the clip. Only that silent interval is in the truth. The window was screened first: its sound has no run of 10 ms chunks under -60 dBFS (3 in a row) within 20 s, plus 0.1 s either side, so it is the only silent gap review_video can report. IoU tolerance 0.7.
A script muted 1.6 seconds of this clip's sound at a time it chose and put a black box over the picture for 0.9 seconds; review_video has no field that lists black frames, so the answer covers the silent gap only, and the clip has no other quiet stretch.
Try it yourself
Use agentic-video to QA my video before I post it. Call review_video on my file and tell me about any silent gaps in its sound, with where each one starts and ends. Use my own file.
- Get the .mcpb file and open it in Claude Desktop.
- Or:
pip install agentic-video
Clip and licence
- Licence
- CC-BY-2.5
- Author
- Orange Open Movie Team (Blender Foundation)
- Source
- commons.wikimedia.org
This file is licensed under the Creative Commons Attribution 2.5 Generic license.