Skill detail

auto-editor-transcribe

Transcribes media or live mic to text/subtitles with whisper.cpp and edits by spoken content. Directly supports the subtitles facet of video editing.

MatchDirectRecommended for Video Editing
Sourcewyattblue/​auto-editorExternal source
Reported installs375Popularity signal only

Inspect before use

Read the source instructions and check the requirements before you install this skill.

Saved source preview

SKILL.md

The saved excerpt is a snapshot from when this skill was listed. The external source remains the complete and most current version.

---
name: auto-editor-transcribe
description: Transcribe a media file or live microphone to text or subtitles with auto-editor's whisper subcommand, then edit by spoken content — cut to keep (or drop) sections whose subtitles match a word or regex. Use when someone wants a transcript, captions, live speech transcription, or to cut a video based on what is said rather than on loudness.
---

# Transcribe & edit by speech

Use auto-editor's whisper.cpp (Whisper or NVIDIA Parakeet models) or Apple Speech backend to transcribe audio. Cut a timeline based on subtitle content with `--edit subtitle`/`word`.

## Transcribe — `auto-editor whisper`

```
auto-editor whisper <file|:mic> <model> [options]
```

Set `<model>` to a `ggml` model path. Three backends, chosen by the model:

- **Whisper**: `ggml-small.en.bin`, `ggml-medium.en.bin`, `ggml-large-v3.bin`, …
  (https://huggingface.co/ggerganov/whisper.cpp). 99+ languages, `--translate`,
  `--prompt`.
- **Parakeet**: any model with "parakeet" in the filename, e.g.
  `ggml-parakeet-tdt-0.6b-v3-q8_0.bin` (https://huggingface.co/ggml-org/parakeet-GGUF).
  Faster than Whisper at comparable English accuracy; language is
  auto-detected. `--translate`, `--prompt`, and `--language` are rejected.
- **Apple**: the magic model name `apple` uses Apple's built-in transcriber;
  requires macOS 26 or later.

Only the first audio stream of a file is used. Audio is resampled to 16 kHz, and
text prints to stdout by default.

```bash
auto-editor whisper example.mp4 ggml-medium.en.bin                      # plain text → stdout
auto-editor whisper example.mp4 ggml-medium.en.bin --format srt -o out.srt
auto-editor whisper example.mp4 ggml-parakeet-tdt-0.6b-v3-q8_0.bin      # parakeet backend
auto-editor whisper example.mp4 apple --language en_US                  # macOS 26+
```

Options: `--format text|srt|json`, `-o/--output FILE`, `-l/--language en`
(default auto), `-tr/--translate` (→ English), `-sw/--split-words` (one word per
cue), `--queue SECS` (default 30), `--prompt TEXT`, `--threads N` (default 4),
and `-t/--threshold THRES` (default 0.04).

`--split-words` works with on all backends. Parakeet is the most accurate.

With the `apple` model, set `--language` to a supported language or locale.
Apple speech cannot auto-detect language, so `auto` falls back to `en_US` with a
warning. Do not pass `--translate` or `--prompt`; neither is supported. The first
use of a language may download Apple's speech model and therefore needs network
access.

### Transcribe a live microphone

Pass `:mic` instead of a file. Stop capture gracefully with Ctrl-C.

```bash
auto-editor whisper :mic ggml-medium.en.bin
auto-editor whisper :mic apple --language en_US    # macOS 26+
auto-editor whisper :mic ggml-medium.en.bin -o transcript.srt
```

This streams the microphone directly to transcription and does not save a
media recording. To retain and edit the captured audio, use `auto-editor :mic`;
editor and timeline exports save a sibling lossless-FLAC `_RECORDING.mka` by
default.

Live capture supports macOS, Windows, and Linux:

- macOS uses AVFoundation and prefers a USB microphone, then the system default.
- Windows uses DirectShow and prefers a USB microphone, then the first audio capture device.
- Linux uses the default ALSA input device.

When `-o/--output` ends in `.srt`, `.json`, `.txt`, or `.text`, the output format is
inferred unless `--format` is set explicitly.

## Edit by spoken content

`--edit subtitle`/`word` marks the time a matching subtitle line occupies as
**active** (kept by default). Use an existing subtitle stream, or transcribe to
an `.srt` first and feed it in.

| Method | Active when… | Args (defaults) |
|---|---|---|
| `subtitle` / `regex` | `pattern` (regex) matches a line | `pattern=""` (empty matches every line), `stream=0`, `ignore-case=#f` |
| `word` | `value` appears as a whole word | `value` required, `stream=0`, `ignore-case=#t` |

`pattern` is optional for `subtitle`/`regex`: with none, t
Read the full source on GitHub (opens external page)
Context

Related work