Apps and sites we build and maintain alongside this one.
Mock tests, study material, books and an AI-powered study app.
Automated video production and channel management tools.
Track, issue, and manage books with a simple mobile app.
Score and review handwritten answer sheets on the go.
A study companion app built for students.
Read the latest blogs and news updates.
Create presentations quickly for online classes.

Editing a talking-head video for Instagram Reels or YouTube Shorts can be an incredibly tedious process. When you record a raw take, you naturally pause, fumble, repeat lines, and use filler words like "um" and "uh." Manually scrolling through a timeline to slice out these dead spaces and bad takes can turn a two-minute video edit into a multi-hour chore.
Fortunately, you can automate this entire process on your laptop using a highly efficient, free AI workflow. By combining the raw power of FFmpeg's silencedetect engine with the smart reasoning of Claude, you can generate a perfect cut list, remove silences, eliminate bad retakes, and export a polished, synchronized Reel in minutes.

Traditional video editing involves opening an app like Premiere Pro or CapCut, looking at the audio waveform, and manually cutting out every single gap. If you make a mistake and repeat a sentence three times, you have to listen to all of them, decide which take was the best, and delete the rest by hand.
This workflow changes everything. Instead of doing the heavy lifting yourself, you let a script analyze your audio to find the exact moments of silence. Then, you feed that data along with your video's transcript to Claude. Claude acts as your assistant editor: it reads the text, spots where you fumbled, throws away the bad takes, and writes a single command that cuts your video automatically. The result is a lightning-fast, perfectly synchronized rough cut ready for publishing.
Before we start, you need FFmpeg installed. FFmpeg is a free, command-line tool that handles video and audio processing. To install it quickly, open your terminal (Terminal on Mac, PowerShell on Windows) and run the following commands:
For macOS (using Homebrew):
brew install ffmpeg
For Windows (using WinGet):
winget install -e --id Gyan.FFmpeg
Once the installation is complete, verify it by running:
ffmpeg -version
If you see version details, your tool is ready to go.
The first step is to scan your video file and find every pause. Run this command in your terminal, replacing input.mp4 with your raw video file name:
ffmpeg -hide_banner -vn -i input.mp4 -af "silencedetect=noise=-30dB:d=0.5" -f null - 2> silence_logs.txt
Here is what these parameters do:
-hide_banner: Hides unnecessary system logs.-vn: Ignores the video stream during this pass, making the analysis run 10x faster.noise=-30dB: Sets the volume threshold. Anything quieter than -30 decibels is treated as silence.d=0.5: Sets the duration. Any pause lasting 0.5 seconds or longer will be logged.2> silence_logs.txt: Saves the output logs into a text file named silence_logs.txt.While FFmpeg knows where you stopped talking, it does not know what you said. To remove bad takes and filler words, we need a transcript with timestamps.
You can generate this easily using OpenAI’s free Whisper tool, or by exporting an SRT or VTT caption file from any free transcription tool or editing app (like CapCut or YouTube's auto-captions). Once you have your SRT/VTT file or plain text transcript with timecodes, you are ready to let Claude work its magic.
Now, open Claude and upload or paste both your silence_logs.txt and your timestamped transcript. Paste the following prompt into Claude to generate your cutting commands:
You are a professional video editor. I have a raw talking-head video. I need to remove silences, filler words (um, uh, like), and bad takes/retakes where I fumbled and repeated myself.
Below, I have provided the FFmpeg silence log and my timestamped transcript.
FFmpeg Silence Log:
[PASTE YOUR SILENCE_LOGS.TXT HERE]
Timestamped Transcript:
[PASTE YOUR TRANSCRIPT WITH TIMESTAMPS HERE]
Your task:
1. Analyze the transcript to identify fumbles and retakes. If a sentence or line is repeated, keep ONLY the final, successful take and discard the earlier fumbled takes.
2. Cross-reference the transcript with the FFmpeg silence log to identify the exact start and end timestamps of the silent parts.
3. Generate a list of "keep" segments. To ensure the cuts sound natural and do not clip the start or end of my words, add a 0.1-second padding (e.g., if a spoken segment starts at 4.2s, start the "keep" segment at 4.1s; if it ends at 10.0s, end the segment at 10.1s).
4. Combine these "keep" segments into a single FFmpeg filter complex syntax.
5. Output the final, ready-to-run FFmpeg command in a code block using the 'select' and 'aselect' filters, formatted like this:
ffmpeg -i input.mp4 -vf "select='between(t,START1,END1)+between(t,START2,END2)',setpts=N/FRAME_RATE/TB" -af "aselect='between(t,START1,END1)+between(t,START2,END2)',asetpts=N/SR/TB" output_cut.mp4
Claude will analyze your fumbles and output a single, precise command.
Most tutorials tell you to split your video into dozens of tiny files and then stitch them back together. This is a bad idea because it often leads to audio-video drift (where your lips stop matching the sound).
Instead, copy the exact command Claude gives you and run it in your terminal. It will look similar to this:
ffmpeg -i input.mp4 -vf "select='between(t,0,4.2)+between(t,5.1,12.8)+between(t,13.5,22.0)',setpts=N/FRAME_RATE/TB" -af "aselect='between(t,0,4.2)+between(t,5.1,12.8)+between(t,13.5,22.0)',asetpts=N/SR/TB" output_cut.mp4
This command cuts both the video and audio streams at the exact same millisecond and rejoins them in a single pass, keeping your lip-sync perfectly locked.

When you cut out silences and mistakes, the speaker's head will "jump" or teleport slightly from one cut to the next. This is called a jump cut. If you leave it raw, it can look choppy and amateurish.
To hide these jumps, you should alternate your video's zoom level on every cut. This mimics a professional two-camera setup:
If you are using a mobile editor like CapCut, simply import your output_cut.mp4, go to every cut point, and pinch-to-zoom on alternating clips.
To make sure your Reel stands out on busy social feeds, your audio needs to be loud, clear, and normalized. Run this final command to apply professional loudness normalization (targeting -16 LUFS, the standard for Instagram and YouTube Shorts):
ffmpeg -i output_cut.mp4 -af loudnorm=I=-16:TP=-1.5:LRA=11 final_reel.mp4
This balances out your quiet whispered words and loud spoken words, making your voice sound rich and professional.
| Symptom / Pitfall | Root Cause | How to Fix |
|---|---|---|
| Words are cut off (Clipping) | The cut starts too late or ends too early, clipping consonants like "S" or "T". | Tell Claude to increase the padding to 0.15s or 0.2s before and after each keep segment. |
| Audio pops or clicks | Abrupt cuts in the audio waveform at transition points. | Apply a tiny audio crossfade or use FFmpeg's afade filter, or do a 2-frame audio fade in CapCut. |
| Too many tiny cuts | Noise threshold is too high, treating breathing as speech. | Adjust the noise=-30dB setting to -35dB or -40dB to ignore background breathing. |
You can run the Claude analysis on your phone, but running FFmpeg commands requires a computer. However, you can use the timestamps generated by Claude as a guide to quickly make manual cuts in mobile apps like CapCut.
If you have a lot of background noise, use -25dB or -30dB. If you are recording in a dead-silent studio with a professional microphone, use -40dB or -45dB so that even soft whispers are detected as speech.
Yes, you can use the free tier of Claude to analyze your transcripts and logs. If you have extremely long videos (over 20 minutes), you may need a Claude Pro subscription due to higher token usage.
This is where Claude shines. Unlike simple auto-cut tools that only look at silence, Claude reads the transcript. It will notice that you repeated the same sentence and will automatically discard the fumbled takes, keeping only the final successful one.


