forked from Green-Sky/tomato
Green Sky
67653bbe50
git-subtree-dir: external/libwebp/libwebp git-subtree-split: dd7364c3cefe0f5c0b3c18c3b1887d353f90fc1f
312 lines
13 KiB
Plaintext
312 lines
13 KiB
Plaintext
- 6/23/2023: version 1.3.1
|
|
This is a binary compatible release.
|
|
* security fixes for lossless encoder (#603, chromium: #1420107, #1455619,
|
|
CVE-2023-1999)
|
|
* improve error reporting through WebPPicture error codes
|
|
* fix upsampling for RGB565 and RGBA4444 in NEON builds
|
|
* img2webp: add -sharp_yuv & -near_lossless
|
|
* Windows builds:
|
|
- fix compatibility with clang-cl (#607)
|
|
- improve Arm64 performance with cl.exe
|
|
- add Arm64EC support
|
|
* fix webp_js with emcc >= 3.1.27 (stack size change, #614)
|
|
* CMake fixes (#592, #610, #612)
|
|
* further updates to the container and lossless bitstream docs (#581, #611)
|
|
|
|
- 12/16/2022: version 1.3.0
|
|
This is a binary compatible release.
|
|
* add libsharpyuv, which exposes -sharp_yuv/config.use_sharp_yuv
|
|
functionality to other libraries; libwebp now depends on this library
|
|
* major updates to the container and lossless bitstream docs (#448, #546,
|
|
#551)
|
|
* miscellaneous warning, bug & build fixes (#576, #583, #584)
|
|
|
|
- 8/4/2022: version 1.2.4
|
|
This is a binary compatible release.
|
|
* restore CMake libwebpmux target name for compatibility with 1.2.2 (#575)
|
|
* fix lossless crunch mode encoding with WEBP_REDUCE_SIZE
|
|
(chromium: #1345547, #1345595, #1345772, #1345804)
|
|
|
|
- 6/30/2022: version 1.2.3
|
|
This is a binary compatible release.
|
|
* security fix for lossless encoder (#565, chromium:1313709)
|
|
* improved progress granularity in WebPReportProgress() when using lossless
|
|
* improved precision in Sharp YUV (-sharp_yuv) conversion
|
|
* many corrections to webp-lossless-bitstream-spec.txt (#551)
|
|
* crash/leak fixes on error/OOM and other bug fixes (#558, #563, #569, #573)
|
|
|
|
- 1/11/2022: version 1.2.2
|
|
This is a binary compatible release.
|
|
* webpmux: add "-set bgcolor A,R,G,B"
|
|
* add ARM64 NEON support for MSVC builds (#539)
|
|
* fix duplicate include error in Xcode when using multiple XCFrameworks in a
|
|
project (#542)
|
|
* doc updates and bug fixes (#538, #544, #548, #550)
|
|
|
|
- 7/20/2021: version 1.2.1
|
|
This is a binary compatible release.
|
|
* minor lossless encoder improvements and x86 color conversion speed up
|
|
* add ARM64 simulator support to xcframeworkbuild.sh (#510)
|
|
* further security related hardening in libwebp & examples
|
|
(issues: #497, #508, #518)
|
|
(chromium: #1196480, #1196773, #1196775, #1196777, #1196778, #1196850)
|
|
(oss-fuzz: #28658, #28978)
|
|
* toolchain updates and bug fixes (#498, #501, #502, #504, #505, #506, #509,
|
|
#533)
|
|
* use more inclusive language within the source (#507)
|
|
|
|
- 12/23/2020: version 1.2.0
|
|
* API changes:
|
|
- libwebp:
|
|
encode.h: add a qmin / qmax range for quality factor (cwebp adds -qrange)
|
|
* lossless encoder improvements
|
|
* SIMD support for Wasm builds
|
|
* add xcframeworkbuild.sh, supports Mac Catalyst builds
|
|
* import fuzzers from oss-fuzz & chromium (#409)
|
|
* webpmux: add an '-set loop <value>' option (#494)
|
|
* toolchain updates and bug fixes (#449, #463, #470, #475, #477, #478, #479,
|
|
#488, #491)
|
|
|
|
- 12/18/2019: version 1.1.0
|
|
* API changes:
|
|
- libwebp:
|
|
WebPMalloc (issue #442)
|
|
- extras:
|
|
WebPUnmultiplyARGB
|
|
* alpha decode fix (issue #439)
|
|
* toolchain updates and bug fixes
|
|
(chromium: #1026858, #1027136, #1027409, #1028620, #1028716, #995200)
|
|
(oss-fuzz: #19430, #19447)
|
|
|
|
- 7/4/2019: version 1.0.3
|
|
This is a binary compatible release.
|
|
* resize fixes for Nx1 sizes and the addition of non-opaque alpha values for
|
|
odd sizes (issues #418, #434)
|
|
* lossless encode/decode performance improvements
|
|
* lossy compression performance improvement at low quality levels with flat
|
|
content (issue #432)
|
|
* python swig files updated to support python 3
|
|
Tool updates:
|
|
vwebp will now preserve the aspect ratio of images that exceed monitor
|
|
resolution by scaling the image to fit (issue #433)
|
|
|
|
- 1/14/2019: version 1.0.2
|
|
This is a binary compatible release.
|
|
* (Windows) unicode file support in the tools (linux and mac already had
|
|
support, issue #398)
|
|
* lossless encoder speedups
|
|
* lossy encoder speedup on ARM
|
|
* lossless multi-threaded security fix (chromium:917029)
|
|
|
|
- 11/2/2018: version 1.0.1
|
|
This is a binary compatible release.
|
|
* lossless encoder speedups
|
|
* big-endian fix for alpha decoding (issue #393)
|
|
* gif2webp fix for loop count=65535 transcode (issue #382)
|
|
* further security related hardening in libwebp & libwebpmux
|
|
(issues #383, #385, #386, #387, #388, #391)
|
|
(oss-fuzz #9099, #9100, #9105, #9106, #9111, #9112, #9119, #9123, #9170,
|
|
#9178, #9179, #9183, #9186, #9191, #9364, #9417, #9496, #10349,
|
|
#10423, #10634, #10700, #10838, #10922, #11021, #11088, #11152)
|
|
* miscellaneous bug & build fixes (issues #381, #394, #396, #397, #400)
|
|
|
|
- 4/2/2018: version 1.0.0
|
|
This is a binary compatible release.
|
|
* lossy encoder improvements to avoid chroma shifts in various circumstances
|
|
(issues #308, #340)
|
|
* big-endian fixes for decode, RGBA import and WebPPictureDistortion
|
|
Tool updates:
|
|
gifwebp, anim_diff - default duration behavior (<= 10ms) changed to match
|
|
web browsers, transcoding tools (issue #379)
|
|
img2webp, webpmux - allow options to be passed in via a file (issue #355)
|
|
|
|
- 11/24/2017: version 0.6.1
|
|
This is a binary compatible release.
|
|
* lossless performance and compression improvements + a new 'cruncher' mode
|
|
(-m 6 -q 100)
|
|
* ARM performance improvements with clang (15-20% w/ndk r15c, issue #339)
|
|
* webp-js: emscripten/webassembly based javascript decoder
|
|
* miscellaneous bug & build fixes (issue #329, #332, #343, #353, #360, #361,
|
|
#363)
|
|
Tool updates / additions:
|
|
added webpinfo - prints file format information (issue #330)
|
|
gif2webp - loop behavior modified to match Chrome M63+ (crbug.com/649264);
|
|
'-loop_compatibility' can be used for the old behavior
|
|
|
|
- 1/26/2017: version 0.6.0
|
|
* lossless performance and compression improvements
|
|
* miscellaneous performance improvements (SSE2, NEON, MSA)
|
|
* webpmux gained a -duration option allowing for frame timing modification
|
|
* new img2webp utility allowing a sequence of images to be converted to
|
|
animated webp
|
|
* API changes:
|
|
- libwebp:
|
|
WebPPictureSharpARGBToYUVA
|
|
WebPPlaneDistortion
|
|
- libwebpmux / gif2webp:
|
|
WebPAnimEncoderOptions: kmax <= 0 now disables keyframes, kmax == 1
|
|
forces all keyframes. See mux.h and the gif2webp
|
|
manpage for details.
|
|
|
|
- 12/13/2016: version 0.5.2
|
|
This is a binary compatible release.
|
|
This release covers CVE-2016-8888 and CVE-2016-9085.
|
|
* further security related hardening in the tools; fixes to
|
|
gif2webp/AnimEncoder (issues #310, #314, #316, #322), cwebp/libwebp (issue
|
|
#312)
|
|
* full libwebp (encoder & decoder) iOS framework; libwebpdecoder
|
|
WebP.framework renamed to WebPDecoder.framework (issue #307)
|
|
* CMake support for Android Studio (2.2)
|
|
* miscellaneous build related fixes (issue #306, #313)
|
|
* miscellaneous documentation improvements (issue #225)
|
|
* minor lossy encoder fixes and improvements
|
|
|
|
- 6/14/2016: version 0.5.1
|
|
This is a binary compatible release.
|
|
* miscellaneous bug fixes (issues #280, #289)
|
|
* reverted alpha plane encoding with color cache for compatibility with
|
|
libwebp 0.4.0->0.4.3 (issues #291, #298)
|
|
* lossless encoding performance improvements
|
|
* memory reduction in both lossless encoding and decoding
|
|
* force mux output to be in the extended format (VP8X) when undefined chunks
|
|
are present (issue #294)
|
|
* gradle, cmake build support
|
|
* workaround for compiler bug causing 64-bit decode failures on android
|
|
devices using clang-3.8 in the r11c NDK
|
|
* various WebPAnimEncoder improvements
|
|
|
|
- 12/17/2015: version 0.5.0
|
|
* miscellaneous bug & build fixes (issues #234, #258, #274, #275, #278)
|
|
* encoder & decoder speed-ups on x86/ARM/MIPS for lossy & lossless
|
|
- note! YUV->RGB conversion was sped-up, but the results will be slightly
|
|
different from previous releases
|
|
* various lossless encoder improvements
|
|
* gif2webp improvements, -min_size option added
|
|
* tools fully support input from stdin and output to stdout (issue #168)
|
|
* New WebPAnimEncoder API for creating animations
|
|
* New WebPAnimDecoder API for decoding animations
|
|
* other API changes:
|
|
- libwebp:
|
|
WebPPictureSmartARGBToYUVA() (-pre 4 in cwebp)
|
|
WebPConfig::exact (-exact in cwebp; -alpha_cleanup is now the default)
|
|
WebPConfig::near_lossless (-near_lossless in cwebp)
|
|
WebPFree() (free'ing webp allocated memory in other languages)
|
|
WebPConfigLosslessPreset()
|
|
WebPMemoryWriterClear()
|
|
- libwebpdemux: removed experimental fragment related fields and functions
|
|
- libwebpmux: WebPMuxSetCanvasSize()
|
|
* new libwebpextras library with some uncommon import functions:
|
|
WebPImportGray/WebPImportRGB565/WebPImportRGB4444
|
|
|
|
- 10/15/15: version 0.4.4
|
|
This is a binary compatible release.
|
|
* rescaling out-of-bounds read fix (issue #254)
|
|
* various build fixes and improvements (issues #253, #259, #262, #267, #268)
|
|
* container documentation update
|
|
* gif2webp transparency fix (issue #245)
|
|
|
|
- 3/3/15: version 0.4.3
|
|
This is a binary compatible release.
|
|
* Android / gcc / iOS / MSVS build fixes and improvements
|
|
* lossless decode fix (issue #239 -- since 0.4.0)
|
|
* documentation / vwebp updates for animation
|
|
* multi-threading fix (issue #234)
|
|
|
|
- 10/13/14: version 0.4.2
|
|
This is a binary compatible release.
|
|
* Android / gcc build fixes
|
|
* (Windows) fix reading from stdin and writing to stdout
|
|
* gif2webp: miscellaneous fixes
|
|
* fix 'alpha-leak' with lossy compression (issue #220)
|
|
* the lossless bitstream spec has been amended to reflect the current code
|
|
|
|
- 7/24/14: version 0.4.1
|
|
This is a binary compatible release.
|
|
* AArch64 (arm64) & MIPS support/optimizations
|
|
* NEON assembly additions:
|
|
- ~25% faster lossy decode / encode (-m 4)
|
|
- ~10% faster lossless decode
|
|
- ~5-10% faster lossless encode (-m 3/4)
|
|
* dwebp/vwebp can read from stdin
|
|
* cwebp/gif2webp can write to stdout
|
|
* cwebp can read webp files; useful if storing sources as webp lossless
|
|
|
|
- 12/19/13: version 0.4.0
|
|
* improved gif2webp tool
|
|
* numerous fixes, compression improvement and speed-up
|
|
* dither option added to decoder (dwebp -dither 50 ...)
|
|
* improved multi-threaded modes (-mt option)
|
|
* improved filtering strength determination
|
|
* New function: WebPMuxGetCanvasSize
|
|
* BMP and TIFF format output added to 'dwebp'
|
|
* Significant memory reduction for decoding lossy images with alpha.
|
|
* Intertwined decoding of RGB and alpha for a shorter
|
|
time-to-first-decoded-pixel.
|
|
* WebPIterator has a new member 'has_alpha' denoting whether the frame
|
|
contains transparency.
|
|
* Container spec amended with new 'blending method' for animation.
|
|
|
|
- 6/13/13: version 0.3.1
|
|
This is a binary compatible release.
|
|
* Add incremental decoding support for images containing ALPH and ICCP chunks.
|
|
* Python bindings via swig for the simple encode/decode interfaces similar to
|
|
Java.
|
|
|
|
- 3/20/13: version 0.3.0
|
|
This is a binary compatible release.
|
|
* WebPINewRGB/WebPINewYUVA accept being passed a NULL output buffer
|
|
and will perform auto-allocation.
|
|
* default filter option is now '-strong -f 60'
|
|
* encoding speed-up for lossy methods 3 to 6
|
|
* alpha encoding can be done in parallel to lossy using 'cwebp -mt ...'
|
|
* color profile, metadata (XMP/EXIF) and animation support finalized in the
|
|
container.
|
|
* various NEON assembly additions
|
|
Tool updates / additions:
|
|
* gif2webp added
|
|
* vwebp given color profile & animation support
|
|
* cwebp can preserve color profile / metadata with '-metadata'
|
|
|
|
- 10/30/12: version 0.2.1
|
|
* Various security related fixes
|
|
* cwebp.exe: fix import errors on Windows XP
|
|
* enable DLL builds for mingw targets
|
|
|
|
- 8/3/12: version 0.2.0
|
|
* Add support for ARGB -> YUVA conversion for lossless decoder
|
|
New functions: WebPINewYUVA, WebPIDecGetYUVA
|
|
* Add stats for lossless and alpha encoding
|
|
* Security related hardening: allocation and size checks
|
|
* Add PAM output support to dwebp
|
|
|
|
- 7/19/12: version 0.1.99
|
|
* This is a pre-release of 0.2.0, not an rc to allow for further
|
|
incompatible changes based on user feedback.
|
|
* Alpha channel encode/decode support.
|
|
* Lossless encoder/decoder.
|
|
* Add TIFF input support to cwebp.
|
|
Incompatible changes:
|
|
* The encode ABI has been modified to support alpha encoding.
|
|
* Deprecated function WebPINew() has been removed.
|
|
* Decode function signatures have changed to consistently use size_t over
|
|
int/uint32_t.
|
|
* decode_vp8.h is no longer installed system-wide.
|
|
* cwebp will encode the alpha channel if present.
|
|
|
|
- 9/19/11: version 0.1.3
|
|
* Advanced decoding APIs.
|
|
* On-the-fly cropping and rescaling of images.
|
|
* SSE2 instructions for decoding performance optimizations on x86 based
|
|
platforms.
|
|
* Support Multi-threaded decoding.
|
|
* 40% improvement in Decoding performance.
|
|
* Add support for RGB565, RGBA4444 & ARGB image colorspace.
|
|
* Better handling of large picture encoding.
|
|
|
|
- 3/25/11: version 0.1.2
|
|
* Incremental decoding: picture can be decoded byte-by-byte if needs be.
|
|
* lot of bug-fixes, consolidation and stabilization
|
|
|
|
- 2/23/11: initial release of version 0.1, with the new encoder
|
|
- 9/30/10: initial release version with only the lightweight decoder
|