What's New
- JPEG XL output format — encode to JPEG XL via pillow-jxl-plugin with quality slider and effort tuning (conditional on plugin availability; disabled in GUI/CLI when not installed)
- CLI full option parity — new
--tiff-compression (none/lzw/deflate), --png-level (1-9), and --resize scale:VALUE flags
- CLI progress counters — every line now shows
(15/100) progress, final summary includes wall-clock time and files/sec
- Sorted scan results — deterministic file ordering in both directory scans and drag & drop
CLI Examples
# Convert to JPEG XL
python heicshift.py --input ./photos --format jxl --quality 90
# Resize by scale percentage
python heicshift.py --input ./photos --resize scale:50
# TIFF with LZW compression
python heicshift.py --input ./photos --format tiff --tiff-compression lzw
# PNG with max compression
python heicshift.py --input ./photos --format png --png-level 9