A desktop app for dictation, audio-file transcription, and meeting notes on Windows, macOS, and Linux. Transcribe with local speech models or the OpenAI API, then optionally use AI to clean up the text.
Website · Download · Run from source · Install · Changelog
Use a packaged release with bundled Python and dependencies, or run from source using your own Python environment.
- Dictation: Record from any app with a global hotkey, see a live preview on supported engines, and paste the result into the active window.
- Audio files: Transcribe one file or a queue, keep results separate or combine them, and copy the output when ready.
- Meetings: Capture microphone and system audio, follow a live dashboard, review searchable transcripts and AI insights, play recordings, and export. Available on Windows and macOS 13+; Linux system audio is a preview.
- AI cleanup: Apply spelling and style rules or reusable cleanup profiles, with separate text-model choices for dictation and meetings.
- Model Manager: Select speech and text models; install local models and optional runtimes through Downloads.
- History: Search, retranscribe, and export transcripts as Markdown, plain text, or JSON.
The app also includes microphone selection, a system tray where available, and dark, light, or system-matched themes.
Download the package for your platform from Releases. Native packages include Python and the app dependencies.
| Platform | Install |
|---|---|
| Windows | Run the .exe installer. It installs per-user without admin rights. |
| macOS | Open the .dmg and drag OpenWhisper into Applications. Requires Apple Silicon and macOS 14+. The preview is not notarized; approve first launch in Privacy & Security → Open Anyway. |
| Linux | Install the .deb on Debian 12+ / Ubuntu 22.04+, or .pkg.tar.zst on Arch-compatible distributions. Both packages require x86_64. |
On Linux, use the matching command, replacing <version> with your download's version:
sudo apt install "./OpenWhisper-<version>-linux-amd64.deb"
# or
sudo pacman -U "./OpenWhisper-<version>-linux-x86_64.pkg.tar.zst"Launch from your app menu; Linux packages also provide ow and openwhisper commands.
Downloads include SHA256SUMS.txt for verification. Compare your file's hash using Get-FileHash in PowerShell, shasum -a 256 on macOS, or sha256sum on Linux. The Windows installer is unsigned; if SmartScreen blocks it, verify the download before choosing More info → Run anyway.
Allow Microphone for recording, Screen & System Audio Recording for meeting system audio, and Accessibility for auto-paste under System Settings → Privacy & Security. Without Accessibility, you can still copy transcripts. Settings → General → Set up auto-paste shows the exact app to allow; if permission stops working after an update, remove its old entry, add that app again, and restart.
Run OpenWhisper directly from a source checkout on Windows, macOS, or Linux. You'll need Git and Python 3.11 or 3.12; the steps below install the app's dependencies in a virtual environment. This also supports Intel Macs and Linux distributions without native packages.
Clone the repository and enter its folder:
git clone https://github.com/Knuckles92/OpenWhisper
cd OpenWhisperThen create the virtual environment and install dependencies for your platform.
Windows (PowerShell):
python -m venv venv
. .\venv\Scripts\Activate.ps1
python -m pip install -r requirements.txtmacOS / Linux:
python3 -m venv venv
source venv/bin/activate
python -m pip install -r requirements.txtOn Linux, install Python's venv and development packages and a C compiler if needed. The launcher checks audio and Qt system libraries and prints the package-manager command for any missing dependencies. Meeting capture also needs PulseAudio or PipeWire-Pulse.
After setup, use these commands whenever you want to run OpenWhisper. Run them from your OpenWhisper checkout folder.
Windows (PowerShell):
. .\venv\Scripts\Activate.ps1
python app_qt.pymacOS / Linux:
./scripts/openwhisperThe macOS/Linux launcher selects the project's virtual environment automatically. On macOS, it also lets Accessibility setup identify the correct app bundle. After launch, follow Get started to choose a model and microphone.
To register ow and openwhisper, run .\install.cmd in PowerShell on Windows or ./install.sh on macOS/Linux once from your checkout folder. Open a new terminal, then use ow or openwhisper from any folder without activating the virtual environment. See source launchers for details.
For Local Whisper, install GPU Acceleration from Downloads → Components on Windows. Windows/Linux source installs can run python -m pip install -r requirements-gpu.txt in the activated virtual environment. Both need an NVIDIA driver providing CUDA 12 (525+); the CUDA Toolkit is not required. macOS uses CPU.
Other speech engines use their own runtimes from Downloads. The Meeting Intelligence Agent is also a separate component, available on Windows and Linux.
Use Help → Check for Updates. Windows applies an in-app update or opens setup; macOS opens a verified DMG for replacement in Applications. On Linux, install the new package with the same command as above. Source users run git pull --ff-only and reinstall requirements if dependencies changed. Automatic checks and notifications are configurable in Settings → General.
- Open Model Manager and choose a speech backend. New Windows x64 installs default to Parakeet; other platforms default to Local Whisper. Existing choices are preserved.
- Download the selected model and any required runtime through Downloads, or add an OpenAI key in Settings → API keys for cloud transcription.
- Choose your microphone in Settings → Recording. On macOS, grant the required permissions.
- Use Quick Record or the recording hotkey. Stop recording to transcribe; dictation follows your clipboard and auto-paste settings. Upload File results stay in the app and have Copy buttons.
For meetings, open Meeting Mode. After local transcription finishes, Continue in the background lets you start another meeting while cleanup and reports finish; results remain in Past Meetings.
Change shortcuts and choose Toggle or Push and hold in Settings → Hotkeys. Toggle starts and stops recording with successive presses; push-and-hold records until you release the shortcut.
| Action | Windows / Linux | macOS |
|---|---|---|
| Start/stop recording | Numpad * |
Control+Option+R |
| Cancel | Numpad - |
Control+Option+Escape |
| Enable/disable program | Ctrl+Alt+Numpad * |
Control+Option+Shift+R |
| Minimize to tray | Ctrl+Alt+M |
Control+Option+M |
On Linux, hotkeys also reach the focused app. Native Wayland limits global hotkeys and auto-paste; use in-app controls and clipboard copy, or an X11 session for those integrations. On macOS, auto-paste requires Accessibility permission; normal global hotkeys do not.
| Backend | Models | Platform / device | Workflows |
|---|---|---|---|
| Local Whisper | Standard Whisper sizes, turbo, Distil-Whisper | All platforms, CPU; NVIDIA CUDA on Windows/Linux | Dictation with preview, uploads, meetings |
| Parakeet | TDT 0.6B v3 | Windows x64 CPU / NVIDIA GPU; Apple Silicon CPU | Dictation with preview, uploads, meeting chunks |
| Qwen3-ASR | 0.6B, 1.7B | Windows x64 CPU / NVIDIA GPU | Dictation, uploads |
| Nemotron Streaming | 3.5 ASR Streaming 0.6B | Windows x64 CPU / NVIDIA GPU | Dictation with preview, uploads, meetings with native preview |
| Moonshine | Streaming Small / Medium, English | Windows x64 CPU | Dictation, uploads, meetings with native preview |
| OpenAI API | GPT-Transcribe, GPT-4o Transcribe, GPT-4o Mini Transcribe, Whisper | Cloud; API key and network required | Dictation, uploads |
Local model weights and optional runtimes are separate downloads. Downloads shows model details and required components, and verifies component archives before installation. macOS transcription uses CPU; see GPU acceleration for Windows and Linux.
Speech recognition and text processing use separate models. Choose cleanup models in Model Manager → On-demand → Text cleanup, and configure meeting models independently. Text providers include OpenAI, OpenRouter, Ollama, Groq, OpenCode Go/Zen, and custom OpenAI-compatible endpoints.
Add credentials in Settings → API keys; they are stored in the OS credential store. Environment variables or a .env file provide a fallback when no key is saved: OPENAI_API_KEY, OPENROUTER_API_KEY, GROQ_API_KEY, OPENCODE_GO_API_KEY, and OPENCODE_ZEN_API_KEY. Add custom endpoints in Model Manager. Ollama requires a separately managed server.
Enable cleanup in Settings → Cleanup, teach spelling and style in Learned rules, and use Profiles for formats such as emails or support tickets. Meeting settings control intelligence, end-of-meeting processing, and dashboard sharing.
Downloaded speech models load from the local cache without network metadata checks. Install any required runtime before going offline.
Settings → Advanced → Hugging Face Downloads controls missing-model downloads: ask first (default), always allow, or never connect unless you approve a one-time override. Setting HF_HUB_OFFLINE=1 before launch blocks model downloads entirely. This controls model downloads; cloud transcription and remote text providers still require a network connection.
See CONTRIBUTING.md for development setup, validation, and backend changes. Release history lives in CHANGELOG.md.
OpenWhisper builds on OpenAI Whisper, faster-whisper, NVIDIA NeMo-Speech.cpp, Qwen3-ASR, and Moonshine, with converted Whisper weights from Systran and Mobius Labs. The app source is MIT licensed; model weights and dependencies retain their own licenses. See Third-party notices.




