video-editor

Transcribes videos with Whisper and renders trimmed cuts using ffmpeg.

1|Updated May 9, 2026
One-click install
npx skills add https://github.com/watzing/claude-video-editor --skill video-editor-watzing
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: video-editor
Source: https://github.com/watzing/claude-video-editor/tree/main/.claude/skills/video-editor
Command: npx skills add https://github.com/watzing/claude-video-editor --skill video-editor-watzing

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires openai-whisper.

What problem does it solve? Recorded screen-cast walkthroughs contain false starts, repeated takes, and dead silence that require tedious manual editing. This Skill automates the transcribe-and-trim workflow so a raw recording becomes a tight, edited video without manual timeline work. ## Core Features & Use Cases - Transcription-driven cuts: Extracts audio with ffmpeg, transcribes with OpenAI Whisper at word-level timestamps, and proposes cuts based on narration cues like "scratch that" or repeated takes. - Collaborative review: Presents proposed cuts plus the resulting continuous transcript for user sign-off before rendering, with explicit flagging of judgment calls. - Visual cut editor: Generates a browser-based timeline editor served by a local Python server where segment boundaries can be dragged, previewed, and saved back to disk for re-rendering. - Use Case: Drop a 10-minute walkthrough recording into source/, ask for it to be cleaned up, review the proposed cuts, fine-tune boundaries in the browser editor, and receive a loudness-normalized final MP4 in output/. ## Quick Start Drop a video file into the source/ folder and ask Claude to clean up the video in source/.

Frequently Asked Questions about video-editor

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I trim a video automatically based on its transcript?▼

Extract the audio with ffmpeg, transcribe it with OpenAI Whisper using word-level timestamps, then identify cut points from narration cues like false starts and repeated takes. Render the kept segments with ffmpeg using libx264 re-encoding for clean non-keyframe cuts.

How to cut silence and dead time from a screen recording?▼

Use Whisper transcription timestamps to find gaps between segments, or run ffmpeg silencedetect with a threshold like -30dB for 0.5 seconds. Flag long silences over 5 seconds for review since they may be intentional visual demos rather than dead time.

What Whisper model should I use for English screen recordings?▼

The base.en model is fast and accurate enough for English screen recordings, with a one-time ~140MB download. Escalate to small.en or medium when accuracy matters more than speed, and always enable word timestamps so cuts land on word boundaries.

Can I adjust video cut points visually instead of editing timestamps?▼

Yes, the workflow generates a browser-based editor served by a local Python server on port 8765. You can drag segment bands and edges on a timeline, preview the final sequence, and save cuts back to a JSON file for re-rendering.

Why does ffmpeg drop loop iterations when cutting multiple segments?▼

ffmpeg consumes stdin by default, which eats the pipe feeding a while-read loop and drops subsequent iterations. Always pass -nostdin to ffmpeg inside loops and iterate over a shell array rather than piping into while read.

What loudness level should I target when rendering videos for YouTube?▼

Target -16 LUFS with -1.5 dBTP true peak using ffmpeg's loudnorm filter, which matches YouTube and Apple Podcasts normalization. Use -14 LUFS for Spotify-style targets or -23 LUFS for EBU broadcast standards.