This project provides a self-contained, future-proof Docker environment for the powerful but legacy thumbnail generation tool, ezthumb. It's designed to solve dependency issues on modern systems and provide a stable, command-line interface for batch processing video files.
The original ezthumb is a fantastic tool, but as time has gone on, it has become increasingly difficult to use:
- Linux Dependency Issues: Compiling it on modern Linux distributions is challenging due to its reliance on old libraries and dependencies that are no longer in standard repositories.
- Windows GUI Instability: The official Windows GUI version can be unstable, often crashing when processing large, high-quality video files or large batches.
This project was born out of a determination to preserve and simplify the use of this tool, specifically for its excellent grid-based thumbnail generation.
This repository solves these problems by encapsulating the entire build and run environment for ezthumb version 3.6.7 inside a portable Docker container.
- No Dependency Hell: All required Ubuntu 17.04 packages, build tools, and source code are included directly in this repository.
- Future-Proof: The build process is 100% self-contained and offline. It does not rely on any external Ubuntu archives or download links that might disappear in the future.
- Cross-Platform: Works identically on any system that can run Docker, including modern Windows, macOS, and Linux.
- Stable & Powerful: Provides access to the robust command-line version of
ezthumb, perfect for batch scripting and processing large files without crashes.
Before you begin, you must have the following software installed on your computer:
- Docker Desktop (for Windows/macOS) or Docker Engine (for Linux).
- Git.
Follow these steps once to get the application image built and ready to use.
1. Clone the Repository First, clone this repository to your local machine.
git clone https://github.com/meowe29/ezthumb.git
cd ezthumb2. Load the Base Image into Docker This is a one-time setup step that "installs" the archived Ubuntu 17.04 image into your local Docker engine. This image is included in the repository.
docker load -i ubuntu-17.04.tar3. Build the ezthumb Application Image
Now, build the final application image. This will use the locally loaded base image and the vendored dependencies from this repository.
docker build -t ezthumb .You are now ready to generate thumbnails!
The container is designed to process videos located in a specific folder on your host machine.
This is the primary use case. The internal process.sh script will automatically find all video files (.mp4) in the folder you provide and generate a thumbnail grid for each one using default settings.
- Place all your video files into a single folder (e.g.,
C:\Users\meowe29\Downloads\video_files). - Run the following command, replacing the path with the full path to your video folder.
On Windows (PowerShell):
docker run --rm -v "C:\Users\meowe29\Downloads\video_files:/data" ezthumbOn Linux or macOS:
docker run --rm -v "/home/meowe29/videos:/data" ezthumbThe generated thumbnails (.jpg files) will appear in the same folder alongside your videos.
If you only want to process one file from your mounted folder, you can specify its name.
# Example for Windows
docker run --rm -v "C:\Users\meowe29\Downloads\video_files:/data" ezthumb "my_awesome_video.mp4"If you want to override the default script and use your own ezthumb flags for a specific run, you can do so by overriding the container's entrypoint. This gives you full access to all of ezthumb's power.
# Example for Windows: Create a single thumbnail with a specific output name and canvas width
docker run --rm --entrypoint ezthumb -v "C:\Users\meowe29\Downloads\video_files:/data" -w /data ezthumb -i "my_movie.mp4" -o "custom_name.png" -w 1024This project is licensed under the GPL-3.0 License. Please see the LICENSE file for details.