← All projects

Side project · macOS app · Open source

Transcriber.

Voice dictation for the Mac that runs entirely on the Mac. Hold a key, talk, let go, and your words appear in whatever app you're using.

Status
Open source, MIT license
Runs on
Apple Silicon Macs, macOS 14+
Built with
Swift, whisper.cpp, Metal
Speech model
Whisper Large v3 Turbo, on device
The Transcriber pill in six color themes, each showing a live transcript
A small pill shows it's listening, with the words as they come. Six colors; drag it anywhere.

Why I built it

I was paying $10 a month for a dictation app that sent everything I said to someone else's servers. So I built my own.

Transcriber runs on your Mac and nowhere else. Your voice never leaves it: no account, no subscription, no data collection. I believe AI that touches your personal data should run locally and belong to the people using it. This is my small piece of that.

What it does

  • Works in any app. Chrome, Slack, Notes, Mail, ChatGPT: wherever your cursor is.
  • Fast. A typical sentence is ready 0.2 to 0.6 seconds after you let go, on a MacBook Pro M3.
  • Accurate. OpenAI's Whisper Large v3 Turbo on the Mac's GPU. Punctuation included, "um"s removed.
  • Knows your words. Add names and jargon and it spells them right. Fix a word once in History and it remembers.
  • Look around while you talk. Switch apps mid-sentence; the text still lands where you started.
  • Stays out of the way. 0% CPU when idle. Your last 100 dictations stay on your Mac only.
ShortcutWhat happens
Hold ⌥Talk while holding, release to paste.
Double-tap ⌥Hands-free: talk as long as you like, press ⌥ again to finish.
Esc while holdingStop without pasting. The text is kept in History.

How it's fast

Whisper always processes 30 seconds of audio, even for a two-second sentence. On an M3 that alone takes over a second. Transcriber shrinks that window to fit each clip, which makes short dictations 3 to 6 times faster with the same text.

You sayStandard WhisperTranscriber
"Sounds good, thanks."1.3 s0.21 s
A German sentence (4 s)1.4 s0.24 s
Two sentences (10 s)1.4 s0.51 s

Two details made it work: Metal's flash attention produces garbage with shortened windows, so it's turned off, and windows under 5 seconds are unreliable, so that's the minimum.

Transcriber settings: trigger key, microphone, language and text options
Settings: the shortcut key, language, microphone, vocabulary and model.
The pill in hands-free mode, with a lock icon and the hint to press Option to finish
Hands-free mode: the pill shows a lock until you press ⌥ again.