Meeting Noter
Offline meeting transcription tool for macOS. Captures both your voice and meeting participants' audio, saves to MP3, and transcribes locally using Whisper.
Features
- No setup required - Just install and run
- Captures both sides - Your mic + system audio (meeting participants)
- Offline transcription - Uses Whisper locally, no API calls
- Auto-detection - Detects active meetings (Zoom, Teams, Meet, Slack)
- Multiple interfaces - Menu bar app, desktop GUI, or CLI
- Auto-segmentation - One file per meeting (detects silence)
Installation
pipx install meeting-noter
For corporate/offline environments (bundles Whisper model, no download needed):
pipx install "meeting-noter[offline]"
Upgrading
# Standard
pipx upgrade meeting-noter
# With offline model
pipx reinstall "meeting-noter[offline]"
No system dependencies required - ffmpeg is bundled automatically.
Quick Start
Menu Bar App (recommended):
meeting-noter menubar
Desktop GUI:
meeting-noter gui
CLI Recording:
meeting-noter start "Weekly Standup"
The app will request microphone and Screen Recording permissions on first use.
Usage
Recording
- The menu bar app auto-detects meetings and prompts to record
- Or manually start recording via the GUI/CLI
- Press Ctrl+C (CLI) or click Stop to end recording
Transcription
Recordings are auto-transcribed by default. Or manually:
# Transcribe the most recent recording
meeting-noter transcribe
# Transcribe a specific file
meeting-noter transcribe recording.mp3
# List all recordings
meeting-noter list
Commands
| Command | Description |
|---|---|
meeting-noter |
Launch desktop GUI |
meeting-noter menubar |
Launch menu bar app |
meeting-noter gui |
Launch desktop GUI |
meeting-noter start [name] |
Interactive CLI recording |
meeting-noter list |
List recent recordings |
meeting-noter transcribe |
Transcribe a recording |
meeting-noter devices |
List audio devices |
meeting-noter status |
Check daemon status |
Options
start
- First argument: Meeting name (optional, auto-generates timestamp if omitted)
transcribe
-m, --model: Whisper model size (tiny.en, base.en, small.en, medium.en, large-v3)-o, --output-dir: Directory with recordings
list
-n, --limit: Number of recordings to show-o, --output-dir: Directory with recordings
How It Works
┌─────────────────────────────────────┐
│ Your Meeting App │
│ (Zoom/Teams/Meet/Slack) │
└──────────────────┬──────────────────┘
│
┌─────────────┴─────────────┐
▼ ▼
┌─────────┐ ┌─────────────┐
│ Mic │ │ System Audio│
│(default)│ │(ScreenCaptureKit)
└────┬────┘ └──────┬──────┘
│ │
└───────────┬───────────────┘
▼
┌─────────────┐
│Meeting Noter│
│ (capture) │
└──────┬──────┘
│
▼
~/meetings/2024-01-15_Weekly_Standup.mp3
│
▼ (auto or on-demand)
┌─────────────┐
│ Whisper │ (local)
└──────┬──────┘
│
▼
~/meetings/2024-01-15_Weekly_Standup.txt
Permissions
On first use, macOS will ask for:
- Microphone - For capturing your voice
- Screen Recording - For capturing system audio (meeting participants)
Grant these in System Settings > Privacy & Security.
Configuration
Config file: ~/.config/meeting-noter/config.json
{
"recordings_dir": "~/meetings",
"transcripts_dir": "~/meetings",
"whisper_model": "tiny.en",
"auto_transcribe": true,
"silence_timeout": 5,
"capture_system_audio": true
}
Whisper Models
| Model | Size | Speed | Accuracy |
|---|---|---|---|
tiny.en |
~75MB | Fastest | Good |
base.en |
~150MB | Fast | Better |
small.en |
~500MB | Medium | High |
medium.en |
~1.5GB | Slow | Very High |
large-v3 |
~3GB | Slowest | Best |
Requirements
- macOS 12.3+ (for ScreenCaptureKit)
- Python 3.9+
License
MIT
Metadata
Release files for meeting-noter 3.4.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| meeting_noter-3.4.2.tar.gz | 165.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| meeting_noter-3.4.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 326.0 kB
Release files / meeting_noter-3.4.2.tar.gz
| Download URL | meeting_noter-3.4.2.tar.gz |
|---|---|
| Size | 165.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
006c13885ded035a4ca13974128dd0f57c430340c9bdc3d9fe144c96af73de08
|
|
BLAKE2b-256 checksum How to use checksums |
f805667926dee6ede9c714787a257b79ebf7d9da501b4fb400ae4e87dc22bda1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.9.6
|
Release files / meeting_noter-3.4.2-py3-none-any.whl
| Download URL | meeting_noter-3.4.2-py3-none-any.whl |
|---|---|
| Size | 161.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0f3a35d42d758eed9fff457c1301c2ce95a3ed6811a7d7b48c93eb90a616f0f9
|
|
BLAKE2b-256 checksum How to use checksums |
b86118773763f39dbeca8a9baca0ab5ab3c5e580ad3020514d6398629b9a2686
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.9.6
|