Find where the sound drops out for a moment
0:20PD · NASA Johnson Space Center
Proof frames
Tool calls
loudness_timeline
Arguments
{
"source": "$CLIP",
"start_sec": 2.56,
"end_sec": 10.06,
"window_sec": 1
}
Result
{
"ok": true,
"data": {
"source_path": "~/work/cards/gap-space/clip.mp4",
"start_sec": 2.56,
"end_sec": 10.06,
"window_sec": 1,
"bpm": null,
"silence_threshold_dbfs": -60,
"peak_dbfs": -1.878,
"peak_sec": 3.839,
"windows": [
{
"start_sec": 2.56,
"end_sec": 3.56,
"rms_dbfs": -16.042,
"peak_dbfs": -3.42,
"band_db": {
"sub": -27.393,
"low_mid": -16.937,
"mid": -19.578,
"high": -45.743,
"air": -55.913
},
"spectral_centroid_hz": 545.24,
"silent": false
},
{
"start_sec": 3.56,
"end_sec": 4.56,
"rms_dbfs": -16.406,
"peak_dbfs": -1.878,
"band_db": {
"sub": -31.97,
"low_mid": -16.37,
"mid": -23.573,
"high": -27.133,
"air": -43.041
},
"spectral_centroid_hz": 887.02,
"silent": false
},
{
"start_sec": 4.56,
"end_sec": 5.56,
"rms_dbfs": -17.172,
"peak_dbfs": -6.566,
"band_db": {
"sub": -25.023,
"low_mid": -16.837,
"mid": -23.819,
"high": -31.367,
"air": -49.609
},
"spectral_centroid_hz": 582.378,
"silent": false
},
{
"start_sec": 5.56,
"end_sec": 6.56,
"rms_dbfs": -37.9,
"peak_dbfs": -10.883,
"band_db": {
"sub": -109.572,
"low_mid": -104.047,
"mid": -111.737,
"high": -120,
"air": -120
},
"spectral_centroid_hz": 431.624,
"silent": false
},
{
"start_sec": 6.56,
"end_sec": 7.56,
"rms_dbfs": -18.235,
"peak_dbfs": -6.044,
"band_db": {
"sub": -33.08,
"low_mid": -17.265,
"mid": -31.097,
"high": -53.647,
"air": -64.751
},
"spectral_centroid_hz": 304.09,
"silent": false
},
"…trimmed 3 more"
],
"outliers": [
{
"start_sec": 2.56,
"end_sec": 3.56,
"band": "air",
"direction": "cut",
"energy_db": -55.913,
"baseline_db": -47.552,
"delta_db": -8.361,
"min_delta_db": -8.361,
"max_delta_db": -8.361,
"energy_start_db": -55.913,
"energy_end_db": -55.913,
"entry_jump_db": null,
"exit_jump_db": -12.872,
"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": 2.56,
"end_sec": 3.56,
"band": "high",
"direction": "cut",
"energy_db": -45.743,
"baseline_db": -31.511,
"delta_db": -14.233,
"min_delta_db": -14.233,
"max_delta_db": -14.233,
"energy_start_db": -45.743,
"energy_end_db": -45.743,
"entry_jump_db": null,
"exit_jump_db": -18.61,
"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": 3.56,
"end_sec": 4.56,
"band": "air",
"direction": "boost",
"energy_db": -43.041,
"baseline_db": -52.761,
"delta_db": 9.72,
"min_delta_db": 9.72,
"max_delta_db": 9.72,
"energy_start_db": -43.041,
"energy_end_db": -43.041,
"entry_jump_db": 12.872,
"exit_jump_db": 6.568,
"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": 3.56,
"end_sec": 5.56,
"band": "high",
"direction": "boost",
"energy_db": -29.25,
"baseline_db": -38.699,
"delta_db": 9.449,
"min_delta_db": 7.332,
"max_delta_db": 11.566,
"energy_start_db": -27.133,
"energy_end_db": -31.367,
"entry_jump_db": 18.61,
"exit_jump_db": 88.633,
"internal_range_db": 4.234,
"trend_db": -4.234,
"monotonic_fraction": 0,
"shape": "transient",
"window_count": 2,
"fault_level": false,
"classification": "informational",
"ignored": false,
"ignore_reason": null
},
{
"start_sec": 6.56,
"end_sec": 7.56,
"band": "air",
"direction": "cut",
"energy_db": -64.751,
"baseline_db": -47.552,
"delta_db": -17.199,
"min_delta_db": -17.199,
"max_delta_db": -17.199,
"energy_start_db": -64.751,
"energy_end_db": -64.751,
"entry_jump_db": 55.249,
"exit_jump_db": -19.256,
"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
},
"…trimmed 6 more"
],
"ignore_ranges": [],
"silence_gaps": [
{
"start_sec": 5.57,
"end_sec": 7.06,
"duration_sec": 1.49,
"threshold_dbfs": -60
}
],
"total": 8
}
}
review_video
Arguments
{
"source": "$CLIP"
}
Result
{
"ok": true,
"data": {
"metadata": {
"source_path": "~/work/cards/gap-space/clip.mp4",
"duration_sec": 20.02,
"width": 640,
"height": 360,
"fps": 29.97002997002997,
"format_name": "mov,mp4,m4a,3gp,3g2,mj2",
"size_bytes": 2062770,
"has_audio": true,
"audio_codec": "aac",
"video_codec": "h264",
"fingerprint": "7f0bc519ce45e68c6e29",
"has_video": true
},
"contact_sheet": {
"file_path": "<cache>/7f0bc519ce45e68c6e29/contact_sheets/sheet_24samples_4cols_624461.jpg",
"sample_count": 24,
"rows": 6,
"cols": 4,
"start_sec": 0.417,
"end_sec": 19.603,
"timestamps": [
0.417,
1.251,
2.085,
2.92,
3.754,
4.588,
5.422,
6.256,
7.09,
7.925,
8.759,
9.593,
10.427,
11.261,
12.095,
12.93,
13.764,
14.598,
15.432,
16.266,
17.1,
17.935,
18.769,
19.603
],
"frame_width": 768,
"frame_height": 432,
"tool_file": {
"_tag": "ToolFile",
"name": "sheet_24samples_4cols_624461.jpg",
"mimeType": "image/jpeg",
"encoding": "base64",
"data": "<1536420 base64 chars dropped>",
"byteLength": 1152315
}
},
"cuts": [
{
"timestamp_sec": 5.3053,
"score": 0.745016,
"kind": "cut"
},
{
"timestamp_sec": 7.640967,
"score": 0.88762,
"kind": "cut"
},
{
"timestamp_sec": 10.777433,
"score": 0.886925,
"kind": "cut"
},
{
"timestamp_sec": 12.2122,
"score": 0.302784,
"kind": "cut"
},
{
"timestamp_sec": 15.081733,
"score": 0.406834,
"kind": "cut"
},
{
"timestamp_sec": 18.084733,
"score": 0.385748,
"kind": "cut"
}
],
"cuts_total": 6,
"loudness": {
"average_rms_dbfs": -18.063,
"peak_dbfs": -1.878,
"peak_sec": 3.839,
"window_sec": 0.25,
"silence_threshold_dbfs": -60,
"silence_gaps": [
{
"start_sec": 0.04,
"end_sec": 0.34,
"duration_sec": 0.3,
"threshold_dbfs": -60
},
{
"start_sec": 5.57,
"end_sec": 7.06,
"duration_sec": 1.49,
"threshold_dbfs": -60
}
],
"silence_gaps_total": 2,
"outliers_total": 96,
"fault_outliers_total": 0,
"outliers": [
{
"start_sec": 0,
"end_sec": 0.25,
"band": "high",
"direction": "cut",
"shape": "transient",
"delta_db": -41.483,
"fault_level": false
},
{
"start_sec": 20,
"end_sec": 20.010667,
"band": "low_mid",
"direction": "cut",
"shape": "transient",
"delta_db": -39.642,
"fault_level": false
},
{
"start_sec": 0.75,
"end_sec": 2.25,
"band": "high",
"direction": "cut",
"shape": "transient",
"delta_db": -36.967,
"fault_level": false
},
{
"start_sec": 20,
"end_sec": 20.010667,
"band": "sub",
"direction": "cut",
"shape": "transient",
"delta_db": -36.279,
"fault_level": false
},
{
"start_sec": 20,
"end_sec": 20.010667,
"band": "mid",
"direction": "cut",
"shape": "transient",
"delta_db": -33.668,
"fault_level": false
},
{
"start_sec": 0,
"end_sec": 0.25,
"band": "air",
"direction": "cut",
"shape": "transient",
"delta_db": -33.054,
"fault_level": false
},
{
"start_sec": 5.25,
"end_sec": 5.5,
"band": "high",
"direction": "boost",
"shape": "transient",
"delta_db": 26.383,
"fault_level": false
},
{
"start_sec": 20,
"end_sec": 20.010667,
"band": "high",
"direction": "cut",
"shape": "transient",
"delta_db": -24.757,
"fault_level": false
},
{
"start_sec": 17.25,
"end_sec": 18.25,
"band": "high",
"direction": "boost",
"shape": "transient",
"delta_db": 24.619,
"fault_level": false
},
{
"start_sec": 9,
"end_sec": 9.5,
"band": "high",
"direction": "boost",
"shape": "transient",
"delta_db": 23.727,
"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 5.57 to 7.06 seconds, lasting 1.49 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 5.56 s to 7.06 s, keeping the picture. The truth is that silent interval, 5.56 to 7.06 s. The call covers 2.56 to 10.06 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 2.56 to 10.06 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
- PD
- Author
- NASA Johnson Space Center
- Source
- commons.wikimedia.org
This file is in the public domain in the United States because it was solely created by NASA.