vishal-kadalagi/Podcast-Summarization-System-with-Translation-and-PDF-Report-Generation

JavaScript

1

9 commits

updated Jun 27, 2025

See the code

README

πŸŽ™οΈ Podcast Summarization System with Translation and PDF Report Generation

This project is a full-stack application that allows users to:

  • Extract audio from YouTube podcasts or uploaded videos
  • Transcribe the audio to text
  • Summarize the transcription
  • Translate the transcription or summary into multiple languages
  • Generate a downloadable PDF report
  • (Optional) Chatbot: Ask questions about the podcast content

πŸš€ Features

  • YouTube/Video Audio Extraction: Extracts audio from YouTube links or uploaded video files.
  • Transcription: Converts audio to text using state-of-the-art models.
  • Summarization: Generates concise summaries of the podcast.
  • Translation: Supports translation into many Indian and international languages.
  • PDF Report: Download a full report including original, summary, and translations.
  • Modern Dashboard: Clean React frontend for easy interaction.
  • (Optional) Podcast Chatbot: Ask questions about the podcast (answers are based only on the current transcript).

πŸ› οΈ Tech Stack

  • Frontend: React.js
  • Backend: Flask (Python)
  • NLP: OpenAI Whisper, HuggingFace Transformers, Google Gemini API
  • Audio/Video: yt-dlp, moviepy
  • PDF: html2pdf.js
  • Speaker Diarization: pyannote.audio (optional)
  • Translation: Custom or Google Translate API

πŸ“¦ Folder Structure

pd2/
β”œβ”€β”€ frontend/         # React frontend
β”œβ”€β”€ nlp_engine/       # Flask backend and NLP logic
β”‚   β”œβ”€β”€ app.py
β”‚   β”œβ”€β”€ chatbot.py
β”‚   β”œβ”€β”€ translate.py
β”‚   └── ...
β”œβ”€β”€ uploads/          # (gitignored) Uploaded video files
β”œβ”€β”€ audios/           # (gitignored) Extracted audio files
β”œβ”€β”€ .gitignore
β”œβ”€β”€ requirements.txt
└── README.md

⚑ Quick Start

1. Clone the repository

git clone https://github.com/YOUR_USERNAME/A-Podcast-Summarization-System-with-Translation-and-PDF-Report-Generation.git
cd A-Podcast-Summarization-System-with-Translation-and-PDF-Report-Generation

2. Backend Setup

cd nlp_engine
python -m venv .venv
.venv\Scripts\activate  # On Windows
pip install -r requirements.txt
python app.py

3. Frontend Setup

cd ../frontend
npm install
npm start

4. Open in Browser

Visit http://localhost:3000

πŸ“ Usage

  1. Paste a YouTube link or upload a video.
  2. Extract the transcription.
  3. Summarize the content.
  4. Translate transcription or summary as needed.
  5. Download PDF report.
  6. (Optional) Use the chatbot to ask questions about the podcast.

πŸ—‚οΈ .gitignore

  • uploads/ and audios/ are ignored to prevent large files from being pushed.
  • node_modules/, .env, and other system files are also ignored.

πŸ“„ License

This project is for educational purposes.


Enjoy summarizing and translating your favorite podcasts!

vishal-kadalagi/Podcast-Summarization-System-with-Translation-and-PDF-Report-Generation

JavaScript

1

9 commits

updated Jun 27, 2025

See the code

README

πŸŽ™οΈ Podcast Summarization System with Translation and PDF Report Generation

This project is a full-stack application that allows users to:

  • Extract audio from YouTube podcasts or uploaded videos
  • Transcribe the audio to text
  • Summarize the transcription
  • Translate the transcription or summary into multiple languages
  • Generate a downloadable PDF report
  • (Optional) Chatbot: Ask questions about the podcast content

πŸš€ Features

  • YouTube/Video Audio Extraction: Extracts audio from YouTube links or uploaded video files.
  • Transcription: Converts audio to text using state-of-the-art models.
  • Summarization: Generates concise summaries of the podcast.
  • Translation: Supports translation into many Indian and international languages.
  • PDF Report: Download a full report including original, summary, and translations.
  • Modern Dashboard: Clean React frontend for easy interaction.
  • (Optional) Podcast Chatbot: Ask questions about the podcast (answers are based only on the current transcript).

πŸ› οΈ Tech Stack

  • Frontend: React.js
  • Backend: Flask (Python)
  • NLP: OpenAI Whisper, HuggingFace Transformers, Google Gemini API
  • Audio/Video: yt-dlp, moviepy
  • PDF: html2pdf.js
  • Speaker Diarization: pyannote.audio (optional)
  • Translation: Custom or Google Translate API

πŸ“¦ Folder Structure

pd2/
β”œβ”€β”€ frontend/         # React frontend
β”œβ”€β”€ nlp_engine/       # Flask backend and NLP logic
β”‚   β”œβ”€β”€ app.py
β”‚   β”œβ”€β”€ chatbot.py
β”‚   β”œβ”€β”€ translate.py
β”‚   └── ...
β”œβ”€β”€ uploads/          # (gitignored) Uploaded video files
β”œβ”€β”€ audios/           # (gitignored) Extracted audio files
β”œβ”€β”€ .gitignore
β”œβ”€β”€ requirements.txt
└── README.md

⚑ Quick Start

1. Clone the repository

git clone https://github.com/YOUR_USERNAME/A-Podcast-Summarization-System-with-Translation-and-PDF-Report-Generation.git
cd A-Podcast-Summarization-System-with-Translation-and-PDF-Report-Generation

2. Backend Setup

cd nlp_engine
python -m venv .venv
.venv\Scripts\activate  # On Windows
pip install -r requirements.txt
python app.py

3. Frontend Setup

cd ../frontend
npm install
npm start

4. Open in Browser

Visit http://localhost:3000

πŸ“ Usage

  1. Paste a YouTube link or upload a video.
  2. Extract the transcription.
  3. Summarize the content.
  4. Translate transcription or summary as needed.
  5. Download PDF report.
  6. (Optional) Use the chatbot to ask questions about the podcast.

πŸ—‚οΈ .gitignore

  • uploads/ and audios/ are ignored to prevent large files from being pushed.
  • node_modules/, .env, and other system files are also ignored.

πŸ“„ License

This project is for educational purposes.


Enjoy summarizing and translating your favorite podcasts!