Loading...
Loading...
Agent 1 of the video editing pipeline. Removes silences and dead air from a talking-head recording. Use when asked to cut silences, trim pauses, remove dead air / gaps, or tighten the pacing of a raw video, given a word-level transcript. Produces an edit list (EDL), a re-timed transcript for downstream agents, and optionally the cut video via ffmpeg. Does NOT cut mistakes, repeats, or false starts — that is the cut-mistakes agent.
npx skill4agent add nateherkai/hyperframes-student-kit cut-silences*.silence-transcript.json{ words: [{ text, start, end, type }], audio_duration_secs }{ words: [{ text, start, end }] }node scripts/transcribe-elevenlabs.mjs path/to/raw.mp4 # -> path/to/raw.json# 1) Plan only — compute the cut, write EDL + re-timed transcript (no video touched)
node .agents/skills/cut-silences/scripts/cut-silences.mjs <transcript.json> \
--out-dir video-projects/<slug>/assets
# 2) With a video — also write the ffmpeg command (still does not render yet)
node .agents/skills/cut-silences/scripts/cut-silences.mjs <transcript.json> \
--video video-projects/<slug>/assets/raw.mp4 --out-dir video-projects/<slug>/assets
# 3) Render the cut video (local ffmpeg, re-encode, A/V kept in sync)
# add --apply to actually run ffmpeg
node .agents/skills/cut-silences/scripts/cut-silences.mjs <transcript.json> \
--video video-projects/<slug>/assets/raw.mp4 --apply \
--output video-projects/<slug>/assets/edited-silenced.mp4| Flag | Default | Meaning |
|---|---|---|
| — | Source video; enables the ffmpeg command / render |
| next to transcript | Where outputs are written |
| | Cut-video path |
| | Minimum pause treated as trimmable silence |
| | Silence kept before the first word |
| | Silence kept after the last word |
| off | Actually run ffmpeg to render the cut |
--gap0.24s0.20s. ! ?0.14s--head-pad--tail-padtrimatrimconcat*.silence-filter.txt-/filter_complex--out-dir| File | Purpose |
|---|---|
| Keep/delete ranges, durations, params — the edit list |
| Words re-timed onto the edited timeline (feeds Agent 2 + beats) |
| Human-readable summary + largest pauses trimmed |
| The ffmpeg filtergraph (only with |
| The cut video (only with |
removedremovedPct--gap 0.55--gap--gap<stem>.silence-transcript.jsonsilenced.mp4scripts/validate-beat-sync.mjs