VideoAnalyser is a Python tool that downloads YouTube videos or shorts, transcribes the audio, and generates a concise summary. It supports multiple languages based on the system locale and uses the Google Generative AI API for transcription and summarization.
- Download audio from YouTube videos or shorts
- Transcribe audio automatically in the system language
- Summarize the transcription clearly and concisely
- Supports multiple languages
- Works directly in the terminal
Before running the project, you need:
- Python 3.9 or higher
pippackage manager (used to install Python libraries)- A Google Generative AI API key stored in a
.envfile asAPI_KEY - Required Python packages (install via
pip install -r requirements.txt)
- Clone the repository:
git clone https://github.com/LucaSantosP/VideoAnalyser.git- Enter the project directory:
cd VideoAnalyser- (Optional but recommended) Create a virtual environment:
python -m venv .venv- Activate the virtual environment:
- Windows:
.venv\Scripts\activate- Linux/macOS:
source .venv/bin/activate- Install the dependencies:
pip install -r requirements.txt- Create a
.envfile in the project root and add your API key:
API_KEY=your_google_genai_api_key_here
- Run the program:
python main.py- The program detects your system language automatically.
- Enter the YouTube video URL when prompted.
- The program will download the audio, transcribe it, and generate a summary.
- The summary is printed in the same language as the transcription.
Video URL: https://www.youtube.com/watch?v=example
Detecting Language... en_US
Summarizing video...
-------------------------------- Summary in en_US --------------------------------
This is a concise summary of the video content, keeping the original language.
VideoAnalyser/
├─ main.py # Main script
├─ video_analyser/ # Modules for video/audio processing
├─ requirements.txt # Dependencies
├─ .gitignore # Ignored files/folders
├─ LICENSE # MIT License
├─ README.md # This file
Contributions are welcome! Feel free to open issues or pull requests.
This project is licensed under the MIT License. See LICENSE for details.