Transform any video into a stunning color timeline in seconds
A fast video color timeline generator that extracts the average color from each frame and creates a beautiful visual timeline.
|  |  |  | 
|---|---|---|
| Blade Runner 2049 | Cars | Fight Club | 
|  |  |  | 
|---|---|---|
| John Wick Chapter 2 | Mad Max: Fury Road | Midsommar | 
|  |  |  | 
|---|---|---|
| Spider-Man: Into the Spider-Verse | The Grand Budapest Hotel | The Matrix | 
|  |  |  | 
|---|---|---|
| Tron: Legacy | La La Land | Nightcrawler | 
Input: Any video file (MP4, MKV, AVI, etc.)
Output: Color timeline image
Command:
docker run --rm -v $(pwd):/videos shmdtt/chroma-vue your_video.mp4Custom dimensions:
docker run --rm -v $(pwd):/videos shmdtt/chroma-vue your_video.mp4 --width 4000 --height 1000- Fast: Multiprocessed for maximum performance
- Simple: One command, no dependencies
- Flexible: Customizable output dimensions
- Cross-platform: Works everywhere with Docker
- Extract frames from your video
- Calculate average color for each frame
- Generate timeline by arranging colors chronologically
- Save as PNG image
- --width: Image width in pixels (default: 3000)
- --height: Image height in pixels (default: 800)
- --workers: Number of worker processes (default: CPU count)
Linux/macOS:
docker run --rm -v $(pwd):/videos shmdtt/chroma-vue video.mp4Windows Command Prompt:
docker run --rm -v %cd%:/videos shmdtt/chroma-vue video.mp4Windows PowerShell:
docker run --rm -v ${PWD}:/videos shmdtt/chroma-vue video.mp4If you prefer not to use Docker, you can run Chroma-Vue locally with Python.
- Python 3.6+ installed on your system
- FFmpeg installed and accessible from command line
- Git (optional, for cloning the repository)
Windows:
# Using chocolatey
choco install ffmpeg
# Or download from https://ffmpeg.org/download.htmlmacOS:
brew install ffmpegLinux (Ubuntu/Debian):
sudo apt update
sudo apt install ffmpeg- Clone or download this repository:
git clone https://github.com/yourusername/chroma-vue.git
cd chroma-vue- Create a virtual environment (recommended):
# Create virtual environment
python -m venv venv
# Activate virtual environment
# On Windows:
venv\Scripts\activate
# On macOS/Linux:
source venv/bin/activate- Install Python dependencies:
pip install -r requirements.txt- Verify FFmpeg installation:
ffmpeg -versionBasic usage:
python chroma-vue.py your_video.mp4With custom options:
python chroma-vue.py your_video.mp4 --width 4000 --height 1000 --workers 8- "ffmpeg not found": Ensure FFmpeg is installed and in your system PATH
- "Out of memory": Reduce the number of workers or ensure sufficient RAM
- Slow processing: Try adjusting worker count or check storage performance
Tests performed on WSL2 with the following specifications for the movie 'La La Land':
- CPU: Intel Core i7-1065G7 @ 1.30GHz (8 logical cores)
- RAM: 16GB total, 8068MB allocated to WSL2
- Workers: 8 processes
- Swap: 2048MB
| Resolution | File Size | File Duration | FPS | Total Frames | Processing Time(mm:ss) | Speed (fps) | 
|---|---|---|---|---|---|---|
| 720p | 932 MB | 7668.13s | 23.98 | 183,850 | 6:27 | 474.67 | 
| 1080p | 1.93 GB | 7668.13s | 23.98 | 183,850 | 9:01 | 339.29 | 
| 4K (2160p) | 5.70 GB | 7675.92s | 23.98 | 184,038 | 45:59 | 66.69 |