Subtext

Paste a link from your phone, transcribe it locally with Whisper, run analyses through Ollama. A private web service over Tailscale and a desktop companion for editing and export.

Python · PySide6MIT per READMEstarted Nov 2025activesource ->
Subtext home screen. Paste a video link or choose a file, optionally identify speakers, create transcript.

Why

Transcription services want the file uploaded and a monthly fee. A laptop with Whisper does the same job and the audio never leaves it. Subtext is the plumbing around that: a URL in from the phone, a transcript back, and a few preset prompts run against a local model.

What’s inside

  • Transcribe a pasted URL, several URLs combined into one transcript, or an uploaded file.
  • YouTube captions are used first; Whisper runs only when there are none.
  • Download the original video or an audio-only stream.
  • Preset analyses through Ollama: caption ideas, hook rewrites, title packs, or a custom prompt.
  • Optional local speaker labels.
  • Private access over Tailscale Serve, bound to localhost, behind a shared key.
  • A CLI client and a desktop app with transcript editing and export to JSON, Markdown, HTML, PDF or text.

Status

Active. Whisper runs through openai-whisper, faster-whisper or mlx-whisper depending on the machine; the default model is large-v3-turbo.

github.com/pattty847/Subtext