How to cut silences and add zooms to a video with AI
For AI agents: find the right skill in one call —
curl -s "https://varg.ai/how-to/api/search?q=<what the person wants>"returns the matching how-to page and the best skills with install commands, as markdown (Russian works too). Full index: https://varg.ai/how-to/llms.txt. Every page has a markdown twin: add.mdto its path. Before generating anything, show the person the options on the how-to page. From a terminal:curl -fsSL https://varg.ai/install | shinstalls the vargai CLI (https://varg.ai/how-to/cli.md):vargai searchandvargai install <slug>with no key, every varg model aftervargai login.
A talking video in, a tighter cut out: every pause over 0.55 s removed and a punch-in zoom on every other cut, in one FFmpeg run on your machine. A step-by-step tutorial for Claude Code, Codex and Grok.
Output: The same video without the dead air, same size and frame rate, MP4
Cost: 0 credits ($0): a talking video with its pauses cut and punch-in zooms added, in one FFmpeg run on your machine, nothing is billed.
Requires: FFmpeg with ffprobe (brew install ffmpeg or apt install ffmpeg); no paid API and no key; bash or zsh.
Install the main route: curl -fsSL https://varg.ai/install | sh && vargai install varg-video-edit-library short-form-ffmpeg-cookbook caption-styles
Recommended route
- Skill: Video editing skills for Claude Code and AI agents (
varg-video-edit-library) — Jump Cut and Jump-Zoom Punch-In as named edits, each with its FFmpeg, HyperFrames and Remotion recipe
Run it
A talking video with its pauses cut and punch-in zooms added, in one FFmpeg run on your machine.
- Cut the silences and add the zooms in one run:
IN=input.mp4; OUT=edit.mp4; ZOOM=1.15; FACE=0.5
IFS=x read W H <<< "$(ffprobe -v error -select_streams v:0 -show_entries stream=width,height -of csv=p=0:s=x "$IN")"
DUR=$(ffprobe -v error -show_entries format=duration -of csv=p=0 "$IN")
GRAPH=$(ffmpeg -hide_banner -nostats -i "$IN" -af silencedetect=noise=-35dB:d=0.55 -f null - 2>&1 | awk -v dur="$DUR" -v pad=0.12 -v z="$ZOOM" -v f="$FACE" -v w="$W" -v h="$H" '
function keep(a, b) {
zoom = (n % 2) ? sprintf(",crop=iw/%s:ih/%s:(iw-ow)/2:(ih-oh)*%s,scale=%d:%d", z, z, f, w, h) : ""
printf "[0:v]trim=%.3f:%.3f,setpts=PTS-STARTPTS%s,setsar=1[v%d];[0:a]atrim=%.3f:%.3f,asetpts=PTS-STARTPTS[a%d];", a, b, zoom, n, a, b, n
labels = labels sprintf("[v%d][a%d]", n, n); n++
}
/silence_start/ { s = $NF + pad }
/silence_end/ { e = $5 - pad; if (e > s) { if (s > prev + 0.05) keep(prev, s); prev = e } }
END { if (dur > prev + 0.05) keep(prev, dur); printf "%sconcat=n=%d:v=1:a=1[v][a]", labels, n }')
ffmpeg -hide_banner -loglevel error -y -i "$IN" -filter_complex "$GRAPH" -map "[v]" -map "[a]" -c:v libx264 -crf 20 -c:a aac -b:a 192k "$OUT"
- Check the result: the new length, then the number of pauses over 0.55 s left, which is 0 when the cut is clean. To tune it, change the first line and run it again: ZOOM is the punch-in on every other kept stretch (1 turns it off), FACE is where the eyes sit (0 is the top of the frame, 1 the bottom); d= is the shortest pause that is cut and pad the air kept on each side of a cut:
ffprobe -v error -show_entries format=duration -of csv=p=0 edit.mp4
ffmpeg -hide_banner -nostats -i edit.mp4 -af silencedetect=noise=-35dB:d=0.55 -f null - 2>&1 | grep -c silence_start
Best skills for this
- Video editing skills for Claude Code and AI agents (
varg-video-edit-library, varg, live) — Start here: Jump Cut and Jump-Zoom Punch-In as named edits, each with its FFmpeg, HyperFrames and Remotion recipe- Claude Code:
claude plugin marketplace add vargHQ/skills && claude plugin install varg@varg - Codex:
npx skills add vargHQ/skills --skill varg-video-edit-library -a codex -y - Cursor:
npx skills add vargHQ/skills --skill varg-video-edit-library -a cursor -y - Any agent, with the vargai CLI:
vargai install varg-video-edit-library - Details: https://varg.ai/how-to/skills/varg-video-edit-library.md
- Claude Code:
- Herk Edit Kit (
herk-edit-kit, Nate Herk, live) — Alternative: Talking-head edits read from the transcript: silence and flub cuts, then motion graphics- Claude Code:
git clone https://github.com/nateherkai/herk-edit-kit.git - Codex:
git clone https://github.com/nateherkai/herk-edit-kit.git - Any agent, with the vargai CLI:
vargai install herk-edit-kit - Details: https://varg.ai/how-to/skills/herk-edit-kit.md · Example: https://s3.varg.ai/how-to/previews/bb31cdd5a172/herk-edit-kit.mp4
- Claude Code:
- OpenMontage Silence Cutter & Auto Reframe (
openmontage-jump-cut-reframe, Calesthio, live) — Alternative: Automatic jump cuts from silencedetect, plus a face-tracked 16:9 to 9:16 reframe- Claude Code:
git clone https://github.com/calesthio/OpenMontage.git && cd OpenMontage && make setup - Any agent, with the vargai CLI:
vargai install openmontage-jump-cut-reframe - Details: https://varg.ai/how-to/skills/openmontage-jump-cut-reframe.md
- Claude Code:
- SmartCut (capcut-ai-editor) (
capcut-smartcut-mcp, mrbuslov, live) — Alternative: Cuts silences and duplicate takes inside your CapCut project, when you finish the edit there- Any MCP client:
pip install -e . (inside the cloned repo), then add the venv python to your MCP config - Any agent, with the vargai CLI:
vargai install capcut-smartcut-mcp - Details: https://varg.ai/how-to/skills/capcut-smartcut-mcp.md
- Any MCP client:
- FFmpeg Skill (
ffmpeg-skill, Shogo Kajiyama, live) — Alternative: 42 FFmpeg tools for agents with a machine-readable contract- Claude Code:
npx ffmpeg-skill - Codex:
npx ffmpeg-skill --codex - Cursor:
npx ffmpeg-skill --cursor - Any agent, with the vargai CLI:
vargai install ffmpeg-skill - Details: https://varg.ai/how-to/skills/ffmpeg-skill.md · Example: https://s3.varg.ai/how-to/previews/564622beb60d/ffmpeg-skill.mp4
- Claude Code:
- Short-form FFmpeg cookbook: copyable commands for Reels (
short-form-ffmpeg-cookbook, varg, live) — Adds: The next commands: crop to 9:16, burn captions, music under the voice- Claude Code:
claude plugin marketplace add vargHQ/skills && claude plugin install varg@varg - Codex:
npx skills add vargHQ/skills --skill short-form-ffmpeg-cookbook -a codex -y - Cursor:
npx skills add vargHQ/skills --skill short-form-ffmpeg-cookbook -a cursor -y - Any agent, with the vargai CLI:
vargai install short-form-ffmpeg-cookbook - Details: https://varg.ai/how-to/skills/short-form-ffmpeg-cookbook.md
- Claude Code:
- Caption Styles: 17 pro caption looks with presets (
caption-styles, varg, live) — Adds: Word-timed captions on the tightened cut- Claude Code:
claude plugin marketplace add vargHQ/skills && claude plugin install varg@varg - Codex:
npx skills add vargHQ/skills --skill caption-styles -a codex -y - Cursor:
npx skills add vargHQ/skills --skill caption-styles -a cursor -y - OpenClaw:
npx clawhub@latest install caption-styles - Gemini CLI:
npx skills add vargHQ/skills --skill caption-styles -a gemini-cli -y - Any agent, with the vargai CLI:
vargai install caption-styles - Details: https://varg.ai/how-to/skills/caption-styles.md · Example: https://s3.varg.ai/files/72c55813-c0fa-4cf2-9f64-ec4f7ed0e7ae/file_4d3d0dbdc222.mp4
- Claude Code:
Ask the person first
Put these choices in front of the person before spending anything. Paste the example link next to each option: people pick a look by seeing it.
How tight?
- Light: only pauses over 0.8 s
- Standard: pauses over 0.55 s
- Tight jump cuts: pauses over 0.35 s
Zoom?
- Punch in to 115% on every other cut — Jump-Zoom Punch-In · example: https://s3.varg.ai/how-to/previews/7121432ced16/take-jump-zoom-punch-in.mp4
- Stronger, 125% (best from a 4K source)
- No zoom, cuts only — Jump Cut · example: https://s3.varg.ai/how-to/previews/c4027cc6cd21/take-jump-cut.mp4
After the cut?
- Word captions — Caption Styles: 17 pro caption looks with presets · example: https://s3.varg.ai/files/72c55813-c0fa-4cf2-9f64-ec4f7ed0e7ae/file_4d3d0dbdc222.mp4
- AI b-roll over the jumps — varg AI · example: https://s3.varg.ai/how-to/previews/7df061df8dcb/varg-ai.mp4
- Nothing, export
How to cut silences and add zooms to a video: step by step
- Check the take with ffprobe (size, frame rate, length) and never overwrite the source: every step writes a new file
- Find the pauses from the audio, not from the transcript: silencedetect at -35 dB for 0.55 s or longer; on a noisy room raise the floor to -30 dB
- One FFmpeg run: keep every stretch of speech with 0.12 s of air on each side, and scale every other kept stretch to 115% so each jump cut reads as a change of camera
- Set FACE to where the eyes sit (0 is the top of the frame, 1 the bottom) so the zoom holds the eye line; stay at 130% or less on 1080p, past that the picture goes soft
- Watch every join once with sound; a pause right before a number or a punchline is a beat, so bring it back by raising the minimum pause
- Ums, retakes and flubs are not pauses: cut those from the transcript next (How to edit your own video footage), then captions and export
Set up varg
varg is one API key for the models these skills drive — Seedance 2.5, Kling 4, Veo 3.1, Wan 3, Nano Banana 2.1, GPT Image 2.5, ElevenLabs v4 and 200+ more — billed in credits, with a cost estimate before anything runs.
- Any agent with a terminal:
curl -fsSL https://varg.ai/install | sh(Windows:irm https://varg.ai/install.ps1 | iex), thenvargai loginand every model is a command —vargai generate_video …,vargai estimate_cost …(https://varg.ai/how-to/cli/) - Claude Code:
claude plugin marketplace add vargHQ/skills && claude plugin install varg@varg(skill + hosted MCP) - Codex, Cursor, Gemini CLI, OpenClaw:
npx skills add vargHQ/skills --skill varg-ai -a <agent> -y - Grok and any agent that reads SKILL.md:
npx skills add vargHQ/skills --skill varg-ai, or point it at the skill's SKILL.md - Claude.ai, ChatGPT, any MCP client: connect
https://mcp.varg.ai/mcp - API key: https://varg.ai/dashboard/api · Model specs: https://varg.ai/models/llms.txt
Related tutorials
- How to edit a product video for TikTok and Reels with AI: Raw product footage (a creator clip, an unboxing, last month's winning ad) recut into a 9:16 ad: hook at second 0, no dead air, captions, one CTA, one file per hook.
- How to cut a podcast into short video clips with AI: Find the best moments in a long video, cut them, reframe to 9:16 and burn captions.
- How to turn photos into a slideshow video with AI: Your photos cut to music, with motion, transitions on the beat and titles.
- How to edit your own video footage with AI: Cut silences and flubs, reframe 16:9 to 9:16, add captions and b-roll to footage you shot.
- How to make AI b-roll for your video: Cutaway footage for every mention in a voiceover or interview: generated clips, collage or stock-style shots, cut in on time.
- How to change something inside a video with AI: Swap a product, restyle a scene, change lighting or the look of an existing clip while keeping the motion.