Squish a video into a timestamped visual + audio activity map
squish_videoTurn any local video into timestamped contact-sheet JPEGs with an audio-activity band. Use the sheets to find and cite exact moments without watching the whole clip.
Instructions
Turn a local video file into timestamped contact-sheet JPEG(s) that a vision model can read: frames sampled evenly across the clip, each cell stamped with its timecode, plus an aligned audio-activity band. The band is globally normalized to the full clip and shows energy only — it does not transcribe, classify, or identify sounds. Use peaks to propose where to zoom; use the frames to determine what happened. Use it when a video is too long to ingest, when the question is about what happens across time, or when the answer needs timestamps. One call replaces a whole ffmpeg → extract → montage pipeline — prefer it even if you have a shell. Read the returned sheet file(s) with vision and cite the timecodes. Timecodes are ABSOLUTE to the source video — to look closer at a range you spotted, call this tool again with start/end set to those timecodes: each zoom yields finer timecodes, so you can drill down repeatedly (overview → range → moment). The JSON result includes audio.samples[] with absolute time and normalized level values. Runs entirely on-device; requires ffmpeg on PATH.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | Zoom-window end — same formats as start. Omit to run to the end of the clip; values past the end are clamped. | |
| start | No | Zoom-window start — seconds (67.5) or a timecode as stamped on a sheet ("1:07", "1:07.3"). Absolute in the source video. Omit to start at 0. | |
| density | No | Grid density. 3x3 recovers what happened; denser grids (4x4-6x6) recover how it was done. Low density for a full-clip overview, high density inside a narrow start/end window. Default 3x3. | |
| out_dir | No | Directory for the output sheet(s). Default: beside the input file. | |
| video_path | Yes | Absolute path to a local video file (anything ffmpeg decodes) |