Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

audio-to-text-transcriber

Turn any audio file into a clean, timestamped text transcript — 100% locally on your Mac, for free. No API keys, no upload, no per-minute billing. Your audio never leaves your machine.

Built on Parakeet (NVIDIA's open speech-to-text model) running via Apple's MLX framework. On an Apple Silicon Mac it transcribes about 80 minutes of audio in ~60 seconds.


What you get

Feed it an MP3 (or almost any audio/video file) and get back four files:

File What it is
.txt Plain, punctuated transcript — ready to read, paste, or feed to an AI
.srt Subtitles with timestamps — line up with the recording
.vtt Web-style subtitles
.json Full data including word-level timestamps

Quality is genuinely good: proper punctuation, sentence breaks, capitalization, and correct proper nouns — even on long, casual, multi-person conversations.


Quick start

# 1. Clone this repo
git clone https://github.com/Seven-Figure-Agency/audio-to-text-transcriber.git
cd audio-to-text-transcriber

# 2. Install everything (one time — takes a few minutes)
./setup.sh

# 3. Transcribe a file
./transcribe.sh ~/Downloads/some-recording.mp3

That's it. The transcript files appear right next to your audio file.

Transcribe a whole folder at once:

./transcribe.sh ~/Downloads/recordings/

Send the transcripts somewhere specific:

./transcribe.sh ~/Downloads/recording.mp3 ~/Documents/transcripts/

Requirements

An Apple Silicon Mac (M1, M2, M3, or M4) running a recent macOS. That's the main one.

setup.sh installs the rest for you (ffmpeg, uv, and the transcription engine). If you'd rather install by hand, or something goes wrong, see REQUIREMENTS.md for the full step-by-step.

Not on Apple Silicon? The fast engine here (parakeet-mlx) is Apple-only. On Windows or an Intel Mac you'd swap it for a portable engine like whisper.cpp. Open an issue and we can add that path.


Supported input formats

Anything ffmpeg can read: .mp3, .m4a, .wav, .flac, .aac, .ogg, .opus, and the audio track of video files like .mp4, .mov, .m4v, .webm.


Other languages

The default engine is tuned for English. For other languages, use the multilingual model (25 European languages + Japanese):

MODEL=mlx-community/parakeet-tdt-0.6b-v3 ./transcribe.sh recording.mp3

Optional: who said what (speaker labels)

By default you get one clean stream of text — no speaker names. For many uses that's plenty.

If you need "who said what" (speaker diarization), there's an optional add-on in optional-diarization/. It's a separate, heavier step that needs a free Hugging Face account. It works best on clean 1-on-1 or small-group audio; on crowded, overlapping calls it will occasionally mislabel speakers, so treat it as a helper, not gospel. See that folder's README to set it up.


For AI agents (Claude, ChatGPT, etc.)

This repo is built so an AI assistant can drive it end-to-end. If you're using Claude Code, Claude Desktop, or ChatGPT with file access, point it at AGENTS.md — it contains the exact input→output steps.


How it works (the short version)

  audio file ──► ffmpeg (decode) ──► Parakeet model on Apple Neural Engine/GPU ──► text + timestamps

Everything runs on your Mac. Nothing is uploaded. The only network use is the one-time model download during setup.


License

MIT — see LICENSE. The underlying model (Parakeet) is CC-BY-4.0 from NVIDIA.

About

Transcribe any audio file to text locally on an Apple Silicon Mac — free, private, no cloud APIs. Powered by NVIDIA Parakeet + Apple MLX.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages