wyattblue/auto-editor

auto-editor-transcribe

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.

Quelltext ansehen

Verwendung

  1. Installationsbefehl kopieren und das Quellpaket vor der Installation in der eigenen Agentenumgebung prüfen.
  2. Benötigte Werkzeuge, Zugangsdaten und Hosts im Original prüfen.
  3. Eingabe und gewünschtes Ergebnis beschreiben und die Ausgabe mit den Quellen abgleichen.
npx skills add https://github.com/wyattblue/auto-editor --skill auto-editor-transcribe

Vor dem Start

  • Die Installation umfasst weder Modellabo noch API-Kontingent oder Dateizugriffsrechte.
  • Sterne und Installationen zeigen Aktivität, keine unabhängige Qualitäts- oder Sicherheitsprüfung.
Originales Skill-Dokument

Aus dem Quell-Repository gerendert; Überschriften, Beispiele, Code, Tabellen, Links und Bilder bleiben erhalten.

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.

MethodActive when…Args (defaults)
subtitle / regexpattern (regex) matches a linepattern="" (empty matches every line), stream=0, ignore-case=#f
wordvalue appears as a whole wordvalue required, stream=0, ignore-case=#t

pattern is optional for subtitle/regex: with none, the empty regex matches every subtitle line, so --edit subtitle keeps all sections that have a subtitle (i.e. cut everything with no speech). word, by contrast, requires a value.

bash
# Keep only sections that have any subtitle (cut the silent gaps between speech)
auto-editor talk.mkv --edit subtitle

# Keep only sections where "introduction" is spoken
auto-editor lecture.mp4 --edit word:introduction

# Regex match (case-insensitive); keep matched lines
auto-editor talk.mkv --edit "subtitle:pattern=(yes|no),ignore-case=#t"

# Cut filler words instead of keeping them: invert with `not`
auto-editor video.mp4 --edit "(not word:um)"

Transcribe → cut workflow

When the media has no subtitle stream, generate a sidecar named after the input — for talk.mp4, auto-editor auto-loads talk.srt (then talk.ass) when the requested subtitle stream isn't embedded:

bash
auto-editor whisper talk.mp4 ggml-medium.en.bin --format srt -o talk.srt
auto-editor talk.mp4 --edit word:question        # picks up talk.srt automatically

Inspect subtitle streams with auto-editor subdump FILE (text subtitles only; bitmap subtitles won't dump).

For loudness/motion-based cutting and pace, see the auto-editor skill.

Verwandte Aufgaben

aus demselben Repository

Weitere Skills

Alle Skills