Auto-Editor can edit based on what's said in your video. It does this by reading subtitles and treating the words on screen as the signal to keep or cut.
If your video already carries a subtitle track (embedded in video.mp4) or has a sidecar file next to it (video.srt), you can edit by them right away. Most footage doesn't come with subtitles though, so you'll need to make them. Auto-Editor has built-in support for Whisper models, so you can transcribe locally and privately, without uploading your video anywhere:
auto-editor whisper video.mp4 ggml-large-v3.bin -o video.srt
The second argument is a path to a ggml Whisper model. You can download these from ggerganov/whisper.cpp on Hugging Face.
I highly recommend ggml-large-v3 if you can get decent speeds with your setup. If it's too slow, drop down to ggml-medium or ggml-small. For English-only audio, the .en variants (like ggml-medium.en) are smaller and faster.
All subtitle edit methods edit per cue. Subtitle cues are typically whole sentences, but you can generate subtitles with explicit word timings:
auto-editor whisper video.mp4 ggml-large-v3.bin --split-words
Once you have subtitles, --edit can cut on their content:
# Keep every cue
auto-editor video.mp4 --edit subtitle
# Keep only the cues where "introduction" is said
auto-editor video.mp4 --edit word:introduction
# Keep cues where "yes" or "no" is said (case insensitive).
auto-editor video.mp4 --edit 'regex:"yes|no",ignore-case=#t'
word matches a whole word and is case-insensitive by default. subtitle (also spelled regex) matches a regular expression against the whole line, and with the default empty pattern it simply keeps every subtitled cue.
Models sometimes struggle with proper nouns like names. whisper --prompt
alleviates this issue.
Without:
auto-editor whisper file.mp4 model.bin
Check out the auto editor app by base wood IO
With:
auto-editor whisper file.mp4 model.bin --prompt "Auto-Editor Basswood-io"
Check out the Auto-Editor app by Basswood-io!
Whisper models will sometimes not even transcribe the "umm"s or various other filler words. Aggressively cutting out filler words can make the edit worse than moderate cutting or not cutting at all.
whisper.cpp (v1.9+) supports both Whisper and Parakeet models. Using Parakeet models in auto-editor is experimental, but they are supposed to be better than Whisper models, especially at accurate word-level timings. I will edit this section in the future when I learn more.