Meeting transcripts with speaker labels, on your own PC.
Diarist records a meeting, or imports a recording, separates up to eight speakers, and stores the transcript in a searchable database on your computer. No cloud, no account, no Python.
Linux is planned. macOS is not: nobody on the project owns a Mac.
If you use a coding agent (Claude Code, Codex or similar), the agent setup guide lets it check your PC, pick the models and set everything up.
- Speaker 1 Let's start with last week's numbers.
- Speaker 2 An hour of audio came back in under three minutes.
- me And nothing left the machine.
- Speaker 3 Then we ship the beta.
How it works
Live
Press Record. Your microphone is "me"; the sound your computer plays (Teams, Zoom, Meet, a browser) is split into the other speakers. Text appears in about a second. When you stop, the recording is processed once more with the full context, and the names you gave people during the meeting carry over.
- Ctrl+Alt+R starts a recording from any app.
- GPU memory: budget 2 GB, measured on an RTX 3080.
- Audio is kept as lossless FLAC, about 90 MB per hour, for 30 days by default. Transcripts are kept until you delete them.
From a file
Drop in m4a, mp3, wav, flac, ogg, mp4, mkv and more. On an RTX 3080 an hour of audio takes two to three minutes, about 27 times faster than real time.
- English by default; 40+ languages with Nemotron 3.5.
- Peak GPU memory 2.6 GB with the English model, 1.82 GB with Nemotron 3.5, measured on a 77-minute file.
- File jobs wait until a recording stops, so the two never run at the same time.
Rename Speaker 2 to Alice once and the name sticks. Merge labels, recolour, move a line to the right person. Search every transcript at once. Export Markdown, text, JSON, SRT or VTT.
Speaker separation
Speaker separation runs on NVIDIA's Nemotron 3 Diarization. On VoiceArena Diarization-Bench v1, the one independent benchmark that scores every diarizer the same way, it has the lowest error rate of the systems listed: DER 14.7, against 19 to 31 for the others. Up to eight speakers per recording.
Measured on the author's own Zoom meetings on an RTX 3080: 0.2 to 0.6 percent of words went to the wrong speaker; within a second of a speaker change, 7 to 9 percent.
Where it struggles
- People talking over each other.
- Far-field microphones and noisy rooms.
- A ninth speaker, who is merged into an existing label.
- Live labels, which are provisional until the pass after Stop.
Models are files you own
Diarist is a harness for speech models, not an application built around one model. The runtime and the models are files in folders on your disk. The app's job is to run them together, tell you what it is doing, and stay out of the way.
Plain folders.
The runtime and every model are ordinary files under models\ and engine\ in your data folder. Drop a file in, press Refresh, use it.
Your PC, your choice.
CUDA, Vulkan or CPU runtime; models by how much GPU memory you have. The setup screen proposes, you decide, and you can change it later.
No gates.
Setup can be skipped. Models the app has never heard of can be added by URL or by file. A runtime version can be pinned, and rolled back by moving a folder.
Nothing silent.
Every download shows its address, hash, size and destination, with Retry and Copy link. When the app cannot do something, it says what is missing and offers the fix.
Measured swaps.
A new model can be compared on your own recordings with the evaluation tools in the repository before you rely on it.
If you have used ComfyUI, this will feel familiar. If you have not, you do not need to.
Privacy
Audio, transcripts, names, settings and logs stay in one folder on your computer.
The app connects to the internet only when you press a button that says so: installing the runtime (from GitHub), downloading a model (from Hugging Face), checking for a newer runtime, or checking for updates. It never checks anything on its own. There is no account, no analytics and no crash reporting.
This website is the same: no cookies, no analytics, no third-party requests.
Requirements
Runtime package by GPU
| Your GPU | Package | Status |
|---|---|---|
| NVIDIA with a CUDA 13 driver (R580 or newer; 610.88 measured) | CUDA | Measured on an RTX 3080 |
| AMD, Intel or older NVIDIA driver | Vulkan | Shipped by NVIDIA, untested by us |
| No usable GPU | CPU | Untested, much slower than real time |
GPU memory
| Card | What works |
|---|---|
| 4 GB | File mode with Nemotron 3.5 and low-VRAM mode; live is borderline |
| 6 GB | Live and file mode comfortably |
| 8 GB and up | Everything |
Other requirements: Windows 10 (1803 or newer) or Windows 11, 64-bit; about 1.6 GB of disk for the runtime and default models; recordings about 90 MB per hour; 8 GB of RAM is comfortable.
Models
- Nemotron 3 Diarization (speakers, 102 MB)
- Nemotron Speech Streaming EN 0.6B (English, default, 668 MB)
- Nemotron 3.5 ASR Streaming (40+ languages, optional, 742 MB)
Status
0.1.0-beta.1 is the first public release.
Measured on the development machine (Windows 11, RTX 3080 10 GB)
- File import
- Live recording
- The post-pass
- Search
- Export
- The installer
Untested so far
- The Vulkan and CPU runtime packages
- Every machine that is not the author's
Next: punctuation restoration, better handling of speaker changes, recording without headphones, and recognising the same person across meetings.
Roadmap, changelog and known issues
Open source
MIT licence. The runtime (Apache-2.0) and the models (OpenMDW-1.1, NVIDIA Open Model License) are downloaded at first run under their own licences. There is no paid tier, no licence key and no account. Free forever. Speaker separation is part of the app. Issues and pull requests on GitHub.