Automatically transcribe your Zoom meeting recordings with Deepgramβs Speech-to-Text API. This script monitors your local Zoom recordings folder and automatically generates high-quality transcripts once a meeting ends.
- Automatic Folder Monitoring β Detects new Zoom recordings using
watchdog. - Smart Delay Handling β Waits until Zoom finishes writing
recording.confbefore starting transcription. - High-Accuracy Transcription β Uses Deepgramβs
nova-3model with diarization and utterance formatting. - Speaker Labeling and Timestamps β Includes precise timestamps and speaker IDs in the transcript.
- Simple Setup β Just point the script to your Zoom recordings folder.
Install dependencies:
pip install deepgram watchdogSet your Deepgram API key:
export DEEPGRAM_API_KEY="YOUR_DEEPGRAM_API_KEY"- Zoom creates a folder for each meeting you record locally.
- Once the meeting ends, Zoom writes a file named
recording.confthat contains metadata (audio/video filenames). - The script waits until this file is complete.
- When ready, it reads the audio path and sends the file to Deepgram for transcription.
- A transcript file is generated and saved locally.
deepgram-58/
β
βββ main.py # Main watcher and transcription script
βββ transcript.txt # Generated transcript (auto-created)
βββ README.md # Documentation
Run the script and specify the folder where Zoom saves recordings:
python script.py /home/user/Documents/ZoomBy default, the script:
- Watches the specified folder for new Zoom meeting folders.
- Waits for
recording.confto appear and be populated. - Asks before starting transcription.
- Saves the final transcript to
transcript.txt.
Example output:
π New folder detected: /home/user/Documents/Zoom/2025-10-16 14.28.03 Meeting
π§ Transcribing: audio1862420270.m4a
β
Transcript saved to ./transcript.txt
You can adjust:
- Timeout for waiting on
recording.conf(default: 30s) - Transcript output path
- Model settings (e.g., use
nova-3-general,nova-3-medical)
Speaker 0 [00:00:00.000 - 00:00:04.230]: Good morning, everyone. Letβs get started.
Speaker 1 [00:00:04.230 - 00:00:07.900]: Morning! Can you hear me clearly?
Speaker 0 [00:00:07.900 - 00:00:10.500]: Yes, loud and clear.