Skip to content

ygivenx/freeWispr

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FreeWispr

FreeWispr

Free, local, privacy-first dictation for macOS — powered by whisper.cpp

Release License macOS 14+ Apple Silicon Swift


Demo

FreeWispr demo

Why FreeWispr?

FreeWispr Wispr Flow Apple Dictation
Price Free & open source $8/month Free
Privacy 100% local, no network Cloud-based Cloud-based
Works in Any app (terminals, editors, browsers) Most apps Limited app support
Models Configurable (tiny → medium) Proprietary Fixed
Latency Real-time on Apple Silicon Network dependent Network dependent
Open source Yes No No

Download

Download the latest release — grab the .dmg, drag to Applications, done.

Signed with Apple Developer ID and notarized by Apple — no Gatekeeper warnings. Requires macOS 14+ on Apple Silicon or Intel.

How It Works

  1. Hold Ctrl+Option (or Globe key) to record
  2. Release to transcribe
  3. Text is pasted into whatever app you're focused on

That's it. All processing happens locally on your Mac.

Features

  • Push-to-talk dictation into any app (terminals, editors, chat apps, browsers)
  • Core ML acceleration on Apple Silicon for fast inference
  • User-configurable model sizes — tiny (~75 MB), base (~142 MB), small (~466 MB), medium (~1.5 GB)
  • Menu bar app — lives in your menu bar, no dock icon
  • Auto-downloads models on first launch from Hugging Face

Requirements

  • macOS 14+
  • Apple Silicon or Intel Mac
  • Accessibility permission (for global hotkey)
  • Microphone permission

Build from Source

cd FreeWispr
swift build
swift run

On first launch, FreeWispr will:

  1. Prompt for Accessibility permission (System Settings > Privacy > Accessibility)
  2. Download the base whisper model + Core ML encoder (~180 MB total)
  3. Appear as a mic icon in your menu bar

Usage

  • Hold Ctrl+Option or Globe key — starts recording
  • Release — stops recording and transcribes
  • Click the menu bar icon to change model size or quit

Tech Stack

  • Swift / SwiftUI
  • SwiftWhisper (whisper.cpp SPM wrapper)
  • AVAudioEngine for audio capture
  • CGEvent for global hotkey
  • NSPasteboard for universal text injection via Cmd+V

Memory Profile

FreeWispr keeps the whisper.cpp model loaded in memory for instant transcription. Measured on Apple Silicon (M4 Max) with the base model:

Category Baseline During Inference Notes
MALLOC_LARGE ~330 MB ~330 MB GGML model weights + KV cache + Core ML encoder buffers
MALLOC_SMALL ~27 MB ~37 MB General heap — audio buffers, Swift objects
Neural (ANE) 72 MB clean 111 MB peak Core ML encoder on Apple Neural Engine; reclaimable by OS
Total footprint ~375 MB ~376 MB Peak stays close to baseline

Model size vs memory

Larger models use proportionally more RAM:

Model Disk Size Approx. Footprint
tiny ~75 MB ~150 MB
base (default) ~142 MB ~375 MB
small ~466 MB ~700 MB
medium ~1.5 GB ~2 GB

Memory management

To prevent unbounded memory growth during long sessions:

  • Whisper context recreation — The whisper.cpp context accumulates internal state (KV cache, intermediate buffers) across transcriptions (whisper.cpp #2605). FreeWispr recreates the context every 50 transcriptions to reclaim this memory.
  • Audio buffer cap — Recording buffers release excess capacity after long recordings (>60s) to prevent the high-water mark from persisting.
  • LanguageModelSession reuse — The AI Cleanup feature (macOS 26+) reuses a single on-device LLM session instead of creating one per correction.

Profiling

To check memory usage of a running instance:

# Quick check
ps -o pid,rss,%mem,command -p $(pgrep FreeWispr)

# Detailed breakdown (requires sudo)
sudo footprint -p $(pgrep FreeWispr)

# VM region summary
vmmap --summary $(pgrep FreeWispr)

Contributing

Contributions are welcome! Please see the issue tracker for open issues, or open a new one to discuss your idea.

License

MIT

About

Free, local, privacy-first dictation for macOS — like Wispr but open source

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors