Skip to content

🎀 Meeting recorder with AI transcription and summarization using Whisper + GPT-4

License

Notifications You must be signed in to change notification settings

erkineren/meet-summarizer

Repository files navigation

πŸ“ Meet Summarizer

A meeting recording, transcription, and summarization system. Record your screen/audio with FFmpeg, transcribe with Whisper, and summarize with OpenAI.

πŸš€ Quick Start

1. Installation

# Install dependencies
pip install -r requirements.txt

# Set up environment variables
cp .env.example .env
nano .env  # Add your OpenAI API key

2. FFmpeg Installation (macOS)

# Install FFmpeg with Homebrew
brew install ffmpeg

# Check screen recording permissions
# System Settings > Security & Privacy > Screen Recording

3. OpenAI API Key

  1. Get your API key from OpenAI Platform
  2. Add it to your .env file:
OPENAI_API_KEY=sk-your-api-key-here

πŸ“– Usage

Command Line Interface

# Help
python main.py --help

# Start screen recording
python main.py record

# Timed recording (60 seconds)
python main.py record --duration 60

# Extract audio from video
python main.py extract video.mp4

# Transcribe audio file
python main.py transcribe audio.wav --language en

# Summarize transcript
python main.py summarize transcript.txt --type comprehensive

# Full pipeline (Video β†’ Audio β†’ Transcript β†’ Summary)
python main.py process video.mp4 --language en --summary-type brief

Manual Usage

# 1. Screen recording
python screen_recorder.py

# 2. Extract audio
python audio_extractor.py video.mp4

# 3. Transcription
python transcriber.py audio.wav en

# 4. Summarization
python summarizer.py transcript.txt en comprehensive

πŸ“ Folder Structure

meet-summarizer/
β”œβ”€β”€ recordings/     # Video recordings
β”œβ”€β”€ audio/          # Audio files
β”œβ”€β”€ transcripts/    # Transcription files
└── summaries/      # AI summaries

βš™οΈ Configuration

Whisper Models

  • tiny: Fastest, lowest quality
  • base: Balanced (default)
  • small: Good quality
  • medium: High quality
  • large: Best quality, slowest

Summary Types

  • comprehensive: Detailed summary (default)
  • brief: Short summary (200 words)
  • action_items: Action items only

Supported Languages

  • en: English
  • tr: Turkish
  • de: German
  • fr: French
  • es: Spanish
  • and more...

🎯 Features

βœ… Screen Recording

  • Uses macOS AVFoundation
  • Records both screen and audio
  • Duration limit
  • Stop with Ctrl+C

βœ… Audio Processing

  • High-quality audio extraction with FFmpeg
  • Multiple format support
  • Mono audio (optimal for Whisper)

βœ… Transcription

  • Uses OpenAI Whisper
  • Word-level timestamps
  • SRT subtitle output
  • Multi-language support

βœ… AI Summarization

  • Smart summaries with GPT-4
  • Multiple summary types
  • Token usage tracking
  • Sentiment analysis

πŸ”§ Troubleshooting

FFmpeg Errors

# List audio devices on macOS
python main.py devices

# Check permissions
# System Settings > Security & Privacy > Screen Recording

Whisper is Slow

# Use a smaller model
python main.py transcribe audio.wav --model tiny

OpenAI API Error

# Check your API key
echo $OPENAI_API_KEY

# Check your usage/quota
# https://platform.openai.com/usage

πŸ“Š System Status

# File counts and sizes
python main.py status

🚨 Notes

  1. Privacy: Recordings are stored locally only
  2. API Cost: OpenAI API is a paid service
  3. Performance: Large files may take time to process
  4. Disk Space: Video files can be large

πŸ“„ License

MIT License - See LICENSE for details.

🀝 Contributing

  1. Fork this repo
  2. Create a feature branch
  3. Commit your changes
  4. Open a pull request

πŸ“ž Support

For issues, please use GitHub Issues.

About

🎀 Meeting recorder with AI transcription and summarization using Whisper + GPT-4

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages