Transform YouTube podcasts into interactive conversations using local Whisper transcription and GPT-4o chat.
- 📺 Download audio from YouTube URLs
- 🎯 Local Whisper transcription (no API costs)
- 💬 Interactive chat about podcast content
- 📄 Export transcripts (TXT, SRT, JSON)
- 💾 Export chat conversations (Markdown)
- 🔒 Privacy-focused (local processing)
git clone <repository-url>
cd social_media_vlog_chatWindows:
python -m venv .venv
.venv\Scripts\activateMac/Linux:
python -m venv .venv
source .venv/bin/activatepip install -r requirements.txtNote for Python 3.13 users: If you encounter audioop module errors, also install:
pip install audioop-ltsWindows:
set OPENAI_API_KEY=your_api_key_hereMac/Linux:
export OPENAI_API_KEY=your_api_key_hereWindows:
- Download from https://ffmpeg.org/download.html
- Add to PATH
Mac:
brew install ffmpegLinux:
sudo apt install ffmpegpython run_app.pyThis starts both the backend and frontend automatically.
- Backend:
python backend.py - Frontend:
streamlit run frontend.py
- Transcribe: Enter YouTube URL → Download → Transcribe
- Chat: Ask questions about the podcast content
- Export: Download transcripts and chat conversations
podcast-transcription-app/
├── backend.py # FastAPI server
├── frontend.py # Streamlit interface
├── config.py # Configuration settings
├── run_app.py # Launcher script
├── requirements.txt # Dependencies
├── downloads/ # Audio files
├── transcripts/ # JSON transcripts
└── exports/ # Exported files
- RAM: 8GB+ (16GB recommended for medium model)
- Storage: 2GB+ free space
- Python: 3.8+
- Internet: For downloading videos and API calls
- Transcription: Free (local Whisper)
- Chat: ~$0.03 per 1000 tokens (GPT-4o)
- Storage: Local files only
- Check Python version (3.8+)
- Install missing dependencies:
pip install -r requirements.txt - Verify FFmpeg installation:
ffmpeg -version
- First run downloads ~1.5GB model
- Subsequent runs are faster
- Model stored in
~/.cache/whisper/
- Verify API key is set correctly
- Check API quota/billing
- Ensure stable internet connection
Whisper Medium:
- Size: ~1.5GB
- Languages: 99 languages
- Accuracy: Good for most podcasts
- Speed: ~1:4 ratio (1 min audio = 4 min processing)
- Audio files stored locally in
downloads/ - Transcripts stored locally in
transcripts/ - Only chat messages sent to OpenAI API
- No data uploaded to external services (except OpenAI chat)