Releases: discord/lilliput
Lilliput 1.5.0
Release Notes
This release introduces AV1 video codec support, significant AVIF processing improvements including HDR to SDR tone-mapping, enhanced GIF handling with
better disposal method support, ARM architecture support, and numerous build system improvements.
New Features
- AV1 Video Codec Support: Added support for AV1 video format processing (@skidder, #258)
- HDR to SDR Tone-mapping: Enhanced AVIF processing with HDR to SDR tone-mapping for high bit depth sources (@skidder, #218, #222, #223, #229)
- ARM Architecture Support: Added ARM support for broader platform compatibility (@remiolivier-discord, #239)
- Enhanced WebP Encoder: Added tuning capabilities for WebP encoder settings (@skidder, #225)
- GIF Frame Disposal Method 3: Added support for 'Restore Previous' disposal method in GIF processing (@skidder, #244)
- Embedded Dependencies: Added option to embed required dependencies via build flags (@Waldeedle, #226)
Bug Fixes
- AVIF Improvements:
- GIF Processing Fixes:
- Improved GIF disposal method handling and background color preservation (@skidder, #254)
- Preserved GIF transparent color across frames (@skidder, #255)
- Prevented color corruption when mixing local and global GIF palettes (@skidder, #256)
- Added exception handling for giflib errors (@remiolivier-discord, #257)
Build & CI Improvements
- Platform Support: Added OS X 15 compilation support, removed OS X 14 support (@skidder, #215, #220)
- CI Enhancements: Added Valgrind testing and clang-format GitHub Actions (@remiolivier-discord, #235, #236)
- Dependency Updates:
- Upgraded to OpenCV 4.11 with photo support enabled (@remiolivier-discord, #227, #238)
- Updated FFmpeg, libwebp, and libpng versions (@salarkhan, #231, #240; @remiolivier-discord, #250, #251)
- Added Little-CMS dependency for color profile management (@skidder, #241, #242)
- Build Script Improvements: Updated build scripts to use release tags and improved dependency management (@salarkhan, #232)
Code Quality & Maintenance
- Code cleanup for WebP encoder (@skidder, #230)
- Applied clang-format code formatting (@remiolivier-discord, #235)
- Improved OpenCV safety with safe readHeader calls (@remiolivier-discord, #246)
- Updated native dependencies multiple times throughout the release cycle
Contributors
Special thanks to all who contributed to this release:
Full Changelog: v1.4.0...v1.5.0
Lilliput 1.4.0
This release adds support for AVIF image format, improves GIF transparency handling, and includes various improvements and bug fixes.
New Features
Bug Fixes
- Fixed "smearing" artifacts in GIFs with transparent pixels (@salarkhan, #207) (Fixes #84)
Build & CI Improvements
- Cleaned up unnecessary checked-in files (@salarkhan, #208)
Contributors
Special thanks to all who contributed to this release:
Lilliput 1.3.1
This patch release includes significant improvements to GIF and WebP animation handling, Apple Silicon support, CI improvements, and several bug fixes.
New Features
- Added GIF animation loop count detection for animated WebP conversion (@skidder, #199)
- Added duration reporting for animated GIF and WebP images (@skidder, #204)
- Added frame count, dispose method, and background color reporting from GIF for WebP conversion (@skidder, #200)
Bug Fixes
- Fixed timing issue: ensure single frame output before timeout evaluation (@Waldeedle, #201)
- Added support for
AVERROR_INVALIDDATAto improve error handling (@brian-armstrong-discord, #120) - Resolved compiler warnings on OS X and consolidated CGo settings (@skidder, #194)
Build & CI Improvements
- Added Apple Silicon support in OS X dependencies build script (@skidder, #192)
- Implemented GitHub Actions CI workflows (@acj, #196)
- Added verification and auto-updates for native dependencies (@skidder, #197)
Documentation & Code Quality
- Updated deprecated import in example file (@djeddi-yacine, #190)
- Added comprehensive function documentation (@skidder, #203)
Contributors
Special thanks to all who contributed to this release:
Animated WebP Support, ICC Color Profiles, and more
This is the first release in a while, with far more changes than is worth listing here!
Some highlights include:
- Animated WebP Support: accepted as input and output, including conversion between animated image formats (e.g. GIF->WebP)
- Preservation of ICC color profile data from images & video
- Detection of whether an input video has subtitles or is optimized for web streaming.
- HEVC video input support
- Thumbhash encoder
- Many updated dependencies
- Many bug fixes
Please continue to submit pull-requests and issues. We'll do our best to stay current and merge when possible.
Audio
lilliput now supports Audio. Also, enable -fPIC in builds for greater compatibility.
Fixes for outstanding bugs
This change forces lilliput's output to never exceed 8 bits per channel, which isn't supported by many image containers. Also, it includes some tweaks to the libavcodec wrapper to support more videos.
Lilliput 1.0
Lilliput is cool and you should use it.