Find where the sound drops out for a moment
0:20CC-BY-SA-3.0 · Wildfire Games
Proof frames
Tool calls
loudness_timeline
Arguments
{
"source": "$CLIP",
"start_sec": 5.04,
"end_sec": 12.54,
"window_sec": 1
}
Result
{
"ok": true,
"data": {
"source_path": "~/work/cards/gap-gaming/clip.mp4",
"start_sec": 5.04,
"end_sec": 12.54,
"window_sec": 1,
"bpm": null,
"silence_threshold_dbfs": -60,
"peak_dbfs": -3.386,
"peak_sec": 5.066,
"windows": [
{
"start_sec": 5.04,
"end_sec": 6.04,
"rms_dbfs": -15.155,
"peak_dbfs": -3.386,
"band_db": {
"sub": -17.18,
"low_mid": -16.724,
"mid": -28.829,
"high": -42.397,
"air": -53.439
},
"spectral_centroid_hz": 176.234,
"silent": false
},
{
"start_sec": 6.04,
"end_sec": 7.04,
"rms_dbfs": -19.617,
"peak_dbfs": -6.07,
"band_db": {
"sub": -21.947,
"low_mid": -20.72,
"mid": -30.011,
"high": -44.917,
"air": -51.348
},
"spectral_centroid_hz": 215.563,
"silent": false
},
{
"start_sec": 7.04,
"end_sec": 8.04,
"rms_dbfs": -22.072,
"peak_dbfs": -6.945,
"band_db": {
"sub": -26.567,
"low_mid": -24.26,
"mid": -27.795,
"high": -42.038,
"air": -51.081
},
"spectral_centroid_hz": 449.917,
"silent": false
},
{
"start_sec": 8.04,
"end_sec": 9.04,
"rms_dbfs": -49.197,
"peak_dbfs": -16.729,
"band_db": {
"sub": -120,
"low_mid": -120,
"mid": -120,
"high": -120,
"air": -120
},
"spectral_centroid_hz": 656.12,
"silent": false
},
{
"start_sec": 9.04,
"end_sec": 10.04,
"rms_dbfs": -25.718,
"peak_dbfs": -9.679,
"band_db": {
"sub": -32.106,
"low_mid": -28.574,
"mid": -30.351,
"high": -44.577,
"air": -53.997
},
"spectral_centroid_hz": 635.206,
"silent": false
},
"…trimmed 3 more"
],
"outliers": [
{
"start_sec": 5.04,
"end_sec": 6.04,
"band": "sub",
"direction": "boost",
"energy_db": -17.18,
"baseline_db": -25.055,
"delta_db": 7.875,
"min_delta_db": 7.875,
"max_delta_db": 7.875,
"energy_start_db": -17.18,
"energy_end_db": -17.18,
"entry_jump_db": null,
"exit_jump_db": 4.767,
"internal_range_db": 0,
"trend_db": 0,
"monotonic_fraction": 0,
"shape": "transient",
"window_count": 1,
"fault_level": false,
"classification": "informational",
"ignored": false,
"ignore_reason": null
},
{
"start_sec": 9.04,
"end_sec": 10.04,
"band": "low_mid",
"direction": "cut",
"energy_db": -28.574,
"baseline_db": -19.759,
"delta_db": -8.815,
"min_delta_db": -8.815,
"max_delta_db": -8.815,
"energy_start_db": -28.574,
"energy_end_db": -28.574,
"entry_jump_db": 91.426,
"exit_jump_db": -9.776,
"internal_range_db": 0,
"trend_db": 0,
"monotonic_fraction": 0,
"shape": "transient",
"window_count": 1,
"fault_level": false,
"classification": "informational",
"ignored": false,
"ignore_reason": null
},
{
"start_sec": 9.04,
"end_sec": 10.04,
"band": "sub",
"direction": "cut",
"energy_db": -32.106,
"baseline_db": -22.745,
"delta_db": -9.361,
"min_delta_db": -9.361,
"max_delta_db": -9.361,
"energy_start_db": -32.106,
"energy_end_db": -32.106,
"entry_jump_db": 87.894,
"exit_jump_db": -10.362,
"internal_range_db": 0,
"trend_db": 0,
"monotonic_fraction": 0,
"shape": "transient",
"window_count": 1,
"fault_level": false,
"classification": "informational",
"ignored": false,
"ignore_reason": null
},
{
"start_sec": 11.04,
"end_sec": 12.04,
"band": "air",
"direction": "boost",
"energy_db": -46.133,
"baseline_db": -52.394,
"delta_db": 6.261,
"min_delta_db": 6.261,
"max_delta_db": 6.261,
"energy_start_db": -46.133,
"energy_end_db": -46.133,
"entry_jump_db": 0.296,
"exit_jump_db": 8.262,
"internal_range_db": 0,
"trend_db": 0,
"monotonic_fraction": 0,
"shape": "transient",
"window_count": 1,
"fault_level": false,
"classification": "informational",
"ignored": false,
"ignore_reason": null
},
{
"start_sec": 12.04,
"end_sec": 12.54,
"band": "sub",
"direction": "cut",
"energy_db": -30.787,
"baseline_db": -22.745,
"delta_db": -8.042,
"min_delta_db": -8.042,
"max_delta_db": -8.042,
"energy_start_db": -30.787,
"energy_end_db": -30.787,
"entry_jump_db": -7.245,
"exit_jump_db": null,
"internal_range_db": 0,
"trend_db": 0,
"monotonic_fraction": 0,
"shape": "transient",
"window_count": 1,
"fault_level": false,
"classification": "informational",
"ignored": false,
"ignore_reason": null
}
],
"ignore_ranges": [],
"silence_gaps": [
{
"start_sec": 8.05,
"end_sec": 9.55,
"duration_sec": 1.5,
"threshold_dbfs": -60
}
],
"total": 8
}
}
review_video
Arguments
{
"source": "$CLIP"
}
Result
{
"ok": true,
"data": {
"metadata": {
"source_path": "~/work/cards/gap-gaming/clip.mp4",
"duration_sec": 20,
"width": 640,
"height": 480,
"fps": 25,
"format_name": "mov,mp4,m4a,3gp,3g2,mj2",
"size_bytes": 2563019,
"has_audio": true,
"audio_codec": "aac",
"video_codec": "h264",
"fingerprint": "9b3a444b6977e3d95567",
"has_video": true
},
"contact_sheet": {
"file_path": "<cache>/9b3a444b6977e3d95567/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": 576,
"tool_file": {
"_tag": "ToolFile",
"name": "sheet_24samples_4cols_423fa4.jpg",
"mimeType": "image/jpeg",
"encoding": "base64",
"data": "<3102368 base64 chars dropped>",
"byteLength": 2326775
}
},
"cuts": [
{
"timestamp_sec": 4.55,
"score": 0.655923,
"kind": "transition"
}
],
"cuts_total": 1,
"loudness": {
"average_rms_dbfs": -18.101,
"peak_dbfs": -3.106,
"peak_sec": 17.714,
"window_sec": 0.25,
"silence_threshold_dbfs": -60,
"silence_gaps": [
{
"start_sec": 0,
"end_sec": 0.44,
"duration_sec": 0.44,
"threshold_dbfs": -60
},
{
"start_sec": 0.45,
"end_sec": 0.49,
"duration_sec": 0.04,
"threshold_dbfs": -60
},
{
"start_sec": 0.51,
"end_sec": 0.54,
"duration_sec": 0.03,
"threshold_dbfs": -60
},
{
"start_sec": 8.05,
"end_sec": 9.55,
"duration_sec": 1.5,
"threshold_dbfs": -60
}
],
"silence_gaps_total": 4,
"outliers_total": 55,
"fault_outliers_total": 0,
"outliers": [
{
"start_sec": 0,
"end_sec": 1.5,
"band": "mid",
"direction": "cut",
"shape": "transient",
"delta_db": -40.816,
"fault_level": false
},
{
"start_sec": 0.5,
"end_sec": 1.5,
"band": "high",
"direction": "cut",
"shape": "transient",
"delta_db": -39.895,
"fault_level": false
},
{
"start_sec": 20,
"end_sec": 20.010667,
"band": "low_mid",
"direction": "cut",
"shape": "transient",
"delta_db": -33.678,
"fault_level": false
},
{
"start_sec": 0,
"end_sec": 4.25,
"band": "sub",
"direction": "cut",
"shape": "transient",
"delta_db": -30.431,
"fault_level": false
},
{
"start_sec": 20,
"end_sec": 20.010667,
"band": "sub",
"direction": "cut",
"shape": "transient",
"delta_db": -29.066,
"fault_level": false
},
{
"start_sec": 8,
"end_sec": 8.25,
"band": "air",
"direction": "cut",
"shape": "transient",
"delta_db": -26.219,
"fault_level": false
},
{
"start_sec": 8,
"end_sec": 8.25,
"band": "sub",
"direction": "cut",
"shape": "transient",
"delta_db": -26.069,
"fault_level": false
},
{
"start_sec": 1.5,
"end_sec": 2.75,
"band": "air",
"direction": "cut",
"shape": "ramp",
"delta_db": -25.286,
"fault_level": false
},
{
"start_sec": 8,
"end_sec": 8.25,
"band": "low_mid",
"direction": "cut",
"shape": "transient",
"delta_db": -25.224,
"fault_level": false
},
{
"start_sec": 0,
"end_sec": 3.5,
"band": "low_mid",
"direction": "cut",
"shape": "transient",
"delta_db": -24.315,
"fault_level": false
}
]
}
}
}
Question and answer
- Question
- Is there a silent gap in the sound? Where does it start and end?
- Answer
- The tool reports the longest silent gap in the sound, from 8.05 to 9.55 seconds, lasting 1.50 seconds.
Check passedIoU 0.99, minimum 0.7
How it was checked
- Truth from
- constructed
- Fixed at
Planted by this recipe: ffmpeg cut the first 20 s of the source and muted its sound (volume 0, so digital silence) from 8.04 s to 9.54 s, keeping the picture. The truth is that silent interval, 8.04 to 9.54 s. The call covers 5.04 to 12.54 s (the gap with 3 s either side). The answer is the longest silent gap loudness_timeline reports in that range. IoU tolerance 0.7.
A script muted 1.5 seconds of this clip's sound at a time it chose and left the picture alone. The answer is the one silent gap the tool reports in a 7.5-second range around it, so the card does not show every quiet moment in the clip.
Try it yourself
Use agentic-video to check the sound in my video for a silent gap. Call loudness_timeline on my file from 5.04 to 12.54 seconds, and tell me where the quiet part starts and ends. Then call review_video on my whole file and tell me what it reports about silence. 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-SA-3.0
- Author
- Wildfire Games
- Source
- commons.wikimedia.org
This file is licensed under the Creative Commons Attribution-Share Alike 3.0 Unported license.