Find where the sound suddenly gets loud
Proof frames
Tool calls
loudness_timeline
Arguments
{
"source": "$CLIP",
"start_sec": 0,
"end_sec": 4,
"window_sec": 2
}
Result
{
"ok": true,
"data": {
"source_path": "~/hill/gallery/tmp/R-loud/cards/loud-nature/clip.mp4",
"start_sec": 0,
"end_sec": 4,
"window_sec": 2,
"bpm": null,
"silence_threshold_dbfs": -60,
"peak_dbfs": -12.912,
"peak_sec": 0.197,
"windows": [
{
"start_sec": 0,
"end_sec": 2,
"rms_dbfs": -34.033,
"peak_dbfs": -12.912,
"band_db": {
"sub": -42.791,
"low_mid": -33.63,
"mid": -44.802,
"high": -69.244,
"air": -87.278
},
"spectral_centroid_hz": 255.331,
"silent": false
},
{
"start_sec": 2,
"end_sec": 4,
"rms_dbfs": -37.784,
"peak_dbfs": -13.32,
"band_db": {
"sub": -47.222,
"low_mid": -38.232,
"mid": -47.846,
"high": -77.447,
"air": -93.08
},
"spectral_centroid_hz": 275.838,
"silent": false
}
],
"outliers": [
{
"start_sec": 0,
"end_sec": 2,
"band": "high",
"direction": "boost",
"energy_db": -69.244,
"baseline_db": -77.447,
"delta_db": 8.203,
"min_delta_db": 8.203,
"max_delta_db": 8.203,
"energy_start_db": -69.244,
"energy_end_db": -69.244,
"entry_jump_db": null,
"exit_jump_db": 8.203,
"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,
"end_sec": 4,
"band": "high",
"direction": "cut",
"energy_db": -77.447,
"baseline_db": -69.244,
"delta_db": -8.203,
"min_delta_db": -8.203,
"max_delta_db": -8.203,
"energy_start_db": -77.447,
"energy_end_db": -77.447,
"entry_jump_db": -8.203,
"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": 0,
"end_sec": 0.18,
"duration_sec": 0.18,
"threshold_dbfs": -60
}
],
"total": 2
}
}
loudness_timeline
Arguments
{
"source": "$CLIP",
"start_sec": 4,
"end_sec": 8,
"window_sec": 2
}
Result
{
"ok": true,
"data": {
"source_path": "~/hill/gallery/tmp/R-loud/cards/loud-nature/clip.mp4",
"start_sec": 4,
"end_sec": 8,
"window_sec": 2,
"bpm": null,
"silence_threshold_dbfs": -60,
"peak_dbfs": -1.733,
"peak_sec": 7.356,
"windows": [
{
"start_sec": 4,
"end_sec": 6,
"rms_dbfs": -34.91,
"peak_dbfs": -14.558,
"band_db": {
"sub": -42.752,
"low_mid": -34.832,
"mid": -46.042,
"high": -67.137,
"air": -76.186
},
"spectral_centroid_hz": 264.31,
"silent": false
},
{
"start_sec": 6,
"end_sec": 8,
"rms_dbfs": -20.364,
"peak_dbfs": -1.733,
"band_db": {
"sub": -26.034,
"low_mid": -19.176,
"mid": -31.084,
"high": -55.24,
"air": -69.478
},
"spectral_centroid_hz": 244.099,
"silent": false
}
],
"outliers": [
{
"start_sec": 4,
"end_sec": 6,
"band": "air",
"direction": "cut",
"energy_db": -76.186,
"baseline_db": -69.478,
"delta_db": -6.708,
"min_delta_db": -6.708,
"max_delta_db": -6.708,
"energy_start_db": -76.186,
"energy_end_db": -76.186,
"entry_jump_db": null,
"exit_jump_db": -6.708,
"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": 4,
"end_sec": 6,
"band": "high",
"direction": "cut",
"energy_db": -67.137,
"baseline_db": -55.24,
"delta_db": -11.897,
"min_delta_db": -11.897,
"max_delta_db": -11.897,
"energy_start_db": -67.137,
"energy_end_db": -67.137,
"entry_jump_db": null,
"exit_jump_db": -11.897,
"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": 4,
"end_sec": 6,
"band": "low_mid",
"direction": "cut",
"energy_db": -34.832,
"baseline_db": -19.176,
"delta_db": -15.656,
"min_delta_db": -15.656,
"max_delta_db": -15.656,
"energy_start_db": -34.832,
"energy_end_db": -34.832,
"entry_jump_db": null,
"exit_jump_db": -15.656,
"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": 4,
"end_sec": 6,
"band": "mid",
"direction": "cut",
"energy_db": -46.042,
"baseline_db": -31.084,
"delta_db": -14.958,
"min_delta_db": -14.958,
"max_delta_db": -14.958,
"energy_start_db": -46.042,
"energy_end_db": -46.042,
"entry_jump_db": null,
"exit_jump_db": -14.958,
"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": 4,
"end_sec": 6,
"band": "sub",
"direction": "cut",
"energy_db": -42.752,
"baseline_db": -26.034,
"delta_db": -16.718,
"min_delta_db": -16.718,
"max_delta_db": -16.718,
"energy_start_db": -42.752,
"energy_end_db": -42.752,
"entry_jump_db": null,
"exit_jump_db": -16.718,
"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 5 more"
],
"ignore_ranges": [],
"silence_gaps": [],
"total": 2
}
}
loudness_timeline
Arguments
{
"source": "$CLIP",
"start_sec": 8,
"end_sec": 12,
"window_sec": 2
}
Result
{
"ok": true,
"data": {
"source_path": "~/hill/gallery/tmp/R-loud/cards/loud-nature/clip.mp4",
"start_sec": 8,
"end_sec": 12,
"window_sec": 2,
"bpm": null,
"silence_threshold_dbfs": -60,
"peak_dbfs": -13.198,
"peak_sec": 8.343,
"windows": [
{
"start_sec": 8,
"end_sec": 10,
"rms_dbfs": -33.159,
"peak_dbfs": -13.198,
"band_db": {
"sub": -44.094,
"low_mid": -34.814,
"mid": -46.405,
"high": -71.559,
"air": -77.027
},
"spectral_centroid_hz": 265.757,
"silent": false
},
{
"start_sec": 10,
"end_sec": 12,
"rms_dbfs": -35.271,
"peak_dbfs": -13.288,
"band_db": {
"sub": -43.335,
"low_mid": -34.877,
"mid": -45.412,
"high": -68.064,
"air": -71.801
},
"spectral_centroid_hz": 275.353,
"silent": false
}
],
"outliers": [],
"ignore_ranges": [],
"silence_gaps": [],
"total": 2
}
}
loudness_timeline
Arguments
{
"source": "$CLIP",
"start_sec": 12,
"end_sec": 16,
"window_sec": 2
}
Result
{
"ok": true,
"data": {
"source_path": "~/hill/gallery/tmp/R-loud/cards/loud-nature/clip.mp4",
"start_sec": 12,
"end_sec": 16,
"window_sec": 2,
"bpm": null,
"silence_threshold_dbfs": -60,
"peak_dbfs": -13.233,
"peak_sec": 15.324,
"windows": [
{
"start_sec": 12,
"end_sec": 14,
"rms_dbfs": -32.606,
"peak_dbfs": -13.448,
"band_db": {
"sub": -41.935,
"low_mid": -31.994,
"mid": -44.648,
"high": -69.249,
"air": -85.59
},
"spectral_centroid_hz": 249.365,
"silent": false
},
{
"start_sec": 14,
"end_sec": 16,
"rms_dbfs": -33.205,
"peak_dbfs": -13.233,
"band_db": {
"sub": -41.753,
"low_mid": -32.953,
"mid": -44.171,
"high": -68.359,
"air": -83.773
},
"spectral_centroid_hz": 267.361,
"silent": false
}
],
"outliers": [],
"ignore_ranges": [],
"silence_gaps": [],
"total": 2
}
}
Question and answer
- Question
- Where does it suddenly get loud?
- Answer
- The loudest 2-second stretch runs from 6 to 8 seconds, at -20.4 dB RMS, the loudest of the 8 windows across the clip.
How it was checked
- Truth from
- constructed
- Fixed at
Planted by this recipe before any tool ran: ffmpeg cut the first 18 s of the source (its loudest sample measured at -0.3 dBFS by volumedetect), the whole clip was first lowered 12.7 dB so the raised stretch peaks below full scale, and raised the sound from 6 s to 8 s by 12 dB with a volume filter (the picture is not changed). The truth is that stretch, 6 to 8 s, checked with an IoU of at least 0.5. The calls read 2-second windows that start at 0, 2, 4 and so on, so the planted stretch is the window 6 to 8 s.
A script raised the sound by 12 dB from 6 to 8 seconds, a planted change. To keep the raised stretch below full scale, the whole clip was first lowered 12.7 dB. The answer is the loudest 2-second window, so the card does not test timing finer than 2 seconds. Only the first 16 seconds of the source were analysed.
Try it yourself
Use agentic-video to find where the sound in my video suddenly gets loud. Run loudness_timeline on my file in 4-second ranges that cover the first 16 seconds, with a window of 2 seconds each time. Tell me the start and end of the loudest window across all the runs, and how loud it is compared with the windows around it.
- Get the .mcpb file and open it in Claude Desktop.
- Or:
pip install agentic-video
Clip and licence
- Licence
- CC-BY-SA-4.0
- Author
- Chris Light
- Source
- commons.wikimedia.org
This file is licensed under the Creative Commons Attribution-Share Alike 4.0 International license.