Transcriber is a native macOS menu bar app for private, on-device English speech recognition. Record with a global shortcut and paste into the focused field, or import an audio file and save its transcript as text.
| Mode | Engine | Use case |
|---|---|---|
| Speed | Parakeet TDT 0.6B v2 | Low-latency everyday dictation |
| Accuracy (Beta) | Cohere Transcribe 03-2026 q8 | Slower, higher-accuracy sentence and paragraph dictation |
Speed is installed automatically when no model is present. Accuracy is an optional download of about 2.19 GB. Installed models can be added, set as the launch default, and removed in Preferences. At least one model must remain installed. The menu's model selector changes the active model for the current session without changing the launch default.
Preferences defaults to Selected model only, which keeps only the selected engine resident and releases the other engine when the model changes. Keep loaded models retains engines used during the app session for faster switching. Memory policy never changes routing: every request uses the selected model, and an Accuracy failure is never hidden by switching to Speed.
Accuracy loads and warms when it is selected, which can take several minutes while Core ML specializes the encoder. Dictation becomes available only after that preparation succeeds. Subsequent Accuracy transcriptions reuse the loaded model for as long as it remains resident.
All inference runs locally through Core ML and FluidAudio. The network entitlement is used only to download model files.
- macOS 26.5 or later on Apple silicon
- Microphone permission for voice recording
- Accessibility permission for the global shortcut and automatic paste
- Notification permission for imported-file completion alerts
Open Transcriber.xcodeproj in Xcode, choose the Mac destination, and press ⌘R.
FluidAudio is pinned exactly to version 0.15.5. Xcode downloads the dependency, and the app downloads model assets when requested.
On first launch, grant Microphone and Accessibility access. If Accessibility is granted after launch, choose Retry from the menu.
The default shortcut is ⌃⌥T.
- Put the insertion point in a text field.
- Press the shortcut to start recording.
- Press it again to stop.
- The app removes silence, normalizes the audio, transcribes it with the selected model, copies the result, and pastes it into the focused field.
Voice recording stops and begins transcription automatically at 15 minutes. Capture storage is hard-capped at the corresponding 14,400,000 canonical samples, so a delayed UI callback cannot grow the recording beyond that boundary.
The last voice transcript can be copied again from the menu. Voice transcripts and imported-file transcripts are tracked separately.
Choose Choose Audio File… from the menu. Supported formats are WAV, AIFF, CAF, M4A, and MP3, with a maximum duration of 30 minutes.
The first import asks for an output folder using Finder. A suggested location is ~/Documents/Transcriber Output. The app stores a security-scoped bookmark to the chosen folder and writes UTF-8 files atomically:
recording.txtrecording-2.txtwhen the first name already existsrecording-3.txt, and so on
Imported audio never pastes into another app and never replaces the last voice transcript. Recording is blocked while a file job is active. Cancellation is best effort during Core ML inference and never writes a partial result.
Completion, cancellation, and failure notifications do not include transcript content. The most recent output can also be revealed from the menu.
- General: launch at login and imported-audio output folder
- Transcription: default model, memory policy, download progress, installation, and removal
- Shortcut: view, record, or reset the global shortcut
Microphone or selected file
→ 16 kHz mono Float32 conversion
→ voice activity detection
→ peak normalization
→ Speed or Accuracy engine
→ paste for voice / atomic text file for imports
Microphone conversion and capture stay in memory and are bounded to 15 minutes; voice dictation does not create a temporary WAV. Accuracy uses Cohere's long-form transcription path for every request. Short recordings use its direct path internally; longer recordings use overlapping windows. Accuracy uses CPU plus Neural Engine so Core ML can accelerate its fixed encoder without competing with the UI for GPU work. The selected-model memory policy releases inactive engine references promptly, although Core ML and the operating system may reclaim their caches asynchronously.
MIT