A powerful, standalone AI tool that automatically creates engaging highlight videos from your photo collections.
Project description
Video Highlight Generator
Video Highlight Generator is a powerful, standalone AI tool that automatically creates engaging highlight videos from your photo collections. It combines state-of-the-art image analysis, face detection, and smart audio syncing to turn your memories into movies.
🚀 Features
- 🧠 Smart Image Analysis: Uses MobileNetV3 to score image quality (sharpness, composition) and classify content.
- 👤 Face Detection & Clustering: Detects faces and groups them by person, allowing you to create person-specific highlight reels.
- 🔍 Theme Detection: Automatically identifies themes in your photos (e.g., "nature", "people", "urban").
- 🎵 Audio Studio:
- Waveform Editor: Visual audio trimmer to select the perfect segment.
- Custom Audio: Import your own music tracks.
- Smart Looping: Automatically loops audio to match video duration.
- 📱 Multi-Format Export: Generate videos optimized for PC/TV (16:9) or Smartphone (9:16).
- 📊 Progress Tracking: Real-time visual progress bars for both image analysis and video generation.
- ✨ Cinematic Effects: Smooth cross-fade transitions and custom image duration.
- 📝 Title Overlay: Add a custom title to your video.
- ⚡ Ultra-Fast Caching: SQLite-based caching ensures instant re-scans and crash resilience.
- 🎨 Modern Web Interface: A sleek, dark-mode React frontend for easy folder selection and project management.
📦 Installation
This tool is packaged as a single Python Wheel file for easy installation.
Install via PIP:
pip install video-highlight-generator
📚 Documentation
🎮 Usage
-
Start the Application: Run the following command in your terminal:
video-highlight-generator -
Open the Web Interface: Open your browser and navigate to: http://localhost:8000
-
Create Your Highlight:
- Analyze: Select your photo folders and click "Analyze Images". Watch the progress bar as it scans.
- Review: See the detected images, identified people, and themes.
- Generate:
- Select images (smart selection automatically picks the best ones).
- Choose output resolution (1080p or 9:16).
- Add custom audio and trim it using the waveform editor.
- Click "Generate Video" and watch the progress.
🔧 Development
To develop on this project:
-
Backend:
- Install dependencies:
pip install -r requirements.txt(or manually install fromsetup.py) - Run dev server:
uvicorn video_highlight_generator.main:app --reload
- Install dependencies:
-
Frontend:
- Navigate to
frontend/ - Install dependencies:
npm install - Run dev server:
npm run dev
- Navigate to
📝 License
GNU General Public License v3.0
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file video_highlight_generator-0.1.2.tar.gz.
File metadata
- Download URL: video_highlight_generator-0.1.2.tar.gz
- Upload date:
- Size: 195.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
26ff70c26c1e4b5bf6e88376fc1ff57ce4cb7308d90885d9ad26e1ce46f090ba
|
|
| MD5 |
64d9b825963bebd5583b86616395562d
|
|
| BLAKE2b-256 |
7b0e7878e51cd3b248eb34ead8344bcc025d2546c209282c0cf36634e47224f0
|
File details
Details for the file video_highlight_generator-0.1.2-py3-none-any.whl.
File metadata
- Download URL: video_highlight_generator-0.1.2-py3-none-any.whl
- Upload date:
- Size: 197.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
97f09a8e9ac4fa3965329de049dfd21919d0baa0b748b378cf5ce9ab6f330796
|
|
| MD5 |
04acc44d74d625ef65e88f7901c56c2c
|
|
| BLAKE2b-256 |
e6e9ec75b5284532065e211c30da80c9e68e5c4c6c0ad90412d213ef713f372a
|