A macOS Tahoe app for transcribing audio/video files using Apple's on-device Speech APIs (SpeechTranscriber & SpeechAnalyzer)
Find a file
2026-02-16 15:03:00 +01:00
.github Remove ci.yml 2026-01-14 12:29:16 -03:00
Stenographer Add MIT license to source code 2026-02-16 15:03:00 +01:00
Stenographer.xcodeproj Add Hardened Rutime 2025-12-14 20:41:05 +01:00
.gitignore Add Stenographer App 2025-12-12 21:25:23 +01:00
.swiftformat Add MIT license to source code 2026-02-16 15:03:00 +01:00
.swiftlint.yml Update SwiftLint rules 2026-01-14 11:52:24 -03:00
LICENSE Initial commit 2025-12-12 21:23:40 +01:00
README.md Update README 2025-12-15 10:06:53 +01:00

Stenographer

Screenshot of the Stenographer application for macOS Tahoe

Stenographer is a simple macOS application for transcribing audio and video files using Apple's on-device speech recognition. Drop a media file (MP3, M4A, WAV, etc.) onto the left panel, select a language, and watch as the transcription appears in real-time on the right. Once complete, you can copy the text to your clipboard or save it to a file.

The app leverages the new SpeechTranscriber and SpeechAnalyzer APIs introduced in macOS Tahoe (macOS 26), which provide high-quality, privacy-preserving transcription entirely on-device. Language models are downloaded automatically when needed.

Install Stenographer

Download directly from GitHub Releases

You can download the latest pre-built version of Stenographer directly from the GitHub Releases page. Simply download the .zip file from the latest release, open it, and drag the Stenographer app to your Applications folder. This method is useful if you prefer manual installation or don't use Homebrew.

Install via Brew 🤩

brew tap otaviocc/apps
brew install --cask stenographer

Learning Exercise

This project was created as a learning exercise to explore Apple's new Speech framework capabilities in macOS Tahoe. It serves as a reference implementation for understanding:

  • The new SpeechTranscriber and SpeechAnalyzer APIs
  • On-device speech recognition with AssetInventory for language model management

Requirements

  • macOS Tahoe (macOS 26) or later
  • Xcode 26 or later