A powerful tool for batch reducing and optimizing image and video file sizes while maintaining quality. Built with Python and Jupyter Notebooks for ease of use and transparency.
- Image Compression: Reduce image file sizes without significant quality loss
- Video Support: Compress and optimize video files
- Batch Processing: Process multiple files at once
- Flexible Options: Customize compression levels and output formats
- File Organization: Organize files by creation date
- Progress Tracking: Real-time progress updates during processing
.
├── README.md # This file
├── .gitignore # Git ignore rules
├── .gitattributes # Git attributes for proper handling
├── compress_media.ipynb # Main notebook for compression (current version)
├── organize_by_date.ipynb # Utility notebook for file organization
├── Images/ # Input images directory (create this folder)
├── Output/ # Processed/output files directory
└── Others/ # Archive of previous versions
├── Image Size reducer-Final.ipynb
├── Image Size reducer-2025(with Vid support)-Copy1.ipynb
├── Size Reducer - prod - (with Vid support).ipynb
├── Image Size reducer-Copy2.ipynb
└── Image Size reducer.ipynb
- Python 3.7+
- Jupyter Notebook or JupyterLab
- Required Python packages (see notebook dependencies)
- Clone the repository:
git clone <repository-url>
cd "Image-Size-Reducer"- Create a virtual environment (recommended):
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate- Install required packages:
pip install -r requirements.txt # If available- Launch Jupyter Notebook:
jupyter notebook- Open
compress_media.ipynb - Create an
Images/folder and place your images/videos inside - Run the notebook cells following the instructions
- Processed files will be saved to the
Output/directory
- Open
organize_by_date.ipynb - Ensure you have an
Images/folder with files inside - Follow the instructions to organize files by their creation date
- Files will be organized in year/month subdirectories
| Notebook | Purpose | Status |
|---|---|---|
compress_media.ipynb |
Main compression tool with video support | ✅ Current |
organize_by_date.ipynb |
File organization utility | ✅ Active |
Archive versions (in Others/) |
Previous implementations for reference | 📦 Archive |
Edit the notebook parameters to customize:
- Compression quality (0-100)
- Output image format (JPEG, PNG, WebP)
- Video codec and bitrate
- Batch processing size
- Image Compression: Typically achieves 40-70% size reduction
- Video Compression: Can reduce size by 50-80% depending on codec
- Processing Speed: Varies based on file size and compression settings
See CONTRIBUTING.md for guidelines on how to contribute to this project.
- Backup First: Always keep backups of original files before processing
- Quality Loss: Compression may reduce image/video quality; test settings first
- Output Directory: Ensure
Output/directory has sufficient free disk space - Format Support: Check notebook documentation for supported file formats
This project is provided as-is for personal use.
Issue: Notebook not found
- Solution: Ensure all notebook files (.ipynb) are in the root directory
Issue: Output directory is empty
- Solution: Verify that the
Output/directory has write permissions
Issue: Compression fails
- Solution: Check file format compatibility and available disk space
For issues or questions:
- Check the notebook comments and documentation
- Review the
Others/directory for previous implementations - Ensure all dependencies are correctly installed
Missing Images folder error?
- Create a folder named
Imagesin the project root - Place your files inside this folder
- Re-run the notebook
Cannot find Output folder?
- The notebook automatically creates the
Output/folder - Ensure you have write permissions in the project directory
Last Updated: 2025-06-26 Version: 2.0 (Professional Release)