1d9191588 fuzzer/*: normalize src/ includes 253b6f762 fix indent 3731246ba update ChangeLog (tag: v1.2.1-rc2) 4d250f01d dsp/*: use WEBP_HAVE_* to determine Init availability 53a4d3ecd update NEWS 6b2bc8093 bump version to 1.2.1 7e542fc7a update AUTHORS 8e0241154 Merge "libwebp/CMake: Add <BUILD_INTERFACE> to webp incl" into main 9edea6444 libwebp/CMake: Add <BUILD_INTERFACE> to webp incl 10ece18e55 dsp.h: respect --disable-sse2/sse4.1/neon 11a89a3230 wicdec: support alpha from WebP WIC decoder 1226f4aa01 Merge "alpha_processing: fix visual studio warnings" into main 138f594663 alpha_processing: fix visual studio warnings 1446d844e6 Merge "cpu.cmake: fix compiler flag detection w/3.17.0+" into main 15298d26ea Merge changes I593adf92,If20675e7,Ifac68eac into main 16a1e5dae0 alpha_processing*: use WEBP_RESTRICT qualifier 17327ef24f cpu.cmake: fix compiler flag detection w/3.17.0+ 18f70819de configure: enable libwebpmux by default 19dc7e2b42 configure: add informational notices when disabling binaries 209df23ddd configure: move lib flag checks before binaries 21a2e18f10 Merge "WebPConfig.config.in: correct WEBP_INCLUDE_DIRS" into main 22e1a8d4f3 Merge "bit_reader_inl_utils: uniformly apply WEBP_RESTRICT" into main 234de35f43 rescaler.c: fix alignment 240f13eec7 bit_reader_inl_utils: uniformly apply WEBP_RESTRICT 25277d3074 Fix size_t overflow in WebPRescalerInit 2697adbba5 WebPConfig.config.in: correct WEBP_INCLUDE_DIRS 27b60d4603 advanced_api_fuzzer: add extreme config value coverage 2872fe52f6 anim_encode.c,cosmetics: normalize indent 29116d235c anim_encode: Fix encoded_frames_[] overflow 306f445b3e CMake: set CMP0072 to NEW 31b1cf887f define WEBP_RESTRICT for MSVC 323e265136 Add WEBP_RESTRICT & use it in VP8BitReader 33f6d29247 vp8l_dec::ProcessRows: fix int overflow in multiply 34de3b4ba8 CMake: add WEBP_BUILD_LIBWEBPMUX 357f09d3d1 CMakeLists.txt: rm libwebpmux dep from anim_{diff,dump} 364edea4a6 Init{RGB,YUV}Rescaler: fix a few more int overflows 37c9e26bdb rescaler_utils: set max valid scaled w/h to INT_MAX/2 3828d488e6 utils.h: add SizeOverflow() 39695bdaa2 Export/EmitRescaledRowsRGBA: fix pointer offset int overflow 40685d073e Init{RGB,YUV}Rescaler: fix int overflows in multiplication 41d38bd0dd WebPFlipBuffer: fix integer overflow 42109ff0f1 utils: allow MALLOC_LIMIT to indicate a max 43a2fce867 WebPRescalerImportRowExpand_C: promote some vals before multiply 44776983d4 AllocateBuffer: fix int multiplication overflow check 45315abbd6 Merge "Revert "Do not use a palette for one color images."" 46eae815d0 Merge changes Ica3bbf75,I82f82954 47afbca5a1 Require Emscripten 2.0.18 483320416b CMakeLists,emscripten: use EXPORTED_RUNTIME_METHODS 4929145ed6 Update README instructions for using Emscripten 501f579139 cosmetics: remove use of 'sanity' / 'master' 5129b6129c WebPAnimEncoderNewInternal: remove some unnecessary inits 52b60869a1 Revert "Do not use a palette for one color images." 536fb4cddc demux: move padded size calc post unpadded validation 5405b72d42 vp8l_enc.c: normalize index types 55b6513fba Do not use a palette for one color images. 5698bbe35b Fix multi-threading with palettes. 57b1674240 Add modified Zeng's method to palette sorting. 5888c90c45 add CONTRIBUTING.md 596a9916d7 WebPRescalerInit: add missing int64_t promotion 60b6cf52d5 WebPIoInitFromOptions: treat use_scaling as a bool 613b12b7f4 WebPIoInitFromOptions: treat use_cropping as a bool 62595fa13f add WebPCheckCropDimensions() 638fdaecb0 Disable cross-color when palette is used. 648933bac2 WebPIoInitFromOptions: respect incoming bypass_filtering val 657d416ff0 webpdec,cosmetics: match error text to function call 66ec6cfeb5 Fix typo on WebPPictureAlloc() in README 677e58a1a2 *.cmake: add license header 685651a6b2 cmake: fix .so versioning 6925ae67b3 xcframeworkbuild.sh: add arm64 simulator target 705d4ee4c3 cosmetics: remove use of the term 'dummy' 7101b38ee1 faster CollectColorXXXTransforms_SSE41 72652aa344 Merge "Use BitCtz for FastSLog2Slow_C" 730320e1e3 add the missing default BitsCtz() code 748886f620 Use BitCtz for FastSLog2Slow_C 75fae41617 faster CombinedShannonEntropy_SSE2 765bd2704e Introduce the BitCtz() function. 77fee64287 Merge "wicdec,icc: treat unsupported op as non-fatal" 7833ddb894 lossless_sse{2,41}: remove some unneeded includes 79b27ea852 wicdec,icc: treat unsupported op as non-fatal 80b78494a9 Merge "Fix undefined signed shift." 81e79974cd Fix undefined signed shift. 82a8853394 SSE4.1 versions of BGRA to RGB/BGR color-space conversions 83a09a6472 SSE4.1 version of TransformColorInverse 84401da22b Merge "pngdec: check version before using png_get_chunk_malloc_max" 8526907822 pngdec: check version before using png_get_chunk_malloc_max 8606c1e72e Code cleanup 878f0d41aa Merge changes Id135bbf4,I99e59797 88373eb170 gif2webp: don't store loop-count if there's only 1 frame 89759b9d5a cmake: add WEBP_USE_THREAD option 90926ce921 cmake: don't install binaries from extras/ 919c367bc6 WebPAnimDecoderNewInternal: validate bitstream before alloc 9247f64f6e filters_sse2: import Chromium change 93cc3577e9 fuzzer/*: use src/ based include paths 94004d77ff Merge tag 'v1.2.0' 95fedac6cc update ChangeLog (tag: v1.2.0-rc3, tag: v1.2.0) 96170a8712 Fix check_c_source_compiles with pthread. 97ceddb5fc Fix check_c_source_compiles with pthread. 9885995719 disable CombinedShannonEntropy_SSE2 on x86 99289757fe TiffDec: enforce stricter mem/dimension limit on tiles 1008af7436f Merge "{ios,xcframework}build.sh: make min version(s) more visible" into 1.2.0 101e56c3c5b pngdec: raise memory limit if needed 1028696147d pngdec: raise memory limit if needed 10313b8e9fe {ios,xcframework}build.sh: make min version(s) more visible 104a9225410 animdecoder_fuzzer: fix memory leak 105d6c2285d update gradle to 6.1.1 1068df77fb1 animdecoder_fuzzer: fix memory leak 10752ce6333 update NEWS 10828c49820 bump version to 1.2.0 1097363dff2 webp/encode.h: restore WEBP_ENCODER_ABI_VERSION to v1.1.0 110826aafa5 update AUTHORS 11163258823 animdecoder_fuzzer: validate canvas size 1129eb26381 CMake: remove duplicate "include(GNUInstallDirs)" 1132e7bed79 WebPPicture: clarify the ownership of user-owned data. 114cccf5e33 webpmux: add an '-set loop <value>' option 115c9a3f6a1 Merge changes Ie29f9867,I289c54c4 116319f56f1 iosbuild.sh: sync some aspects of xcframeworkbuild.sh 117e8e8db98 add xcframeworkbuild.sh 118ae545534 dsp.h: allow config.h to override MSVC SIMD autodetection 119fef789f3 Merge "cmake: fix per-file assembly flags" 120fc14fc03 Have C encoding predictors use decoding predictors. 1217656f0b3 README,cosmetics: fix a couple typos 122d2e245ea cmake: disable webp.js if WEBP_ENABLE_SIMD=1 12396099a79 cmake: fix per-file assembly flags 1245abb5582 Merge "cmake: fix compilation w/Xcode generator" 1258484a120 cmake: fix compilation w/Xcode generator 126d7bf01c9 Merge changes Ifcae0f38,Iee2d7401 12736c81ff6 WASM-SIMD: port 2 patches from rreverser@'s tree 128988b02ab Merge "Couple of fixes to allow SIMD on Emscripten" 12926faf770 wicdec: fail with animated images 130ab2d08a8 [cd]webp: document lack of animated webp support 13152273943 Couple of fixes to allow SIMD on Emscripten 1328870ba7f Fix skia bug #10952 1334b3c6953 Detect if StoreFrame read more than anmf_payload_size bytes 13417fd4ba8 webp/decode.h,cosmetics: normalize 'flip' comment 135411d3677 remove some unreachable break statements 1363700ffd7 WebPPictureHasTransparency: remove unreachable return 13783604bf3 {animencoder,enc_dec}_fuzzer: convert some abort()s to returns 138eb44119c Merge changes I8ae09473,I678c8b1e 1399f6055fc fuzz_utils.h: rename max() to Max() 140695788e7 fuzz_utils.h: make functions WEBP_INLINE 141906c1fcd make ImgIoUtilReadFile use WebPMalloc instead of malloc 1428cb7e536 rename demux_api_fuzzer.c -> mux_demux_api_fuzzer.c 143443db47d add animdecoder_fuzzer.cc 14436a6eea3 Merge "import fuzzers from oss-fuzz/chromium" 145ec5f12c1 Makefile.vc: remove deprecated /Gm option 14664425a08 picture_tools_enc: fix windows build warning 147bd94090a import fuzzers from oss-fuzz/chromium 148cf847cba use WEBP_DSP_INIT_FUNC for Init{GammaTables*,GetCoeffs} 14955a080e5 Add WebPReplaceTransparentPixels() in dsp 15084739717 GetBackgroundColorGIF: promote to uint32_t before << 24 151def64e92 cwebp: Fix -print_psnr for near_lossless 152cf2f88b3 Add palette and spatial for q >= 75 and -m 5 153f0110bae Add no-color cache configuration to the cruncher 154749a8b99 Better estimate of the cache cost. 1554f9f00cc Use spatial predictors on top of palette no matter what. 1567658c686 Add spatial prediction on top of palette in cruncher. 157133ff0e3 webp_js: force WASM=0 option explicitly 158e3c259a2 Fix integer overflow in EmitFancyRGB. 159b3ff0bde man/{gif2,img2}webp,webpmux: normalize some wording 160f9b30586 fix ABI breakage introduced by 6a0ff358 1611d58dcfc README.webp_js: update note about emscripten version 16244070266 README.webp_js: s/fastcomp/upstream/ 1632565fa8f README.webp_js: update cmake command 16447309ef5 webp: WEBP_OFFSET_PTR() 165687ab00e DC{4,8,16}_NEON: replace vmovl w/vaddl 1661b92fe75 DC16_NEON,aarch64: use vaddlv 16753f3d8cf dec_neon,DC8_NEON: use vaddlv instead of movl+vaddv 16827d08240 Fix integer overflow in WebPAnimDecoderGetNext() 16969776e38 Merge "remove call to MBAnalyzeBestIntra4Mode for method >= 5" 170a99078c1 remove call to MBAnalyzeBestIntra4Mode for method >= 5 17122e404cc CMakeLists.txt: fix set(CACHE) argument order 17271690b52 fix MSVC warning 1736a0ff358 Enc: add a qmin / qmax range for quality factor 1740fa56f30 Merge tag 'v1.1.0' 1756cf504d0 PNM decoding: handle max_value != 255 176d7844e97 update ChangeLog (tag: v1.1.0-rc2, tag: v1.1.0, origin/1.1.0) 1777f006436 Makefile.vc: fix webp_quality.exe link 178cf047e83 Makefile.vc: fix webp_quality.exe link 179c074c653 update NEWS 18030f09551 bump version to 1.1.0 181a76694a1 update AUTHORS 1826e3ef7b3 extras: fix WEBP_SWAP_16BIT_CSP check 18347178dbd extras: add WebPUnmultiplyARGB() convenience function 18422cbae33 idec_dec: fix 0 offset of NULL pointer 185290dd0b4 muxread: fix 0 offset of NULL pointer 1860df474ac Merge "lossless_(enc_|)sse2: avoid offsetting a NULL pointer" 187c6b75a19 lossless_(enc_|)sse2: avoid offsetting a NULL pointer 188295e5e38 fix UBSAN warning 189e2575e05 DC8_NEON,aarch64: use vaddv 190b0e09e34 dec_neon: Fix build failure under some toolchains 191cf0e903c dsp/lossless: Fix non gcc ARM builds 192bb7bc40b Remove ubsan errors. 19378881b76 CMake: fix GLUT library link 1949f750f7a cmake: fix BUILD_SHARED_LIBS build on mac 19517850e74 libwebp: Remove char-subscripts warning in pnmdec.c 1962fa2552d Merge "Expose WebPMalloc() in addition to WebPFree()" 197a4df4aae Expose WebPMalloc() in addition to WebPFree() 198853ea3d8 imageio/tiff: Return error before allocating bad tile size 199af650c0b Fix a Wxor-used-as-pow false positive 200601ef17c libwebp.py: update to swig 3.0.12 2010e48d889 bugfix: last alpha rows were incorrectly decoded 20224d2ccb4 webp: Fix imageio ReadPNM() TUPLTYPE 203fab8f9cf cosmetics: normalize '*' association 20494138e0e update .gitignore 2050fe1a89d update ChangeLog (tag: v1.0.3-rc1, tag: v1.0.3) 2062ad0916d update NEWS 2071287362b bump version to 1.0.3 2087b968cc2 update AUTHORS 2099d6988f4 Fix the oscillating prediction problem at low quality 210312f74d0 makefile.unix: allow *_LIBS to be overridden w/EXTRA_LIBS 21192dbf237 filters_sse2,cosmetics: shorten some long lines 212a277d197 filters_sse2.c: quiet integer sanitizer warnings 213804540f1 Fix cpufeatures in CMake. 214bf00c15b Add CMake option for bittrace. 215a788b498 filters_sse2.c: quiet integer sanitizer warnings 216e6a92c5e filters.c: quiet integer sanitizer warnings 217ec1cc40a lossless.c: remove U32 -> S8 conversion warnings 2181106478f remove conversion U32 -> S8 warnings 219812a6b49 lossless_enc: fix some conversion warning 2204627c1c9 lossless_enc,TransformColorBlue: quiet uint32_t conv warning 221c84673a6 lossless_enc_sse{2,41}: quiet signed conv warnings 222776a7757 dec_sse2: quiet signed conv warnings 223bd39c063 Merge "thread_utils: release mutex before signaling" 2240550576f Merge "(alpha_processing,enc}_sse2: quiet signed conv warnings" 2256682f2c4 thread_utils: release mutex before signaling 226e78dea75 (alpha_processing,enc}_sse2: quiet signed conv warnings 2279acf18ba iosbuild.sh: add WebP{Demux,Mux}.framework 228b9be7e65 vwebp: remove the -fit option (and make it default) 2291394a2bb Merge "README.webp_js: update Emscripten.cmake note" 230dd3e7f8a README.webp_js: update Emscripten.cmake note 23132cf8801 predictor_enc,GetBestGreenRedToBlue: quiet implicit conv warnings 232e1c8acb5 Merge "vwebp: add a -fit option" 233cbd23dd5 vwebp: add a -fit option 2342e672351 bit_writer_utils,Flush: quiet implicit conversion warnings 2351326988d swig: update libwebp_python_wrap.c 2360e7f8548 update generated swig files 23717ed1438 Merge "PutLE{16,24}: quiet implicit conversion warnings" 23824686538 PutLE{16,24}: quiet implicit conversion warnings 239153bb3a0 fix some clang-7 warnings: 240ab2dc893 Rescaler: fix rounding error 241aa65f89a HistogramCombineStochastic: fix free of uninit value 242af0bac64 Merge "encode.h: mention 'exact' default in WebPEncodeLossless*" 2436d2e11ec encode.h: mention 'exact' default in WebPEncodeLossless* 2448c3f04fe AndroidCPUInfo: reorder terms in conditional 245fcfd9c71 BitTrace: if BITTRACE is > 0, record and print syntax bits used 246067031ea Speedups for unused Huffman groups. 24701ac46ba libwebp: Display "libjpeg error:" in imageio/jpegdec 248d9a662e1 WebPRescalerGetScaledDimensions: round scaled dimension up 24962eb3f08 libwebp: Fix missing '{' in README 250e05f785a Merge "unicode,INIT_WARGV: add missing cast" 25163c9a69f tag the VP8LHashPix() function for potential uint roll-over 2522b7214ab unicode,INIT_WARGV: add missing cast 253bf424b46 tag the GetPixPairHash64() function for potential uint roll-over 2547d05d6ca Have the color cache computation be u32-bit only. 2556bcf8769 Remove BINARYEN_METHOD in wasm settings. 2562b98df90 update ChangeLog (tag: v1.0.2-rc1, tag: v1.0.2) 25761e372b7 update NEWS 2587ae658a0 bump version to 1.0.2 25951c4907d update AUTHORS 260666bd6c6 man/cwebp.1: refine near-lossless text 261561cdce5 Clarify the doc about GetFeatures. 262aec2cf02 near_lossless: fix fuzzing-detected integer overflow 263928a75de webp: Fix VP8LBitWriterClone() bug 2645173d4ee neon IsFlat 2655b081219 IsFlat: inline when possible 266381b7b54 IsFlat: use int for thresh 2676ed15ea1 fix unprobable leak in webp_sdl.c 26822bbb24e Merge "IsFlat: return int" 2698b3fb238 Merge tag 'v1.0.1' 270f435de95 IsFlat: return int 27141521aed utils.h: only define WEBP_NEED_LOG_TABLE_8BIT when needed 2729f4d4a3f neon: GetResidualCost 2730fd7514b neon: SetResidualCoeffs 274f95a996c Simpler histogram clustering. 275e85d3313 update ChangeLog (tag: v1.0.1-rc2, tag: v1.0.1) 276fa8210e4 Fix pair update in stochastic entropy merging. 277fd198f73 add codereview.settings 278825389ac README.mux: add a reference to the AnimDecoder API 2793be698c3 CMake: fix webp_js compilation 280485ff86f Fix pair update in stochastic entropy merging. 2814cd0582d CMake: fix webp_js compilation 2824cbb4caf update NEWS 283f5a5918d bump version to 1.0.1 284d61385db Speed-up: Make sure we only initialize histograms when needed. 2856752904b Speed-up: Make sure we only initialize histograms when needed. 2860c570316 update AUTHORS 287301a2dda img2webp: add help note about arguments from a file 288f0abab92 Speedups for empty histograms. 289f2dfd925 Split HistogramAdd to only have the high level logic in C. 29006b7bc7d Fix compilation on windows and clang-cl+ninja. 291b6284d82 img2webp: add help note about arguments from a file 292decf6f6b Speedups for empty histograms. 293dea3e899 Split HistogramAdd to only have the high level logic in C. 294632798ae Merge "Fix compilation on windows and clang-cl+ninja." 295dc1a9518 Merge "libwebp: Unicode command tools on Windows" 2969cf9841b libwebp: Unicode command tools on Windows 29798179495 remove some minor TODOs 298a376e7b9 Fix compilation on windows and clang-cl+ninja. 299cbf82cc0 Remove AVX2 files. 3005030e902 Merge "TIFF decoder: remove unused KINV definition" 301ac543311 Remove a few more useless #defines 302123d3306 TIFF decoder: remove unused KINV definition 303ef1094b0 Merge "- install pkg-config files during the CMake build" 304b911fbc9 libwebp: Remove duplicate GIFDisplayError in anim_util 305eee00b66 - install pkg-config files during the CMake build 306ac3ec8c9 Merge "Clean-up the common sources in dsp." 3073e13da7b Clean-up the common sources in dsp. 3085c395f1d libwebp: cmake-format all 309e7a69729 libwebp: Add extras targets in CMakeLists.txt 310e52485d6 libwebp: Rename macros in webpmux.c 31192dc0f09 clean-up MakeInputImageCopy() 31239952de2 VP8IteratorImport: add missing 'const' 313382af7a2 clean-up WebPBlendAlpha 31414d020f6 libwebp: Use ExUtilGet*() in anim_diff 3150d92ff25 libwebp: remove useless variable in gif2webp 316556cb1b4 Merge "CMake: Set WEBP_BUILD_GIF2WEBP to off" 317da26ee49 CMake: Set WEBP_BUILD_GIF2WEBP to off 318b2a867c0 cwebp: Don't premultiply during -resize if -exact 319637141bc pngdec: fix build w/libpng < 1.4.x 320bc5092b1 pngdec: set memory functions 32150d8345a Fix CMake math library. 3226aa3e8aa Fix math library on Visual Studio. 323d71df4e2 Fix math library finding in CMake. 324de08d727 cosmetics: normalize include guard comment 325009562b4 vwebp: Fix bug when Dispose then NoBlend frames 326423f2579 Fix up CMake to create targets. 327907208f9 Wait for all threads to be done in DecodeRemaining. 3284649b3c4 vwebp: Add background color display option 32978ad57a3 Fix bad glClearColor parameters 330da96d8d9 Allow for a non-initialized alpha decompressor in DoRemap. 3312563db47 fix rescaling rounding inaccuracy 332211f37ee fix endian problems in pattern copy 3335f0f5c07 Make sure partition #0 is read before VP8 data in IDecode. 334de98732b fix GetColorf() bug 3354338cd36 misc fixes in libwebpmux 336e00af13e fix signatures after a9ceda7ff1 337a9ceda7f Speed-up chunk list operations. 3382281bbf6 Merge "Better handling of bogus Huffman codes." 33939cb9aad Better handling of bogus Huffman codes. 34089cc9d37 Merge "fix read-overflow while parsing VP8X chunk" 34195fd6507 fix read-overflow while parsing VP8X chunk 3429e729fe1 Fix VP8IoTeardownHook being called twice on worker sync failure 34329fb8562 Merge "muxread,anmf: fail on multiple image chunks" 344eb82ce76 muxread,anmf: fail on multiple image chunks 3451344a2e9 fix alpha-filtering crash when image width is larger than radius 346be738c6d muxread,ChunkVerifyAndAssign: validate chunk_size 3472c70ad76 muxread,CreateInternal: fix riff size checks 348569001f1 Fix for thread race heap-use-after-free 349c56a02d9 Android.mk: use LOCAL_EXPORT_C_INCLUDES w/public libs 35015795596 CMakeLists.txt,cosmetics: normalize if() formatting 3511a44c233 Merge "cmake: add support for webpmux" 352e9569ad7 Merge "configure,*am,cosmetics: s/WANT_/BUILD_/" 35335c7de6f cmake: add support for webpmux 3540f25e61c WebpToSDL(): fix the return value in case of error 3555d8985de configure,*am,cosmetics: s/WANT_/BUILD_/ 356895fd28f Merge "man/Makefile.am: add img2webp.1" 3575cf3e2af man/Makefile.am: add img2webp.1 3582a9de5b9 Add build rules for anim_diff & anim_dump utils. 35971ed73cf fix invalid check for buffer size 360af0e4fbb gif2webp: fix transcode of loop count=65535 361dce5d764 Limit memory allocation when reading invalid Huffman codes. 362f9df0081 Merge "cmake: quiet glut deprecation warnings on OS X" 363dc39b16f webpmux.1: correct grammar 364c7aa1264 cwebp.c: fix a missing \n 36553aa51e9 Merge tag 'v1.0.0' 366698b8844 update ChangeLog (tag: v1.0.0) 3678d510751 webp-container-spec: correct frame duration=0 note 368e6b2164e vwebp: Copy Chrome's behavior w/frame duration == 0 369094b3b28 cmake: quiet glut deprecation warnings on OS X 37071c39a06 webp-container-spec: correct frame duration=0 note 371fd3d5756 vwebp: Copy Chrome's behavior w/frame duration == 0 372b0c966fb Build vwebp from CMake. 373d20b7707 update ChangeLog (tag: v1.0.0-rc3) 3740d5fad46 add WEBP_DSP_INIT / WEBP_DSP_INIT_FUNC 375d77bf512 add WEBP_DSP_INIT / WEBP_DSP_INIT_FUNC 376c1cb86af fix 16b overflow in SSE2 377e577feb7 makefile.unix: add DEBUG flag for compiling w/ debug-symbol 37899be34b3 cwebp,get_disto: fix bpp output 379e122e511 cwebp,get_disto: fix bpp output 380f5565ca8 cmake: Make sure we use near-lossless by default. 381d898dc14 fix bug in WebPImport565: alpha value was not set 3821c8f358d Fix CMake with WASM. 383a0215fb7 webp_js: fix webp_js demo html 384882784b0 update ChangeLog (tag: v1.0.0-rc2) 3852f930e08 Revert "Use proper targets for CMake." 3868165e8fb Use proper targets for CMake. 3873f157dd5 Remove some very hard TODOs. 388abb47760 Merge "Use proper targets for CMake." 389cd758a17 {de,}mux/Makefile.am: add missing headers 390e155dda0 Use proper targets for CMake. 391b892b8ba makefile.unix,dist: use ascii for text output 39264a57d05 add -version option to anim_dump,anim_diff and img2webp 393994be82d Merge "Remove some very hard TODOs." 3944033e1d7 Remove some very hard TODOs. 395fc1b8e3a webp_js: fix webp_js demo html 39615aa48d9 update ChangeLog (tag: v1.0.0-rc1) 397e607dabc update AUTHORS 39838410c08 [CFI] Remove function pointer casts 399978eec25 [CFI] Remove function pointer casts 400c57b2736 bump version to 1.0.0 401cba28853 update NEWS 402c909d531 Merge "remove some deprecation warning on MacOSX" 403217443c7 remove some deprecation warning on MacOSX 404b672bdfa configure: quiet glut deprecation warnings on OS X 405daa9fcaf configure: use sdl-config if available 406dd174cae Merge "imagedec: support metadata reading for WebP image decoding" 407641cedcc imagedec: support metadata reading for WebP image decoding 408065b2ce1 anim_diff: add a couple missing newlines in Help() 409c4cc1147 Merge "gif2webp: force low duration frames to 100ms" 41009333097 gif2webp: force low duration frames to 100ms 411e03f0ec3 sharp_yuv: use 14b fixed-point precision for gamma 412b2db361c image_enc,WebPWritePNG: move locals after setjmp 41374e82ec6 Merge "WebPPictureDistortion: fix big-endian results order" 414645d04ca Merge "cwebp,get_disto: report bpp" 415120f58c3 Merge "lossless*sse2: improve non-const 16-bit vector creation" 416a7fe9412 WebPPictureDistortion: fix big-endian results order 417e26fe066 cwebp,get_disto: report bpp 4189df64e28 Merge changes Id5b4a1a4,Ia20ce844 4198043504f lossless*sse2: improve non-const 16-bit vector creation 4201e3dfc48 Import: extract condition from loop 4213b07d327 Import,RGBA: fix for BigEndian import 422551948e4 Remove unused argument in VP8LBitsEntropy. 4233005237a ReadWebP: fix for big-endian 424499c395a Merge "anim_diff: expose the -max_diff option" 425f69dcd69 Merge "remove WEBP_EXPERIMENTAL_FEATURES" 42607d884d5 anim_diff: expose the -max_diff option 427f4dd9256 remove WEBP_EXPERIMENTAL_FEATURES 42894a8377b extract the command-line parsing helpers to example_util 429fc09e6e2 PNM decoder: prevent unsupported depth=2 PAM case. 4306de58603 MIPS64: Fix defined-but-not-used errors with WEBP_REDUCE_CSP 431cbde5728 gif2webp: add support for reading from stdin 432cf1c5054 Add an SSE4 version of some lossless color transforms. 43345a8b5eb Fix lint error with man page. 434cff38e8f Merge "PNG decoder: handle gAMA chunk" 43559cb1a48 Merge "enable dc error-diffusion always" 43678318b30 PNG decoder: handle gAMA chunk 437664c21dd Merge "remove some TODOs" 438815652de enable dc error-diffusion always 439aec45cec remove some TODOs 4405715dfce fix block-count[] increment in case of large image 441c2d04f3e enable DC error-diffusion always for multi-pass 44296bf07c5 use DC error diffusion for U/V at low-quality 4431c59020b fix missing sse41 targets in makefile.unix 4447a8e814b cosmetics: s/color_space/colorspace/ 44505f6fe24 upsampling: rm asserts w/REDUCE_CSP+OMIT_C_CODE 446b4cf5597 Merge "Upsampling SSE2/SSE4 speedup." 447ccbeb32c Makefile.vc: add missing sse41 files 44855403a9a Upsampling SSE2/SSE4 speedup. 449807b53c4 Implement the upsampling/yuv functions in SSE41 45084101a81 Fix wasm WebP compilation 4518bebd2a3 fix warning on MSVC 452a7f93fe3 webpmux: allow reading argument from a file 453b69f18a7 gif2webp.1: fix -loop_compatibility layout 45472d530c0 Merge "fix lossless decoding w/WEBP_REDUCE_SIZE" 455296c7dc4 fix lossless decoding w/WEBP_REDUCE_SIZE 4560d5d029c Merge "ImgIoUtilReadFile: fix file leak upon error" 457ae568ce7 ImgIoUtilReadFile: fix file leak upon error 458796b5a8a Merge tag 'v0.6.1' 4596b7a95fd update ChangeLog (tag: v0.6.1) 460f66955de WEBP_REDUCE_CSP: restrict colorspace support 4611af0df76 Merge "WEBP_REDUCE_CSP: restrict colorspace support" 4626de20df0 WEBP_REDUCE_CSP: restrict colorspace support 463a289d8e7 update ChangeLog (tag: v0.6.1-rc2) 464c10a493c vwebp: disable double buffering on windows & mac 4650d4466c2 webp_to_sdl.c: fix file mode 4661b27bf8b WEBP_REDUCE_SIZE: disable all rescaler code 467126be109 webpinfo: add -version option 4680df22b9e WEBP_REDUCE_SIZE: disable all rescaler code 4699add62b5 bump version to 0.6.1 470d3e26144 update NEWS 4712edda639 README: add webpinfo section 4729ca568ef Merge "right-size some tables" 47331f1995c Merge "SSE2 implementation of HasAlphaXXX" 474a80c46bd SSE2 implementation of HasAlphaXXX 475083507f2 right-size some tables 4762e5785b2 anim_utils.c: remove warning when !defined(WEBP_HAVE_GIF) 477b299c47e add WEBP_REDUCE_SIZE 478f593d71a enc: disable pic->stats/extra_info w/WEBP_DISABLE_STATS 479541179a9 Merge "predictor_enc: fix build w/--disable-near-lossless" 4805755a7ec predictor_enc: fix build w/--disable-near-lossless 481eab5bab7 add WEBP_DISABLE_STATS 4828052c585 remove some petty TODOs from vwebp. 483c245343d move LOAD8x4 and STORE8x2 closer to their use location 484b9e734fd dec,cosmetics: normalize function naming style 485c188d546 dec: harmonize function suffixes 48628c5ac81 dec_sse41: harmonize function suffixes 487e65b72a3 Merge "introduce WebPHasAlpha8b and WebPHasAlpha32b" 488b94cee98 dec_sse2: remove HE8uv_SSE2 48944a0ee3f introduce WebPHasAlpha8b and WebPHasAlpha32b 490aebf59ac Merge "WebPPictureAllocARGB: align argb allocation" 491c184665e WebPPictureAllocARGB: align argb allocation 4923daf7509 WebPParseHeaders: remove obsolete animation TODO 49380285d97 cmake: avoid security warnings under msvc 494650eac55 cmake: don't set -Wall with MSVC 495c462cd00 Remove useless code. 49601a98217 Merge "remove WebPWorkerImpl declaration from the header" 4973c49fc47 Merge "thread_utils: fix potentially bad call to Execute" 498fde2782e thread_utils: fix potentially bad call to Execute 4992a270c1d remove WebPWorkerImpl declaration from the header 500f1f437cc remove mention of 'lossy-only parameters' from the doc 5013879074d Merge "WebPMemToUint32: remove ptr cast to int" 50204b029d2 WebPMemToUint32: remove ptr cast to int 503b7971d0e dsp: avoid defining _C functions w/NEON builds 5046ba98764 webpdec: correct alloc size check w/use_argb 5055cfb3b0f normalize include guards 506f433205e Merge changes Ia17c7dfc,I75423abb,Ia2f716b4,I161caa14,I4210081a, ... 5078d033b14 {dec,enc}_neon: harmonize function suffixes x2 5080295e981 upsampling_neon: harmonize function suffixes 509d572c4e5 yuv_neon: harmonize function suffixes 510ab9c2500 rescaler_neon: harmonize function suffixes 51193e0ce27 lossless_neon: harmonize function suffixes 51222fbc50e lossless_enc_neon: harmonize function suffixes 513447875b4 filters_neon,cosmetics: fix indent 514e51bdd43 remove unused VP8TokenToStats() function 515785da7ea enc_neon: harmonize function suffixes 516bc1a251f dec_neon: harmonize function suffixes 51761e535f1 dsp/lossless: workaround gcc-4.8 bug on arm 51868b2eab7 cwebp: fix alpha reporting w/lossless & metadata 51930042faa WebPDemuxGetI: add doc details around WebPFormatFeature 5200a17f471 Merge "WIP: list includes as descendants of the project dir" 521a4399721 WIP: list includes as descendants of the project dir 52208275708 Merge "Make sure we reach the full range for alpha blending." 523d361a6a7 yuv_sse2: harmonize function suffixes 5246921aa6f upsampling_sse2: harmonize function suffixes 52508c67d3e ssim_sse2: harmonize function suffixes 526582a1b57 rescaler_sse2: harmonize function suffixes 5272c1b18ba lossless_sse2: harmonize function suffixes 5280ac46e81 lossless_enc_sse2: harmonize function suffixes 529bc634d57 enc_sse2: harmonize function suffixes 530bcb7347c dec_sse2: harmonize function suffixes 531e14ad93c Make sure we reach the full range for alpha blending. 5327038ca8d demux,StoreFrame: restore hdr size check to min req 533fb3daad6 cpu: fix ssse3 check 534be590e06 Merge "Fix CMake redefinition for HAVE_CPU_FEATURES_H" 53535f736e1 Fix CMake redefinition for HAVE_CPU_FEATURES_H 536a5216efc Fix integer overflow warning. 537a9c8916b decode.h,WebPIDecGetRGB: clarify output ptr validity 5383c74c645 gif2webp: handle 1-frame case properly + fix anim_diff 539c7f295d3 Merge "gif2webp: introduce -loop_compatibility option" 540b4e04677 gif2webp: introduce -loop_compatibility option 541f78da3de add LOCAL_CLANG_PREREQ and avoid WORK_AROUND_GCC w/3.8+ 54201c426f1 define WEBP_USE_INTRINSICS w/gcc-4.9+ 5438635973d use sdl-config (if available) to determine the link flags 544e9459382 use CPPFLAGS before CFLAGS 5454a9d788e Merge "Android.mk,mips: fix clang build with r15" 5464fbdc9fb Android.mk,mips: fix clang build with r15 547a80fcc4a ifdef code not used by Chrome/Android. 5483993af12 Fix signed integer overflows. 549f66f94ef anim_dump: small tool to dump frames from animated WebP 5506eba857b Merge "rationalize the Makefile.am" 551c5e34fba function definition cleanup 5523822762a rationalize the Makefile.am 553501ef6e4 configure style fix: animdiff -> anim_diff 554f8bdc268 Merge "protect against NULL dump_folder[] value in ReadAnimatedImage()" 55523bfc652 protect against NULL dump_folder[] value in ReadAnimatedImage() 5568dc3d71b cosmetics,ReadAnimatedWebP: correct function comment 5575bd40066 Merge changes I66a64a0a,I4d2e520f 5587945575c cosmetics,webpinfo: remove an else after a return 5598729fa11 cosmetics,cwebp: remove an else after a return 560f324b7f9 cosmetics: normalize fn proto & decl param names 561869eb369 CMake cleanups. 562289e62a3 Remove declaration of unimplemented VP8ApplyNearLosslessPredict 56320a94186 pnmdec,PAM: validate depth before calculating bytes_per_px 56434130afe anim_encode: fix integer overflow 56542c79aa6 Merge "Encoder: harmonize function suffixes" 566b09307dc Encoder: harmonize function suffixes 567bed0456d Merge "SSIM: harmonize the function suffix" 56854f6a3cf lossless_sse2.c: fix some missed suffix changes 569088f1dcc SSIM: harmonize the function suffix 57086fc4dd9 webpdec: use ImgIoUtilCheckSizeArgumentsOverflow 57108ea9ecd imageio: add ability restrict max image size 5726f9daa4a jpegdec,ReadError: fix leaks on error 573a0f72a4f VP8LTransformColorFunc: drop an non-respected 'const' from the signature. 5748c934902 Merge "Lossess dec: harmonize the function suffixes" 575622242aa Lossess dec: harmonize the function suffixes 5761411f027 Lossless Enc: harmonize the function suffixes 57724ad2e3c add const to two variables 57846efe062 Merge "Allow the lossless cruncher to work for alpha." 5798c3f9a47 Speed-up LZ77. 5801aef4c71 Allow the lossless cruncher to work for alpha. 581b8821dbd Improve the box LZ77 speed. 5827beed280 add missing ()s to macro parameters 5836473d20b Merge "fix Android standalone toolchain build" 584dcefed95 Merge "build.gradle: fix arm64 build" 5850c83a8bc Merge "yuv: harmonize suffix naming" 586c6d1db4b fix Android standalone toolchain build 587663a6d9d unify the ALTERNATE_CODE flag usage 58873ea9f27 yuv: harmonize suffix naming 589c71b68ac build.gradle: fix arm64 build 590c4568b47 Rescaler: harmonize the suffix naming 5916cb13b05 Merge "alpha_processing: harmonize the naming suffixes to be _C()" 59283a3e69a Merge "simplify WEBP_EXTERN macro" 5937295fde2 Merge "filters: harmonize the suffixes naming to _SSE2(), _C(), etc." 5948e42ba4c simplify WEBP_EXTERN macro 595331ab34b cost*.c: harmonize the suffix namings 596b161f670 filters: harmonize the suffixes naming to _SSE2(), _C(), etc. 597dec5e4d3 alpha_processing: harmonize the naming suffixes to be _C() 5986878d427 fix memory leak in SDL_Init() 599461ae555 Merge "configure: fix warnings in sdl check" 60062486a22 configure: test for -Wundef 60192982609 dsp.h: fix -Wundef w/__mips_dsp_rev 6020265cede configure: fix warnings in sdl check 60388c73d8a backward_references_enc.h: fix WINDOW_SIZE_BITS check 6044ea49f6b rescaler_sse2.c: fix WEBP_RESCALER_FIX -> _RFIX typo 6051b526638 Clean-up some CMake 60687f57a4b Merge "cmake: fix gif lib detection when cross compiling" 607b34a9db1 cosmetics,dec_sse2: remove some redundant comments 608471c5755 cmake: fix gif lib detection when cross compiling 609c793417a cmake: disable gif2webp if gif lib isn't found 610dcbc1c88 cmake: split gif detection from IMG deps 61166ad84f0 Merge "muxread: remove unreachable code" 61250ec3ab7 muxread: remove unreachable code 6137d67a164 Lossy encoding: smoothen transparent areas to improve compression 614e50650c7 Merge "fix signature for DISABLE_TOKEN_BUFFER compilation" 615671d2567 fix signature for DISABLE_TOKEN_BUFFER compilation 616d6755580 cpu.cmake: use unique flag to test simd disable flags 61728914528 Merge "Remove the argb* files." 6188acb4942 Remove the argb* files. 6193b62347b README: correct cmake invocation note 6207ca0df13 Have the SSE2 version of PackARGB use common code. 6217b250459 Merge "Re-use the transformed image when trying several LZ77 in lossless." 622e132072f Re-use the transformed image when trying several LZ77 in lossless. 6235d7a50ef Get code to compile in C++. 6247b012987 configure: test for -Wparentheses-equality 625f0569adb Fix man pages for multi-threading. 626f1d5a397 multithread cruncher: only copy stats when picture->stats != NULL 627f8c2ac15 Multi-thread the lossless cruncher. 628a88c6522 Merge "Integrate a new LZ77 looking for matches in the neighborhood of a pixel only." 6298f6df1d0 Unroll Predictors 10, 11 and 12. 630355c3d1b Integrate a new LZ77 looking for matches in the neighborhood of a pixel only. 631a1779a01 Refactor LZ77 handling in preparation for a new method. 63267de68b5 Android.mk/build.gradle: fix mips build with clang from r14b 633f209a548 Use the plane code and not the distance when computing statistics. 634b903b80c Split cost-based backward references in its own file. 635498cad34 Cosmetic changes in backward reference. 636e4eb4587 lossless, VP8LTransformColor_C: make sure no overflow happens with colors. 637af6deaff webpinfo: handle alpha flag mismatch 6387caef29b Fix typo that creeped in. 63939e19f92 Merge "near lossless: fix unsigned int overflow warnings." 6409bbc0891 near lossless: fix unsigned int overflow warnings. 641e1118d62 Merge "cosmetics,FindClosestDiscretized: use uint in mask creation" 642186bc9b7 Merge "webpinfo: tolerate ALPH+VP8L" 643b5887297 cosmetics,FindClosestDiscretized: use uint in mask creation 644f1784aee near_lossless,FindClosestDiscretized: use unsigned ops 6450d20abb3 webpinfo: tolerate ALPH+VP8L 646972104b3 webpmux: tolerate false positive Alpha flag 647dd7e83cc tiffdec,ReadTIFF: ensure data_size is < tsize_t max 648d988eb7b tiffdec,MyRead: quiet -Wshorten-64-to-32 warning 649dabda707 webpinfo: add support to parse Alpha bitstream 6504c117643 webpinfo: correct background color output, BGRA->ARGB 651defc98d7 Doc: clarify the role of quality in WebPConfig. 652d78ff780 Merge "Fix code to compile with C++." 653c8f14093 Fix code to compile with C++. 654497dc6a7 pnmdec: sanitize invalid header output 655d78e5867 Merge "configure: test for -Wconstant-conversion" 656481e91eb Merge "pnmdec,PAM: set bytes_per_px based on depth when missing" 65793b12753 configure: test for -Wconstant-conversion 658645f0c53 pnmdec,PAM: set bytes_per_px based on depth when missing 659e9154605 Merge "vwebp: activate GLUT double-buffering" 660818d795b vwebp: activate GLUT double-buffering 661d63e6f4b Add a man page for webpinfo 6624d708435 Merge "NEON: implement ConvertRGB24ToY/BGR24/ARGB/RGBA32ToUV/ARGBToUV" 663faf42213 NEON: implement ConvertRGB24ToY/BGR24/ARGB/RGBA32ToUV/ARGBToUV 664b4d576fa Install man pages with CMake. 665cbc1b921 webpinfo: add features to parse bitstream header 666e644c556 Fix bad bit writer initialization. 667b62cdad2 Merge "Implement a cruncher for lossless at method 6." 668da3e4dfb use the exact constant for the gamma transfer function 669a9c701e0 Merge "tiffdec: fix EXTRASAMPLES check" 670adab8ce0 Implement a cruncher for lossless at method 6. 6711b92b237 Merge "Fix VP8ApplyNearLossless to respect const and stride." 6721923ff02 tiffdec: fix EXTRASAMPLES check 67397cce5ba tiffdec: only request EXTRASAMPLES w/> 3 samples/px 6740dcd85b6 Fix VP8ApplyNearLossless to respect const and stride. 675f7682189 yuv: rationalize the C/SSE2 function naming 67652245424 NEON implementation of some Sharp-YUV420 functions 677690efd82 Avoid several backward reference copies. 6784bb1f607 src/dec/vp8_dec.h, cosmetics: fix comments 679285748be cmake: build/install webpinfo 68078fd199c backward_references_enc.c: clear -Wshadow warnings 681ae836410 WebPLog2FloorC: clear -Wshadow warning 682d0b7404e Merge "WASM support" 683134e314f WASM support 684c08adb6f Merge "VP8LEnc: remove use of BitsLog2Ceiling()" 68528c37ebd VP8LEnc: remove use of BitsLog2Ceiling() 6862cb58ab2 webpinfo: output format as a human readable string 687bb175a93 Merge "rename some symbols clashing with MSVC headers" 68839eda658 Remove a duplicated pixel hash implementation. 68936b8274d rename some symbols clashing with MSVC headers 690274daf54 Add webpinfo tool. 691ec5036e4 add explicit reference to /usr/local/{lib,inc} 69218f0dfac Merge "fix TIFF encoder regarding rgbA/RGBA" 6934e2b0b50 Merge "webpdec.h: fix a doc typo" 694e2eeabff Merge "Install binaries, libraries and headers in CMake." 695836607e6 webpdec.h: fix a doc typo 6969273e441 fix TIFF encoder regarding rgbA/RGBA 69717e3c11f Add limited PAM decoding support 6985f624871 Install binaries, libraries and headers in CMake. 699976adac1 Merge "lossless incremental decoding: fix missing eos_ test" 700f8fad4fa lossless incremental decoding: fix missing eos_ test 70127415d41 Merge "vwebp_sdl: fix the makefile.unix" 70249566182 Merge "ImgIoUtilWriteFile(): use ImgIoUtilSetBinaryMode" 7036f75a51b Analyze the transform entropy on the whole image. 704a5e4e3af Use palette only if we can in entropy analysis. 70575a9c3c4 Improve compression by better entropy analysis. 70639cf6f4f vwebp_sdl: fix the makefile.unix 707699b0416 ImgIoUtilWriteFile(): use ImgIoUtilSetBinaryMode 7087d985bd1 Fix small entropy analysis bug. 7096e7caf06 Optimize the color cache size. 710833c9219 More efficient stochastic histogram merge. 7115183326b Refactor the greedy histogram merge. 71299f6f462 Merge "histogram_enc.c,MyRand: s/ul/u/ for unsigned constants" 71380a22186 ssim.c: remove dead include 714a128dfff histogram_enc.c,MyRand: s/ul/u/ for unsigned constants 715693bf74e move the SSIM calculation code in ssim.c / ssim_sse2.c 71610d791ca Merge "Fix the random generator in HistogramCombineStochastic." 717fa63a966 Fix the random generator in HistogramCombineStochastic. 71816be192f VP8LSetBitPos: remove the eos_ setting 719027151ca don't erase the surface before blitting. 7204105d565 disable WEBP_USE_XXX optimisations when EMSCRIPTEN is defined 7219ee32a75 Merge "WebP-JS: emscripten-based Javascript decoder" 722ca9f7b7d WebP-JS: emscripten-based Javascript decoder 723868aa690 Perform greedy histogram merge in a unified way. 7245b393f2d Merge "fix path typo for vwebp_sdl in Makefile.vc" 725e0012bea CMake: only use libwebpdecoder for building dwebp 72684c2a7b0 fix path typo for vwebp_sdl in Makefile.vc 7271b0e4abf Merge "Add a flag to disable SIMD optimizations." 72832263250 Add a flag to disable SIMD optimizations. 729b494fdec optimize the ARGB->ARGB Import to use memcpy 730f1536039 Merge "ReadWebP: decode directly into a pre-allocated buffer" 731e69ed291 ReadWebP: decode directly into a pre-allocated buffer 73257d8de8a Merge "vwebp_sdl: simple viewer based on SDL" 7335cfd4ebc LZ77 interval speedups. Faster, smaller, simpler. 7341e7ad88b PNM header decoder: add some basic numerical validation 73517c7890c Merge "Add a decoder only library for WebP in CMake." 736be733786 Merge "Add clang build fix for MSA" 73703cda0e4 Add a decoder only library for WebP in CMake. 738aa893914 Add clang build fix for MSA 73931a92e97 Merge "imageio: add limited PNM support for reading" 740dcf9d82a imageio: add limited PNM support for reading 7416524fcd6 vwebp_sdl: simple viewer based on SDL 7426cf24a24 get_disto: fix reference file read 74343d472aa Merge tag 'v0.6.0' 74450d1a848 update ChangeLog (tag: v0.6.0, origin/0.6.0) 74520a7fea0 extras/Makefile.am: fix libwebpextras.la reference 746415f3ffe update ChangeLog (tag: v0.6.0-rc3) 7473c6d1224 update NEWS 748ee4a4141 update AUTHORS 74932ed856f Fix "all|no frames are keyframes" settings. 7501c3190b6 Merge "Fix "all|no frames are keyframes" settings." 751f4dc56fd disable GradientUnfilter_NEON 7524f3e3bbd disable GradientUnfilter_NEON 7532dc0bdca Fix "all|no frames are keyframes" settings. 7540d8e0588 img2webp: treat -loop as a no-op w/single images 755b0450139 ReadImage(): restore size reporting 7560ad3b4ef update ChangeLog (tag: v0.6.0-rc2) 7576451709e img2webp,get_disto: fix image decode w/WIC builds 75892504d21 get_disto: make ReadPicture() return a bool 759c3e4b3a9 update NEWS 7603363eb6d man/img2webp.1: fix formatting warning 7614d1312f2 update NEWS 76236c42ea4 bump version to 0.6.0 763bb498a51 update AUTHORS 76484cef16f Makefile.vc: fix CFG=debug-dynamic build 765919f9e2f Merge "add .rc files for windows dll versioning" 766f1ae8af4 Merge ".gitignore: add img2webp" 7674689ce16 cwebp: add a -sharp_yuv option for 'sharp' RGB->YUV conversion 76879bf46f1 rename the pretentious SmartYUV into SharpYUV 769eb1dc89a silently expose use_delta_palette in the WebPConfig API 770c85b0dde .gitignore: add img2webp 77143d3f01a add .rc files for windows dll versioning 772668e1dd4 src/{dec,enc,utils}: give filenames a unique suffix 7730e6b7f33 Merge "iosbuild.sh: only add required headers to framework" 77429ed6f9a iosbuild.sh: only add required headers to framework 77571c53f1a NEON: speed-up strong filtering 77673f567ea Merge "get_disto: remove redundant reader check" 7779e14276f Merge "makefiles: prune get_disto & webp_quality deps" 77899965bac Merge "Makefile.vc: add get_disto.exe, webp_quality.exe" 779d4912238 get_disto: remove redundant reader check 780ea482409 makefiles: prune get_disto & webp_quality deps 7812ede5a19 Makefile.vc: add get_disto.exe, webp_quality.exe 782a345068a ARM: speed up bitreader by avoiding tables 7831dc82a6b Merge "introduce a generic GetCoeffs() function pointer" 7848074b89e introduce a generic GetCoeffs() function pointer 785749a45a5 Merge "NEON: implement alpha-filters (horizontal/vertical/gradient)" 78674c053b5 Merge "NEON: fix overflow in SSE NxN calculation" 7870a3aeff7 Merge "dsp: WebPExtractGreen function for alpha decompression" 7881de931c6 NEON: implement alpha-filters (horizontal/vertical/gradient) 7899b3aca40 NEON: fix overflow in SSE NxN calculation 7901c07a3c6 dsp: WebPExtractGreen function for alpha decompression 7919ed5e3e5 use pointers for WebPRescaler's in WebPDecParams 792db013a8d Merge "ARM: don't use USE_GENERIC_TREE" 793fcd4784d use a 8b table for C-version for clz() 794fbb5c473 ARM: don't use USE_GENERIC_TREE 7958fda5612 Merge "add a kSlowSSSE3 feature for CPUInfo" 79686bbd245 add a kSlowSSSE3 feature for CPUInfo 7977c2779e9 Get code to fully compile in C++. 798250c3586 Merge "When compiling as C++, avoid narrowing warnings." 799c0648ac2 When compiling as C++, avoid narrowing warnings. 8000d55f60c 40% faster ApplyAlphaMultiply_SSE2 80149d0280d NEON: implement several alpha-processing functions 80248b1e85f SSE2: 15% faster alpha-processing functions 803e3b8abbc fix warning from static analysis. 80428fe054e SSE2: 30% faster ApplyAlphaMultiply() 805f44acd25 Merge "Properly compute the optimal color cache size." 806527844fe Properly compute the optimal color cache size. 807be0ef639 fix a comment typo 8088874b162 Fix a non-deterministic color cache size computation. 809d712e20d Do not allow a color cache size bigger than the number of colors. 810ecff04f6 re-introduce some comments in Huffman Cost. 811259e9828 replace 'ptr + y * stride' by 'ptr += stride' 81200b08c88 Merge "NEON: 5% faster conversion to RGB565 and RGBA4444" 8130e7f4447 Merge "NEON: faster fancy upsampling" 814b016cb91 NEON: faster fancy upsampling 8151cb63801 Call the C function to finish off lossless SSE loops only when necessary. 816875fafc1 Implement BundleColorMap in SSE2. 8173674d49e Merge "remove Clang warnings with unused arch arguments." 818f04eb376 Merge tag 'v0.5.2' 819341d711c NEON: 5% faster conversion to RGB565 and RGBA4444 820abb54827 remove Clang warnings with unused arch arguments. 821ece9684f update ChangeLog (tag: v0.5.2-rc2, tag: v0.5.2, origin/0.5.2) 822aa7744ca anim_util: quiet implicit conv warnings in 32-bit 823d9120271 jpegdec: correct ContextFill signature 82424eb3940 Remove some errors when compiling the code as C++. 825a4a8e5f3 vwebp: clear canvas during resize w/o animation 82667c25ad5 vwebp: clear canvas during resize w/o animation 827a4bbe4b3 fix indentation 82831ca2a80 tiffdec: restore libtiff 3.9.x compatibility 829b2f77b57 update NEWS 8305ab6d9de AnimEncoder: avoid freeing uninitialized memory pointer. 831f29bf582 WebPAnimEncoder: If 'minimize_size' and 'allow_mixed' on, try lossy + lossless. 8323ebe1c00 AnimEncoder: avoid freeing uninitialized memory pointer. 833df780e0e fix a potential overflow with MALLOC_LIMIT 83458fc5078 Merge "PredictorSub: implement fully-SSE2 version" 8359cc42167 PredictorSub: implement fully-SSE2 version 8360aa1f35c remove dependency of imageio/ to stopwatch.h 837cb9ec84b Merge "remove the dependency to stop_watch.[ch] in imageio" 838dc0c01fb Merge "anim_util: quiet implicit conv warnings in 32-bit" 839827d3c50 Merge "fix a potential overflow with MALLOC_LIMIT" 8401e2e25b0 anim_util: quiet implicit conv warnings in 32-bit 841218460cd bump version to 0.5.2 842de7d654d update AUTHORS & .mailmap 843273367c1 Merge "dsp/lossless.c,cosmetics: fix indent" 84476bbcf2e fix a potential overflow with MALLOC_LIMIT 8458ac1abfe Merge "jpegdec: correct ContextFill signature" 846cb215aed remove the dependency to stop_watch.[ch] in imageio 8472423017a dsp/lossless.c,cosmetics: fix indent 84874a12b10 iosbuild.sh: add WebPDecoder.framework + encoder 849a9cc7621 Merge "iosbuild.sh: add WebPDecoder.framework + encoder" 850fbba5bc2 optimize predictor #1 in plain-C For some reason, gcc has hard time inlining this one... 8519ae0b3f6 Merge "SSE2: slightly (~2%) faster Predictor #1" 852c1f97bd7 SSE2: slightly (~2%) faster Predictor #1 853ea664b89 SSE2: 10% faster Predictor #11 854be7dcc08 AnimEncoder: Correctly skip a frame when sub-rectangle is empty. 85540885830 Fix assertions in WebPRescalerExportRow() 8561d5046d1 iosbuild.sh: add WebPDecoder.framework + encoder 857cec72014 jpegdec: correct ContextFill signature 8588f38c72e fix a typo in WebPPictureYUVAToARGB's doc 85933ca93f9 systematically call WebPDemuxReleaseIterator() on dec->prev_iter_ 86076e19073 doc: use two's complement explicitly for uint8->int8 conversion 861f91ba963 Anim_encoder: correctly handle enc->prev_candidate_undecided_ 86225d74e65 WebPPictureDistortion(): free() -> WebPSafeFree() 86303f1c008 mux/Makefile.am: add missing -lm 86458410cd6 fix bug in RefineUsingDistortion() 865e168af8c fix filtering auto-adjustment 866ed9dec41 fix doc and code snippet for WebPINewDecoder() doc 8673c49178f prevent 32b overflow for very large canvas_width / height 8689595f290 fix anim_util.c compilation when HAVE_GIF is not defined. 8697ec9552c Make gif transparent color to be transparent black 870b3fb8bb6 slightly faster Predictor #11 in NEON 8719871335f Add a CMake option for WEBP_SWAP_16BIT_CSP. 8720ae32226 Fix missing cpu-features for Android. 873ab4c8056 cpu.cmake: improve webp_check_compiler_flag output 874eec5fa3a Provide support for CMake on Android studio 2.2. 875004d5690 Split the main CMake file. 8764fe5d588 Android.mk: use -fvisibility=hidden 877bd63a31a vwebp: ensure setenv() is available in stdlib.h 878363a5681 vwebp: handle window resizing properly 879a0d2753f lower WEBP_MAX_ALLOCABLE_MEMORY default 88031fe11a5 fix infinite loop in case of PARTITION0 overflow 881532215dd Change the rule of picking UV mode in MBAnalyzeBestUVMode() 8829c75dbd3 cwebp.1: improve some grammar 883af2e05cb vwebp: Clear previous frame when a key triggers a redraw 88426ffa296 Add descriptions of default configuration in help info. 8857416280d Fix an unsigned integer overflow error in enc/cost.h 88613cf1d2e Do token recording and counting in a single loop 887eb9a4b97 Reset segment id if we decide not to update segment map 88842ebe3b7 configure: fix NEON flag detection under gcc 6 88976ebbfff NEON: implement predictor #13 89095b12a08 Merge "Revert Average3 and Average4" 89154ab2e75 Revert Average3 and Average4 892fe12330c 3-5% faster Predictor #5, #6, #7 and #10 for NEON 893fbfb3bef ~2% faster predictor #10 for NEON 894d4b7d801 lossless_sse2: use the local functions 895a5e3b225 Lossless decoder SSE2 improvements. 89658a1f124 ~2% faster predictor #12 in NEON. 897906c3b63 Merge "Implement lossless transforms in NEON." 898d23abe4e Implement lossless transforms in NEON. 8992e6cb6f3 Give more flexibility to the predictor generating macro. 90028e0bb70 Merge "Fix race condition in multi-threading initialization." 90164704530 Fix race condition in multi-threading initialization. 902bded7848 img2webp: fix default -lossless value and use pic.argb=1 9030e61a513 Merge "img2webp: convert a sequence of images to an animated webp" 9041cc79e92 AnimEncoder: Correctly skip a frame when sub-rectangle is empty. 90503f40955 img2webp: convert a sequence of images to an animated webp 906ea72cd60 add missing 'extern' keyword for predictor dcl 90767879e6d SSE implementation of decoding predictors. 90834aee990 Merge "vwebp: make 'd' key toggle the debugging of fragments" 909a41296ae Fix potentially uninitialized value. 910c85adb33 vwebp: make 'd' key toggle the debugging of fragments 9114239a148 Make the lossless predictors work on a batch of pixels. 912bc18ebad fix extra 'const's in signatures 91371e2f5ca Remove memcpy in lossless decoding. 9147474d46e Do not use a register array in SSE. 91567748b41 Improve latency of FTransform2. 91616951b19 Merge "Provide an SSE implementation of ConvertBGRAToRGB" 9176540cd0e Provide an SSE implementation of ConvertBGRAToRGB 918de568abf Android.mk: use -fvisibility=hidden 9193c2a61b0 remove some unneeded casts 9209ac063c3 add dsp functions for SmartYUV 92122efabdd Merge "smart_yuv: switch to planar instead of packed r/g/b processing" 9221d6e7bf3 smart_yuv: switch to planar instead of packed r/g/b processing 9230a3838ca fix bug in RefineUsingDistortion() 924c0699515 webpmux -duration: set default 'end' value equal to 'start' 92583cbfa09 Import: use relative pointer offsets 926a1ade40e PreprocessARGB: use relative pointer offsets 927fd4d090f ConvertWRGBToYUV: use relative pointer offsets 9289daad459 ImportYUVAFromRGBA: use relative pointer offsets 929f90c60d1 Merge "add a "-duration duration,start,end" option to webpmux" 9303f182d36 add a "-duration duration,start,end" option to webpmux 931342e15f0 Import: use relative pointer offsets 9321147ab4e PreprocessARGB: use relative pointer offsets 933e4cd4daf fix filtering auto-adjustment 934e7152856 fix doc and code snippet for WebPINewDecoder() doc 935de9fa507 ConvertWRGBToYUV: use relative pointer offsets 936deb1b831 ImportYUVAFromRGBA: use relative pointer offsets 937c284780f imageio_util: add ImgIoUtilCheckSizeArgumentsOverflow 938e375080d gifdec,Remap: avoid out of bounds colormap read 939c222a053 additional fix for stride type as size_t 940bb233617 fix potential overflow when width * height * 4 >= (1<<32) 941883d41fb gif2webp: fix crash with NULL extension data 942cac9a36a gifdec,Remap: avoid out of bounds colormap read 9434595e01f Revert "gifdec,Remap: avoid out of bounds colormap read" 944fb52d443 gifdec: make some constants unsigned 945f048d38d gifdec,Remap: avoid out of bounds colormap read 94631b1e343 fix SSIM metric ... by ignoring too-dark area 9472f51b614 introduce WebPPlaneDistortion to compute plane distortion 9480104d730 configure: fix NEON flag detection under gcc 6 949265abbe9 Merge "additional fix for stride type as size_t" 950f7601aa6 Merge "Introduce a generic WebPGetImageReader(type) function" 951ce873320 Introduce a generic WebPGetImageReader(type) function 9522a2773ea imageio/*dec,Read*: add input parameter checks 9539f5c8eca additional fix for stride type as size_t 9544eb5df28 remove unused stride fields from VP8Iterator 95511bc423a MIN_LENGTH cleanups. 956273d035a Merge "fix a typo in WebPPictureYUVAToARGB's doc" 9574db82a17 Merge "fix potential overflow when width * height * 4 >= (1<<32)" 958e2affacc fix potential overflow when width * height * 4 >= (1<<32) 959dc789ada fix a typo in WebPPictureYUVAToARGB's doc 960539f5a68 Fix non-included header in config.c. 961aaf2a6a6 systematically call WebPDemuxReleaseIterator() on dec->prev_iter_ 96220ef9915 Merge "imageio_util: add ImgIoUtilCheckSizeArgumentsOverflow" 963bc86b7a8 imageio_util: add ImgIoUtilCheckSizeArgumentsOverflow 964806f6279 gif2webp: fix crash with NULL extension data 96568ae5b67 Add libwebp/src/mux/animi.h 96628ce3043 Remove some errors when compiling the code as C++. 967b34abcb8 Favor keeping the areas locally similar in spatial prediction mode selection 968ba843a92 fix some SSIM calculations 96951b71fd2 Merge "vwebp: ensure setenv() is available in stdlib.h" 970fb01743a get_disto: fix the r/g/b order for luma calculation 971bfab8947 vwebp: ensure setenv() is available in stdlib.h 9729310d192 vwebp: handle window resizing properly 973f79450ca Speedup ApplyMap. 974cfdda7c6 Merge "prevent 32b overflow for very large canvas_width / height" 975e36396ba Merge "get_disto: new option to compute SSIM map and convert to gray" 97618a9a0ab Add an API to import a color-mapped image. 97730d43706 Speed-up Combined entropy for palettized histograms. 97836aa087b get_disto: new option to compute SSIM map and convert to gray 97986a84b35 2x faster SSE2 implementation of SSIMGet 980b8384b53 lower WEBP_MAX_ALLOCABLE_MEMORY default 9811c364400 prevent 32b overflow for very large canvas_width / height 982eee0cce1 Merge "Small LZ77 speedups." 9835f1caf29 Small LZ77 speedups. 9841effde7b fix anim_util.c compilation when HAVE_GIF is not defined. 985a2fe9bf4 Speedup TrellisQuantizeBlock(). 986573cce27 smartYUV improvements 98721e7537a fix infinite loop in case of PARTITION0 overflow 988053a1565 Merge "Change the rule of picking UV mode in MBAnalyzeBestUVMode()" 9891377ac2e Change the rule of picking UV mode in MBAnalyzeBestUVMode() 9907c1fb7d0 fix uint32_t initialization (0. -> 0) 991bfff0bf3 speed-up SSIM calculation 99264577de8 De-VP8L-ize GetEntropUnrefinedHelper. 993a7be7328 Merge "refactor the PSNR / SSIM calculation code" 99450c3d7da refactor the PSNR / SSIM calculation code 995d6228aed indentation fix after I7055d3ee3bd7ed5e78e94ae82cb858fa7db3ddc0 996dd538b19 Remove unused declaration. 9976cc48b17 Move some lossless logic out of dsp. 99878363e9e Merge "Remove a redundant call to InitLeft() in VP8IteratorReset()" 999ffd01929 Refactor VP8IteratorNext(). 1000c4f6d9c9 Remove a redundant call to InitLeft() in VP8IteratorReset() 1001c27d8210 Merge "smartYUV: simplify main loop" 100207795296 smartYUV: simplify main loop 1003c9b45863 Split off common lossless dsp inline functions. 1004490ae5b1 smartYUV: improve initial state for faster convergence 1005894232be smartYUV: fix and simplify the over-zealous stop criterion 10068de08483 Remove unused code in webpi.h 100741cab7fe imageio/Android.mk: correct imagedec dependencies 100882c91c70 Merge "libimageenc.a: extract image-saving code from dwebp" 1009af1ad3e2 libimageenc.a: extract image-saving code from dwebp 1010dd7309e3 Merge "doc: use two's complement explicitly for uint8->int8 conversion" 10116105777e Merge "add gif2webp to CMake" 101213ae011e doc: use two's complement explicitly for uint8->int8 conversion 10134bda0cfb add gif2webp to CMake 10146029c7fe Merge "remove mention of fragment, frgm, FRGM, etc." 1015545c147f remove mention of fragment, frgm, FRGM, etc. 10165b46f7fc cwebp.1: improve some grammar 10179e478f80 dec/vp8l.c: add assertions in EmitRescaledRowsRGBA/YUVA 101843bd8958 Make gif transparent color to be transparent black 10190887fc2d Merge "get_disto: add a '-o file' option to save a diff map" 10200de48e18 get_disto: add a '-o file' option to save a diff map 10210a57ad0d cosmetics: WebPSafeAlloc -> WebPSafeMalloc 10220a4699bc Merge "WebPPictureDistortion(): free() -> WebPSafeFree()" 102329fedbf5 Anim_encoder: correctly handle enc->prev_candidate_undecided_ 102432dead4e WebPPictureDistortion(): free() -> WebPSafeFree() 102585cd5d06 Smarter LZ77 for uniform regions. 10266585075f Change PixelsAreSimilar() to handle black pixels correctly. 1027c0a27fd2 vwebp: Clear previous frame when a key triggers a redraw 102857a5e3b6 webp_quality should return '0' in case of success. 10297f1b897b Faster stochastic histogram merging. 103048c810b8 Merge "remove WEBP_FORCE_ALIGNED and use memcpy() instead." 10313884972e remove WEBP_FORCE_ALIGNED and use memcpy() instead. 1032485cac1a switch libimagedec.a and libimageio_util.a to avoid undefined symbol 1033005e15b1 Merge "{extras,mux}/Makefile.am: add missing -lm" 10346ab496ed fix some 'unsigned integer overflow' warnings in ubsan 10358a4ebc6a Revert "fix 'unsigned integer overflow' warnings in ubsan" 10369d4f209f Merge changes I25711dd5,I43188fab 1037e44f5248 fix 'unsigned integer overflow' warnings in ubsan 103827b5d991 Fix assertions in WebPRescalerExportRow() 103974f6f9e7 Add descriptions of default configuration in help info. 1040aaf2530c {extras,mux}/Makefile.am: add missing -lm 10411269dc7c Refactor VP8LColorCacheContains() 104240872fb2 dec_neon,NeedsHev: micro optimization 10437b54e26b Add a CMake option for WEBP_SWAP_16BIT_CSP. 1044d2223d8d Fix missing cpu-features for Android. 1045bf16a4b4 Merge "cpu.cmake: improve webp_check_compiler_flag output" 1046ee1057e3 cpu.cmake: improve webp_check_compiler_flag output 1047b551e587 cosmetics: add {}s on continued control statements 1048d2e4484e dsp/Makefile.am: put msa source in correct lib 1049c7f66c82 Merge "utils/thread.c,cosmetics: join a few lines" 105098d8f295 Merge "examples/Makefile.am,cosmetics: sort binary targets" 105139f4ffbc utils/thread.c,cosmetics: join a few lines 1052a86ce2b1 Merge "extras/Makefile.am: don't install libwebpextras" 10536fa9fe24 extras/Makefile.am: don't install libwebpextras 10540b2c58a9 Fix an unsigned integer overflow error in enc/cost.h 1055d7ce4a2e examples/Makefile.am,cosmetics: sort binary targets 1056386e4ba2 Reset segment id if we decide not to update segment map 10577b87e848 Merge "Add MSA optimized YUV to RGB upsampling functions" 1058d3ddacb6 Add MSA optimized YUV to RGB upsampling functions 1059eb98d8d8 webp_quality: detect lossless format and features 1060ebee57f4 move imageio/example_util.[hc] (back to) examples/ 106199542bbf webpdec: s/ExUtil// 1062da573cf4 imageio_util: s/ExUtil/ImgIoUtil/ 1063bdda5bd4 split example_util.h 106415ed462b .gitignore: add extras/{get_disto,webp_quality} 10657be57489 Merge "VP8EstimateQuality(): roughty estimate webp bitstream quality factor" 106657020525 Makefile.vc: add missing imageio target 1067e8ab6a82 VP8EstimateQuality(): roughty estimate webp bitstream quality factor 1068fee7b3d6 Merge "'extras/get_disto' example: compute PSNR between two files" 10691e7d4401 'extras/get_disto' example: compute PSNR between two files 10704cecab63 pngdec.c,jpegdec.[hc]: remove unnecessary includes 1071259f0434 makefile.unix: normalize image decode lib name 1072ed34c39b fix: examples/libexample_dec.a => imageio/libexample_dec.a 107333d8d0d4 Merge "move examples/{example_util,image_dec} to imageio/" 1074c960b82e Merge "extras.h: correct include guard" 1075fe3cd28a Merge ".gitignore: add .gradle, /build" 107645fbeba5 Merge "Do token recording and counting in a single loop" 10774f33c820 .gitignore: add .gradle, /build 1078c379b55a move examples/{example_util,image_dec} to imageio/ 10795108d9aa extras.h: correct include guard 1080ad497fbc move src/extras to the top-level 10810c0fb832 Do token recording and counting in a single loop 10829ac74f92 Add MSA optimized rescaling functions 1083cb19dbc1 Add MSA optimized color transform functions 10843f4042b5 WebPAnimEncoder: If 'minimize_size' and 'allow_mixed' on, try lossy + lossless. 10855e2eb89e cosmetics,dsp/*msa.c: associate '*' with the type 10865b60db5c FastMBAnalyze() for quick i16/i4 decision 1087567e6977 Add MSA optimized CollectHistogram function 1088c54ab8dd Add MSA optimized quantization functions 1089ec6f68c5 Merge "Remove QuantizeBlockWHT() in enc.c" 10902a5c417c Apply the RLE heuristic to LZ77. 109191b59e88 Remove QuantizeBlockWHT() in enc.c 1092fe572737 Add MSA optimized SSE functions 10936b53ca87 cosmetics,(dec|enc)_sse2.c: fix indent 1094b15d00d9 Merge "Add MSA optimized encoder IntraChromaPreds function" 1095afe3cec8 Add MSA optimized encoder IntraChromaPreds function 1096fc8cad9f reduce the number of malloc/free cycles in huffman.c 10977b4b05e0 Add MSA optimized encoder Intra16Preds function 1098c18787a0 Add MSA optimized encoder Intra4Preds function 1099479d1908 webpmux: Also print compression info per frame. 1100a80e8cfd Provide support for CMake on Android studio 2.2. 11016c628410 Split the main CMake file. 1102bbb6ecd9 Merge "Add MSA optimized distortion functions" 11037915396f Add MSA optimized distortion functions 1104652e944f Merge "build.gradle: remove tab" 1105c0991a14 io,EmitRescaledAlphaYUV: factor out a common expr 110648bf5ed1 build.gradle: remove tab 1107bfef6c9f Merge tag 'v0.5.1' 11083d97bb75 update ChangeLog (tag: v0.5.1, origin/0.5.1) 1109deb54d91 Clarify the expected 'config' lifespan in WebPIDecode() 1110435308e0 Add MSA optimized encoder transform functions 1111dce64bfa Add MSA optimized alpha filter functions 1112429120d0 Add MSA optimized color transform functions 1113c7e2d245 update ChangeLog (tag: v0.5.1-rc5) 111455b2fede normalize the macros' "do {...} while (0)" constructs 1115701c772e Add MSA optimized colorspace conversion functions 1116c7eb06f7 Fix corner case in CostManagerInit. 1117f918cb10 fix rescaling bug: alpha plane wasn't filled with 0xff 1118ab7937a5 gif2webp: normalize the number of .'s in the help message 11193cdec847 vwebp: normalize the number of .'s in the help message 1120bdf6241e cwebp: normalize the number of .'s in the help message 112106a38c7b fix rescaling bug: alpha plane wasn't filled with 0xff 1122319e37be Improve lossless compression. 11236a197937 Add MSA optimized intra pred chroma functions 1124447adbce 'our bug tracker' -> 'the bug tracker' 112597b9e644 normalize the number of .'s in the help message 1126293d786f Added MSA optimized intra prediction 16x16 functions 11270afa0ce2 Added MSA optimized intra prediction 4x4 functions 1128a6621bac Added MSA optimized simple edge filtering functions 1129bb50bf42 pngdec,ReadFunc: throw an error on invalid read 113038063af1 decode.h,WebPGetInfo: normalize function comment 11311ebf193c Added MSA optimized chroma edge filtering functions 11329ad2352d Merge "Added MSA optimized edge filtering functions" 113360751096 Added MSA optimized edge filtering functions 11349e8e1b7b Inline GetResidual for speed. 11357d58d1b7 Speed-up uniform-region processing. 11368ec7032b simplify HistogramCombineEntropyBin() 113723e29cb1 Merge "Fix a boundary case in BackwardReferencesHashChainDistanceOnly." into 0.5.1 1138472a049b remove bin_map[] allocation altogether 11390bb23b2c free -> WebPSafeFree() 1140a977b4b5 Merge "rewrite the bin_map clustering to use less memory" 11413591ba66 rewrite the bin_map clustering to use less memory 1142e6ac450c utils.[hc]: s/MAX_COLOR_COUNT/MAX_PALETTE_SIZE/ 1143e7b91772 Merge "DecodeImageData(): change the incorrect assert" into 0.5.1 11442abfa54f DecodeImageData(): change the incorrect assert 11455a48fcd8 Merge "configure: test for -Wfloat-conversion" 11460174d18d Fix a boundary case in BackwardReferencesHashChainDistanceOnly. 11476a9c262a Merge "Added MSA optimized transform functions" 1148cfbcc5ec Make sure to consider small distances in LZ77. 11495e60c42a Added MSA optimized transform functions 11503dc28d76 configure: test for -Wfloat-conversion 1151f2a0946a add some asserts to delimit the perimeter of CostManager's operation 11529a583c66 fix invalid-write bug for alpha-decoding 1153f66512db make gradlew executable 11546fda58f1 backward_references: quiet double->int warning 1155a48cc9d2 Merge "Fix a compression regression for images with long uniform regions." into 0.5.1 1156cc2720c1 Merge "Revert an LZ77 boundary constant." into 0.5.1 1157059aab4f Fix a compression regression for images with long uniform regions. 1158b0c7e49e Check more backward matches with higher quality. 1159a3611513 Revert an LZ77 boundary constant. 11608190374c README: fix typo 11617551db44 update NEWS 11620fb2269c bump version to 0.5.1 1163f4537610 update AUTHORS & .mailmap 11643259571e Refactor GetColorPalette method. 11651df5e260 avoid using tmp histogram in PreparePair() 11667685123a fix comment typos 1167a246b921 Speedup backward references. 116876d73f18 Merge "CostManager: introduce a free-list of ~10 intervals" 1169eab39d81 CostManager: introduce a free-list of ~10 intervals 11704c59aac0 Merge "mips msa webp configuration" 1171043c33f1 Merge "Improve speed and compression in backward reference for lossless." 117271be9b8c Merge "clarify variable names in HistogramRemap()" 11730ba7fd70 Improve speed and compression in backward reference for lossless. 11740481d42a CostManager: cache one interval and re-use it when possible 117541b7e6b5 Merge "histogram: fix bin calculation" 117696c3d624 histogram: fix bin calculation 1177fe9e31ef clarify variable names in HistogramRemap() 1178ce3c8247 disable near-lossless quantization if palette is used 1179e11da081 mips msa webp configuration 11805f8f998d mux: Presence of unknown chunks should trigger VP8X chunk output. 1181cadec0b1 Merge "Sync mips32 and dsp_r2 YUV->RGB code with C verison" 1182d9637758 Compute the hash chain once and for all for lossless compression. 118350a48665 Sync mips32 and dsp_r2 YUV->RGB code with C verison 1184eee788e2 Merge "introduce a common signature for all image reader function" 1185d77b877c introduce a common signature for all image reader function 1186ca8d9519 remove some obsolete TODOs 1187ae2a7222 collect all decoding utilities from examples/ in libexampledec.a 11880b8ae852 Merge "Move DitherCombine8x8 to dsp/dec.c" 118977cad885 Merge "ReadWebP: avoid conversion to ARGB if final format is YUVA" 1190ab8d6698 ReadWebP: avoid conversion to ARGB if final format is YUVA 1191f8b7ce9e Merge "test pointer to NULL explicitly" 11925df6f214 test pointer to NULL explicitly 119377f21c9c Move DitherCombine8x8 to dsp/dec.c 1194c9e6d865 Add gradle support 1195c65f41e8 Revert "Add gradle support" 1196bf731ede Add gradle support 119708333b85 WebPAnimEncoder: Detect when canvas is modified, restore only when needed. 11980209d7e6 Merge "speed-up MapToPalette() with binary search" 1199fdd29a3d speed-up MapToPalette() with binary search 1200cf4a651b Revert "Refactor GetColorPalette method." 12010a27aca3 Merge changes Idfa8ce83,I19adc9c4 1202f25c4406 WebPAnimEncoder: Restore original canvas between multiple encodes. 1203169004b1 Refactor GetColorPalette method. 1204576362ab VP8LDoFillBitWindow: support big-endian in fast path 1205ac49e4e4 bit_reader.c: s/VP8L_USE_UNALIGNED_LOAD/VP8L_USE_FAST_LOAD/ 1206d39ceb58 VP8LDoFillBitWindow: remove stale TODO 12072ec2de14 Merge "Speed-up BackwardReferencesHashChainDistanceOnly." 12083e023c17 Speed-up BackwardReferencesHashChainDistanceOnly. 1209f2e1efbe Improve near lossless compression when a prediction filter is used. 1210e15afbce dsp.h: fix ubsan macro name 1211e53c9ccb dsp.h: add WEBP_UBSAN_IGNORE_UNSIGNED_OVERFLOW 1212af81fdb7 utils.h: quiet -fsanitize=undefined warnings 1213ea0be354 dsp.h: remove utils.h include 1214cd276aec utils/*.c: ../utils/utils.h -> ./utils.h 1215c8927131 utils/Makefile.am: add some missing headers 1216ea24e026 Merge "dsp.h: add WEBP_UBSAN_IGNORE_UNDEF" 1217369e264e dsp.h: add WEBP_UBSAN_IGNORE_UNDEF 12180d020a78 Merge "add runtime NEON detection" 12195ee2136a Merge "add VP8LAddPixels() to lossless.h" 122047435a61 add VP8LAddPixels() to lossless.h 12218fa6ac68 remove two ubsan warnings 122274fb56fb add runtime NEON detection 12234154a839 MIPS update to new Unfilter API 1224c80b9fc8 Merge "cherry-pick decoder fix for 64-bit android devices" 12256235147e cherry-pick decoder fix for 64-bit android devices 1226d41b8c43 configure: test for -Wformat-* w/-Wformat present 12275f95589f Fix WEBP_ALIGN in case the argument is a pointer to a type larger than a byte. 12282309fd5c replace num_parts_ by num_parts_minus_one_ (unsigned) 12299629f4bc SimplifySegments: quiet -Warray-bounds warning 1230de47492e Merge "update the Unfilter API in dsp to process one row independently" 12312102ccd0 update the Unfilter API in dsp to process one row independently 1232e3912d56 WebPAnimEncoder: Restore canvas before evaluating blending possibility. 12336e12e1e3 WebPAnimEncoder: Fix for single-frame optimization. 1234602f344a Merge changes I1d03acac,Ifcb64219 123595ecccf6 only apply color-mapping for alpha on the cropped area 123647dd0708 anim_diff: Add an experimental option for max inter-frame diff. 1237aa809cfe only allocate alpha_plane_ up to crop_bottom row 123831f2b8d8 WebPAnimEncoder: FlattenSimilarPixels(): look for similar 1239774dfbdc perform alpha filtering within the decoding loop 1240a4cae68d lossless decoding: only process decoded row up to last_row 1241238cdcdb Only call WebPDequantizeLevels() on cropped area 1242cf6c713a alpha: preparatory cleanup 1243b95ac0a2 Merge "VP8GetHeaders(): initialize VP8Io with sane value for crop/scale dimensions" 124489231394 VP8GetHeaders(): initialize VP8Io with sane value for crop/scale dimensions 12455828e199 use_8b_decode -> use_8b_decode_ 12468dca0247 fix bug in alpha.c that was triggering a memory error in incremental mode 12479a950c53 WebPAnimEncoder: Disable filtering when blending is used with lossy encoding. 1248eb423903 WebPAnimEncoder: choose max diff for framerect based on quality. 1249ff0a94be WebPAnimEncoder lossy: ignore small pixel differences for frame rectangles. 1250f8040084 gif2webp: Remove the 'prev_to_prev_canvas' buffer. 12516d8c07d3 Merge "WebPDequantizeLevels(): use stride in CountLevels()" 1252d96fe5e0 WebPDequantizeLevels(): use stride in CountLevels() 1253ec1b2407 WebPPictureImport*: check output pointer 1254c0768769 Merge "Revert "Re-enable encoding of alpha plane with color cache for next release."" 125541f14bcb WebPPictureImport*: check src pointer 125664eed387 Pass stride parameter to WebPDequantizeLevels() 125797934e24 Revert "Re-enable encoding of alpha plane with color cache for next release." 1258e88c4ca0 fix -m 2 mode-cost evaluation (causing partition0 overflow) 12594562e83d Merge "add extra meaning to WebPDecBuffer::is_external_memory" 1260abdb109f add extra meaning to WebPDecBuffer::is_external_memory 1261875aec70 enc_neon,cosmetics: break long comment 126271e856cf GetMBSSIM,cosmetics: fix alignment 1263a90edffb fix missing 'extern' for SSIM function in dsp/ 1264423ecaf4 move some SSIM-accumulation function for dsp/ 1265f08e6624 Merge "Fix FindClosestDiscretized in near lossless:" 12660d40cc5e enc_neon,Disto4x4: remove an unnecessary transpose 1267e8feb20e Fix FindClosestDiscretized in near lossless: 126882006430 anim_util: quiet static analysis warning 1269a6f23c49 Merge "AnimEncoder: Support progress hook and user data." 1270a5193774 Merge "Near lossless feature: fix some comments." 1271da98d31c AnimEncoder: Support progress hook and user data. 127233357131 Near lossless feature: fix some comments. 12730beed01a cosmetics: fix indent after 2f5e898 12746753f35c Merge "FTransformWHT optimization." 12756583bb1a Improve SSE4.1 implementation of TTransform. 12767561d0c3 FTransformWHT optimization. 12777ccdb734 fix indentation after patch #328220 12786ec0d2a9 clarify the logic of the error path when decoding fails. 12798aa352b2 Merge "Remove an unnecessary transposition in TTransform." 1280db860884 Merge "remove useless #include" 12819960c316 Remove an unnecessary transposition in TTransform. 12826e36b511 Small speedup in FTransform. 12839dbd4aad Merge "fix C and SIMD flags completion." 1284e60853ea Add missing common_sse2.h file to makefile.unix 1285696eb2b0 fix C and SIMD flags completion. 12862b4fe33e Merge "fix multiple allocation for transform buffer" 12872f5e8986 fix multiple allocation for transform buffer 1288bf2b4f11 Regroup common SSE code + optimization. 12894ed650a1 force "-pass 6" if -psnr or -size is used but -pass isn't. 12903ef1ce98 yuv_sse2: fix -Wconstant-conversion warning 1291a7a03e9f Merge changes I4852d18f,I51ccb85d 12925e122bd6 gif2webp: set enc_options.verbose = 0 w/-quiet 1293ab3c2583 anim_encode,DefaultEncoderOptions: init verbose 12948f0dee77 Merge "configure: fix builtin detection w/-Werror" 12954a7b85a9 cmake: fix builtin detection w/-Werror 1296b74657fb configure: fix builtin detection w/-Werror 12973661b980 Add a CMakeLists.txt 129875f4af4d remove useless #include 12996c1d7631 avoid Yoda style for comparison 13008ce975ac SSE optimization for vector mismatch. 13017db53831 Merge tag 'v0.5.0' 130237f04949 update ChangeLog (tag: v0.5.0-rc1, tag: v0.5.0, origin/0.5.0) 13037e7b6ccc faster rgb565/rgb4444/argb output 13044c7f565f update NEWS 13051f62b6b2 update AUTHORS 1306e224fdc8 update mailmap 130771100500 bump version to 0.5.0 1308230a685e README: update help text, repo link 1309d48e427b Merge "demux: accept raw bitstreams" 131099a01f4f Merge "Unify some entropy functions." 13114b025f10 Merge "configure: disable asserts by default" 131292cbddf8 Merge "fix PrintBlockInfo()" 1313ca509a33 Unify some entropy functions. 1314367bf903 fix PrintBlockInfo() 1315b0547ff0 move back common constants for lossless_enc*.c into the .h 1316fb4c7832 lossless: simpler alpha cleanup preprocessing 1317ba7f4b68 Merge "anim_diff: add brief description of options" 131847ddd5a4 Move some codec logic out of ./dsp . 1319b4106c44 anim_diff: add brief description of options 1320357f455d yuv_sse2: fix 32-bit visual studio build 1321b9d80fa4 configure: disable asserts by default 13227badd3da cosmetic fix: sizeof(type) -> sizeof(*var) 132380ce27d3 Speed up 24-bit packing / unpacking in YUV / RGB conversions. 132468eebcb0 remove a TODO about rotation 13252dee2966 remove few obsolete TODO about aligned loads in SSE2 1326e0c0bb34 remove TODO about unused ref_lf_delta[] 13279cf1cc2b remove few TODO: * 256 -> RD_DISTO_MULT * don't use TDisto for UV mode picking 132879189645 Merge changes from topic 'demux-fragment-cleanup' 132947399f92 demux: remove GetFragment() 1330d3cfb79a demux: remove dead fragment related TODO 1331ab714b8a demux, Frame: remove is_fragment_ field 1332b105921c yuv_sse2, cosmetics: fix indent 1333466c92e8 demux,WebPIterator: remove fragment_num/num_fragments 133411714ff1 demux: remove WebPDemuxSelectFragment 1335c0f7cc47 fix for bug #280: UMR in next->bits 1336578beeb8 Merge "enc/Makefile.am: add missing headers" 13371a819f00 makefile.unix: make visibility=hidden the default 1338d4f9c2ef enc/Makefile.am: add missing headers 1339846caff4 configure: check for -fvisibility=hidden 13403f3ea2c5 demux: accept raw bitstreams 1341d6dad5d0 man cwebp: add precision about exactness of the 'lossless' mode 134246bb1e34 Merge "gifdec: remove utils.h include" 13432b882e94 Merge "Makefile.vc: define WEBP_HAVE_GIF for gifdec.c" 1344892b9238 Merge "man/*, AUTHORS: clarify origin of the tool" 1345e5687a18 Merge "fix optimized build with -mcmodel=medium" 1346e56e6859 Makefile.vc: define WEBP_HAVE_GIF for gifdec.c 13474077d944 gifdec: remove utils.h include 1348b5e30dac man/*, AUTHORS: clarify origin of the tool 1349b275e598 fix optimized build with -mcmodel=medium 135064da45a9 cosmetics, cwebp: fix indent 1351038a060d Merge "add disto-based refinement for UV mode (if method = 1 or 2)" 13522835089d Provide an SSE2 implementation of CombinedShannonEntropy. 1353e6c93519 add disto-based refinement for UV mode (if method = 1 or 2) 135404507dc9 Merge "fix undefined behaviour during shift, using a cast" 1355793c5261 Merge "wicdec: add support for reading from stdin" 1356d3d16397 Optimize the heap usage in HistogramCombineGreedy. 1357202a710b fix undefined behaviour during shift, using a cast 135814d27a46 improve method #2 by merging DistoRefine() and SimpleQuantize() 1359cb1ce996 Merge "10% faster table-less SSE2/NEON version of YUV->RGB conversion" 1360ac761a37 10% faster table-less SSE2/NEON version of YUV->RGB conversion 136179fcf29a wicdec: add support for reading from stdin 1362015f173f Merge "cwebp: add support for stdin input" 1363a9947c32 cwebp: add support for stdin input 13647eb01ff3 Merge "Improved alpha cleanup for the webp encoder when prediction transform is used." 1365fb8c9106 Merge "introduce WebPMemToUint32 and WebPUint32ToMem for memory access" 1366bd91af20 Merge "bit_reader: remove aarch64 BITS TODO" 13676c702b81 Speed up hash chain initialization using memset. 13684c60f63c make ReadPNG and ReadJPEG take a filename instead of a FILE 1369464ed10f bit_reader: remove aarch64 BITS TODO 1370d478e589 Merge "configure: update issue tracker" 137169381113 Improved alpha cleanup for the webp encoder when prediction transform is used. 13722c08aac8 introduce WebPMemToUint32 and WebPUint32ToMem for memory access 1373010ca3d1 Fix FindMatchLength with non-aligned buffers. 1374a90e1e3f README: add prerequisites for an autoconf build 1375458f0866 configure: update issue tracker 137633914595 vwebp: work around the transparent background with GLUT bug 1377e4a7eed4 cosmetics: fix indent 137808375129 Merge "Make a separate case for low_effort in CopyImageWithPrediction" 1379aa2eb2d4 Merge "cosmetics: fix indent" 1380b7551e90 cosmetics: fix indent 13815bda52d4 Make a separate case for low_effort in CopyImageWithPrediction 138266fa598a Merge "configure: fix intrinsics build w/older gcc" 13835ae220be backward_references.c: Fixed compiler warning 13841556da09 Merge "configure: restore 2 warnings" 138571a17e58 configure: restore 2 warnings 13869eeabc07 configure: fix intrinsics build w/older gcc 1387363babe2 Merge "fix some warning about unaligned 32b reads" 1388a1411782 Optimization in hash chain comparison for 64 bit Arrays were compared 32 bits at a time, it is now done 64 bits at a time. Overall encoding speed-up is only of 0.2% on @skal's small PNG corpus. It is of 3% on my initial 1.3 Mp desktop screenshot image. 1389829bd141 Combine Huffman cost and bit entropy into one loop 1390a7a954c8 Merge "lossless: make prediction in encoder work per scanline" 139161b605b4 Merge "fix of undefined multiply (int32 overflow)" 1392239421c5 lossless: make prediction in encoder work per scanline 1393f5ca40e0 fix of undefined multiply (int32 overflow) 13945cd2ef4c Merge changes from topic 'win-threading-compat' 139576ce9187 Makefile.vc: enable WEBP_USE_THREAD for windows phone 1396d2afe974 thread: use CreateThread for windows phone 13970fd0e12b thread: use WaitForSingleObjectEx if available 139863fadc9f thread: use InitializeCriticalSectionEx if available 1399110ad583 thread: use native windows cond var if available 1400912c9fdf dec/webp: use GetLE(24|32) from utils 1401f1694481 utils/GetLE32: correct uint32 promotion 1402158763de Merge "always call WebPInitSamplers(), don't try to be smart" 14033770f3bb Merge "cleanup the YFIX/TFIX difference by removing some code and #define" 1404a40f60a9 Merge "3% speed improvement for lossless webp encoder for low effort mode:" 1405ed1c2bc6 always call WebPInitSamplers(), don't try to be smart 1406b8c44f1a 3% speed improvement for lossless webp encoder for low effort mode: 1407997e1038 cleanup the YFIX/TFIX difference by removing some code and #define 1408d73d1c8b Merge "Make discarding invisible RGB values (cleanup alpha) the default." 14091f9be97c Make discarding invisible RGB values (cleanup alpha) the default. 1410f240117b Make dwebp listen more to the -quiet flag 1411b37b0179 fix for issue #275: don't compare to out-of-bound pointers 141221735e06 speed-up trivial one-symbol decoding case for lossless 1413397863bd Refactor CopyPlane() and CopyPixels() methods: put them in utils. 14146ecd72f8 Re-enable encoding of alpha plane with color cache for next release. 14151f7148a4 Merge "remove unused fields from WebPDecoderOptions and WebPBitstreamFeatures" 14166ae395fa Merge "use ExReadFile() for ReadYUV()" 14178076a00e gitignore list: add anim_diff. 14181c1702d8 use ExReadFile() for ReadYUV() 1419775d3a37 remove unused fields from WebPDecoderOptions and WebPBitstreamFeatures 1420c13245c7 AnimEncoder: Add a GetError() method. 1421688b265d AnimDecoder API: Add a GetDemuxer() method. 14221aa4e3d6 WebPAnimDecoder: add an option to enable multi-threaded decoding. 14233584abca AnimDecoder: option to decode to common color modes. 1424afd5a62c Merge "mux.h does NOT need to include encode.h" 14258550d443 Merge "migrate anim_diff tool from C++ to C89" 142696201e50 migrate anim_diff tool from C++ to C89 1427945cfa3b mux.h does NOT need to include encode.h 14288da07e8d Merge "~2x faster SSE2 RGB24toY, BGR24toY, ARGBToY|UV" 1429bfd3fc02 ~2x faster SSE2 RGB24toY, BGR24toY, ARGBToY|UV 143002432427 man/cwebp.1, cosmetics: escape '-'s 143196f5b423 man/cwebp: group lossy-only options 143252fdbdfe extract some RGB24 to Luma conversion function from enc/ to dsp/ 1433ab8c2300 add missing \n 14348304179a sync NEWS with 0.4.4 14355bd04a08 sync versions with 0.4.4 14368f1fcc15 Merge "Move ARGB->YUV functions from dec/vp8l.c to dsp/yuv.c" 143725bf2ce5 fix some warning about unaligned 32b reads 1438922268fd s/TIFF/WebP 1439fa8927ef Move ARGB->YUV functions from dec/vp8l.c to dsp/yuv.c 14409b373598 Merge "for ReadXXXX() image-readers, use the value of pic->use_argb" 1441f7c507a5 Merge "remove unnecessary #include "yuv.h"" 14427861578b for ReadXXXX() image-readers, use the value of pic->use_argb 144314e4043b remove unnecessary #include "yuv.h" 1444469ba2cd vwebp: fix incorrect clipping w/NO_BLEND 14454b9186b2 update issue tracker url 1446d64d376c change WEBP_ALIGN_CST value to 31 1447f717b828 vp8l.c, cosmetics: fix indent after 95509f9 1448927ccdc4 Merge "fix alignment of allocated memory in AllocateTransformBuffer" 1449fea94b2b fix alignment of allocated memory in AllocateTransformBuffer 14505aa8d61f Merge "MIPS: rescaler code synced with C implementation" 1451e7fb267d MIPS: rescaler code synced with C implementation 145293c86ed5 Merge "format_constants.h: MKFOURCC, correct cast" 14535d791d26 format_constants.h: MKFOURCC, correct cast 145465726cd3 dsp/lossless: Average2, make a constant unsigned 1455d26d9def Use __has_builtin to check clang support 145612ec204e moved ALIGN_CST into util/utils.h and renamed WEBP_ALIGN_xxx 1457a2640838 Merge "rescaler: ~20% faster SSE2 implementation for lossless ImportRowExpand" 14583fb600d5 Merge "wicdec: fix alpha detection w/64bpp BGRA/RGBA" 145967c547fd rescaler: ~20% faster SSE2 implementation for lossless ImportRowExpand 146099e3f812 Merge "large re-organization of the delta-palettization code" 146195509f99 large re-organization of the delta-palettization code 146274fb458b fix for weird msvc warning message 1463ae49ad86 Merge "SSE2 implementation of ImportRowShrink" 1464932fd4df SSE2 implementation of ImportRowShrink 1465badfcbaa wicdec: fix alpha detection w/64bpp BGRA/RGBA 146635cafa6c Merge "iosbuild: fix linking with Xcode 7 / iOS SDK 9" 1467b0c9d8af label rename: NO_CHANGE -> NoChange 1468b4e731cd neon-implementation for rescaler code 1469db1321a6 iosbuild: fix linking with Xcode 7 / iOS SDK 9 14706dfa5e3e rescaler: better handling of the fxy_scale=0 special case. 147155c05293 Revert "rescaler: better handling of the fxy_scale=0 special case." 14729f226bf8 rescaler: better handling of the fxy_scale=0 special case. 1473f7b8f907 delta_palettization.*: add copyright 1474c1e1b710 Changed delta palette to compress better 14750dd28267 Merge "Add delta_palettization feature to WebP" 147648f66b66 Add delta_palettization feature to WebP 147727933e2a anim_encoder: drop a frame if it has same pixels as the prev frame. 1478df9f6ec8 Merge "webpmux/DisplayInfo: send non-error output to stdout" 14798af4993b Merge "rescaler_mips_dsp_r2: cosmetics, fix indent" 14802b9d2495 Merge "rescaler: cosmetics, join two lines" 1481cc020a8c webpmux/DisplayInfo: send non-error output to stdout 1482a288e746 configure: add -Wshorten-64-to-32 1483c4c3cf2d pngdec: fix type conversion warnings 1484bef8e97d webpmux: fix type conversion warning 14855a84460d rescaler_mips_dsp_r2: cosmetics, fix indent 1486acde0aae rescaler: cosmetics, join two lines 1487306ce4fd rescaler: move the 1x1 or 2x1 handling one level up 1488cced974b remove _mm_set_epi64x(), which is too specific 148956668c9f fix warnings about uint64_t -> uint32_t conversion 149076a7dc39 rescaler: add some SSE2 code 14911df1d0ee rescaler: harmonize function protos 14929ba1894b rescaler: simplify ImportRow logic 14935ff0079e fix rescaler vertical interpolation 1494cd82440e VP8LAllocateHistogramSet: align histogram[] entries 1495a406b1dd Merge "fix memory over-allocation in lossless rescaler init" 14960fde33e3 add missing const in VP8InitFrame signature 1497ac7d5e8d fix memory over-allocation in lossless rescaler init 1498017f8ccc Loosen the buffer size checks for Y/U/V/A too. 149915ca5014 loosen the padding check on buffer size 1500d623a870 dec_neon: add whitespace around stringizing operator 150129377d55 dsp/mips: cosmetics: add whitespace around XSTR macro 1502eebaf97f dsp/mips: add whitespace around stringizing operator 1503d39dc8f3 Create a WebPAnimDecoder API. 150403fb7522 gif2webp: print output file size 150514efabbf Android: limit use of cpufeatures 15067b83adbe preparatory cosmetics for Rescaler code fix and clean-up 150777fb41c2 dec/vp8l/DecodeAlphaData: remove redundant cast 150890fcfcd9 Insert less hash chain entries from the beginnings of long copies. 1509bd55604d SSE2: add yuv444 converters, re-using yuv_sse2.c 151041a5d99d add a -quiet option to 'dwebp' 151180ab3edb Merge "README: update dwebp help output after 1e595fe" 151232b71b2e README: update dwebp help output after 1e595fe 15133ec11827 use the DispatchAlpha() call from dsp 1514c5f00621 incorporate bzero() into WebPRescalerInit() instead of call site 15153ebcdd41 remove duplicate "#include <stdlib.h>" 15161e595fe1 dwebp: add -resize as a synonym for -scale 151724a96932 dec: allow 0 as a scaling dimension 1518b9187242 utils/rescaler: add WebPRescalerGetScaledDimensions 1519923e8eda Merge "update NEWS" 1520020fd099 Merge "WebPPictureDistortion: support ARGB format for 'pic' when computing distortion." 15216a5292f6 update NEWS 152256a2e9f5 WebPPictureDistortion: support ARGB format for 'pic' when computing distortion. 15230ae582e4 configure: test and add -Wunreachable-code 1524c2f9dc06 bit_writer: convert VP8L macro values to immediates 1525b969f888 Reduce magic in palette reordering 1526acb297e9 anim_diff: add a -raw_comparison flag 1527155c1b22 Merge changes I76f4d6fe,I45434639 1528717e4d5a mips32/mipsDSPr2: function ImportRow rebased 15297df93893 fix rescaling bug (uninitialized read, see bug #254). 15305cdcd561 lossless_enc_neon: add VP8LTransformColor 1531a53c3369 lossless_neon: add VP8LTransformColorInverse 153299131e7f Merge changes I9fb25a89,Ibc648e9e 1533c4556766 simplify the main loop for downscaling 15342a010f99 lossless_neon: remove predictors 5-13 1535ca221bbc ll_enc_neon: enable VP8LSubtractGreenFromBlueAndRed 1536585d93db Container spec: clarify ordering of ALPH chunk. 153701d61fd9 lossless: ~20 % speedup 1538f722c8f0 lossless: Speed up ComputeCacheEntropy by 40 % 15391ceecdc8 add a VP8LColorCacheSet() method for color cache 154017eb6099 lossless: Allow copying from prev row in rle-mode. 1541f3a7a5bf lossless: bit writer optimization 1542d97b9ff7 Merge changes from topic 'lossless-enc-improvements' 15430250dfcc msvc: fix pointer type warning in BitsLog2Floor 154452931fd5 lossless: combine the Huffman code with extra bits 1545c4855ca2 lossless: Inlining add literal 15468e9c94de lossless: simplify HashChainFindCopy heuristics 1547888429f4 lossless: 0.5 % compression density improvement 15487b23b198 lossless: Add zeroes into the predicted histograms. 154985b44d8a lossless: encoding, don't compute unnecessary histo 1550d92453f3 lossless: Remove about 25 % of the speed degradation 15512cce0317 Faster alpha coding for webp 15525e75642e lossless: rle mode not to accept lengths smaller than 4. 155384326e4a lossless: Less code for the entropy selection 155416ab951a lossless: 0.37 % compression density improvement 1555822f113e add WebPFree() to the API 15560ae2c2e4 SSE2/SSE41: optimize SSE_16xN loops 155739216e59 cosmetics: fix indent after 32462a07 1558559e54ca Merge "SSE2: slightly faster FTransformWHT" 15598ef9a63b SSE2: slightly faster FTransformWHT 1560f27f7735 lossless_neon: enable VP8LAddGreenToBlueAndRed 156136e9c4bc SSE2: minor cosmetrics on in-loop filter code 15624741fac4 dsp/lossless_*sse2: remove some unnecessary inlines 15631819965e fix warning ("left shift of negative value") using a cast 156470170014 SSE2: speed-up some lossless-encoding functions 1565abcb0128 Merge "SSE2: slightly faster (~5%) AddGreenToBlueAndRed()" 15662df5bd30 Merge "Speedup to HuffmanCostCombinedCount" 15679e356d6b SSE2: slightly faster (~5%) AddGreenToBlueAndRed() 1568fc6c75a2 SSE2: 53% faster TransformColor[Inverse] 156949073da6 SSE2: 46% speed-up of TransformColor[Inverse] 157032462a07 Speedup to HuffmanCostCombinedCount 1571f3d687e3 SSE4.1 implementation of some lossless encoding functions 1572bfc300c7 SSE4.1 implementation of some alpha-processing functions 15737f9c98f2 Merge "sse2 in-loop: simplify SignedShift8b() a bit" 1574ef314a5d dec_sse2/GetNotHEV: micro optimization 1575a729cff9 sse2 in-loop: simplify SignedShift8b() a bit 1576422ec9fb simplify Load8x4() a bit 15778df238ec Merge "remove some duplicate FlipSign()" 1578751506c4 remove some duplicate FlipSign() 157965ef5afc Merge "lossless: 0.13% compression density gain" 15802beef2f2 lossless: 0.13% compression density gain 15813033f24c lossless: 0.06 % compression density improvement 158264960da9 dec_neon: add VE8uv / VE16 158314dbd87b dec_neon: add HE8uv / HE16 1584ac768011 introduce FTransform2 to perform two transforms at a time. 1585aa6065ae dec_neon: use vld1_dup(mem) rather than vdup(mem[0]) 15868b63ac78 Merge "dec_neon: add TM16" 1587f51be09e Merge "dec_neon/TrueMotion: simply left border load" 1588dc48196b dec_neon: add TM16 1589ea95b305 dec_neon/TrueMotion: simply left border load 1590f262d612 speed-up SetResidualSSE2 1591bf46d0ac fix mips2 build target 1592929a0fdc enc_sse2/TTransform: simplify abs calculation 159317dbd058 enc_sse2/CollectHistogram: simplify abs calculation 1594a6c15936 dec_neon: add DC16 intra predictors 159503b4f50d Makefile.vc: add anim_diff build support. 15961b989874 Merge changes I9cd84125,Iee7e387f,I7548be72 1597acd7b5af Introduce a test tool anim_diff. 1598f274a96c dsp/enc_sse2: add luma4 intra predictors 1599040b11bd dsp/enc_sse2: add chroma intra predictors 1600aee021bb dsp/enc_sse2: add luma16 intra predictors 16019e00a499 makefile.unix: remove superclean target 1602cefc9c09 makefile.unix: clean up after extras target 16034c9af023 dec_neon: add DC8uvNoTopLeft 1604dd55b873 Merge "doc/webp-container-spec: update repo browser link" 1605f0486968 doc/webp-container-spec: update repo browser link 16069287761d Merge "GetResidualCostSSE2: simplify abs calculation" 16070e009366 dsp/cpu.c(x86): check maximum supported cpuid feature 1608b243a4bc GetResidualCostSSE2: simplify abs calculation 16096d4602b8 Merge "fix typo: constitutes -> constitute" 16105fe1fe37 fix typo: constitutes -> constitute 1611b83bd7c4 Merge "populate 'libwebpextras' with: import gray, rgb565 and rgb4444 functions" 1612b0114a32 Merge "histogram.h: cosmetics: remove unnecessary includes" 1613feab45ef gifdec: Move inclusion of webp/config.h to header. 1614dbba67d1 histogram.h: cosmetics: remove unnecessary includes 1615e978fec6 Merge "VP8LBitReader: fix remaining ubsan error with large shifts" 1616d6fe5884 Merge "ReconstructRow: move some one-time inits out of the main loop" 1617a21d647c ReconstructRow: move some one-time inits out of the main loop 16187a01c3c3 VP8LBitReader: fix remaining ubsan error with large shifts 16197fa67c9b change GetPixPairHash64() return type to uint32_t 1620ec1fb9f8 Merge "dsp/enc.c: cosmetics: move DST() def closer to use" 16217073bfb3 Merge "split 64-mult hashing into two 32-bit multiplies" 16220768b252 dsp/enc.c: cosmetics: move DST() def closer to use 16236a48b8f0 Merge "fix MSVC size_t->int conversion warning" 16241db07cde Merge "anim_encode: cosmetics: fix alignment" 1625e28271a3 anim_encode: cosmetics: fix alignment 16267fe357b8 split 64-mult hashing into two 32-bit multiplies 1627af74c145 populate 'libwebpextras' with: import gray, rgb565 and rgb4444 functions 162861214134 remove VP8Residual::cost unused field 1629e2544823 fix MSVC size_t->int conversion warning 1630b69a6c35 vwebp: don't redefine snprintf with VS2015+ 16310ac29c51 AnimEncoder API: Consistent use of trailing underscores in struct. 1632d4845550 AnimEncoder API: Use timestamp instead of duration as input to Add(). 16339904e365 dsp/dec_sse2: DC8uv / DC8uvNoLeft speedup 16347df20497 dsp/dec_sse2: DC16 / DC16NoLeft speedup 16358e515dfe Merge "makefile.unix: add some missing headers" 1636db12250f cosmetics: vp8enci.h: break long line 1637bf516a87 makefile.unix: add some missing headers 1638b44eda3f dsp: add DSP_INIT_STUB 163903e76e96 clarify the comment about double-setting the status in SetError() 16409fecdd71 remove unused EmitRGB() 164143f010dd move ReconstructRow to top 164282d98020 add a dec/common.h header to collect common enc/dec #defines 16435d4744a2 Merge "enc_sse41: add Disto4x4 / Disto16x16" 1644e38886a7 mux.h: Bump up ABI version 164546305ca6 configure: add --disable-<avx2|sse4.1|sse2> 16462fc8b658 CPPFLAGS->CFLAGS for detecting sse4.1 in preprocessor 16471a338fb3 enc_sse41: add Disto4x4 / Disto16x16 164894055503 encoding SSE4.1 stub for StoreHistogram + Quantize + SSE_16xN 1649c64659e1 remove duplicate variables after the lossless{_enc}.c split 165067ba7c7a enc_sse2: call local FTransform in CollectHistogram 165118249799 dsp: s/VP8LSetHistogramData/VP8SetHistogramData/ 1652ede5e158 cosmetics: dsp/lossless.h: reorder prototypes 1653553051f7 dsp/lossless: split enc/dec functions 16549064adc8 Merge "conditionally add -msse4.1 in Makefile.unix" 1655cecf5096 dsp/yuv*.c: rework WEBP_USE_<arch> ifdef 16566584d398 dsp/upsampling*.c: rework WEBP_USE_<arch> ifdef 165780809422 dsp/rescaler*.c: rework WEBP_USE_<arch> ifdef 16581d93ddec dsp/lossless*.c: rework WEBP_USE_<arch> ifdef 165973805ff2 dsp/filters*.c: rework WEBP_USE_<arch> ifdef 1660fbdcef24 dsp/enc*.c: rework WEBP_USE_<arch> ifdef 166166de69c1 dsp/dec*.c: rework WEBP_USE_<arch> ifdef 166248e4ffd1 dsp/cost*.c: rework WEBP_USE_<arch> ifdef 166329fd6f90 dsp/argb*.c: rework WEBP_USE_<arch> ifdef 166480ff3813 dsp/alpha*.c: rework WEBP_USE_<arch> ifdef 1665bf09cf1e conditionally add -msse4.1 in Makefile.unix 1666e9570dd9 stub for SSE4.1 support. 16674a95384b Merge "dsp: add sse4.1 detection" 1668cabf4bd2 dsp: add sse4.1 detection 16694ecba1ab thread.h: rename interface param 1670b8d706c8 Merge "sync versions with 0.4.3" 1671ae64a711 Merge "add shell for libwebpextras" 167292a5da9c sync versions with 0.4.3 16739d4e2d16 Merge "~30% faster smart-yuv (-pre 4) with early-out criterion" 1674b1bdbbab ~30% faster smart-yuv (-pre 4) with early-out criterion 16757efb9748 Merge "Disable NEON code on Native Client" 1676ac4f5784 Disable NEON code on Native Client 16770873f85b AnimEncoder API: Support input frames in YUV(A) format. 16785c176d2d add shell for libwebpextras 167944bd9561 fix signature for VP8RecordCoeffTokens() 1680c9b8ea0e small cosmetics on TokenBuffer. 168176394c09 Merge "MIPS: dspr2: added optimization for TrueMotion" 16820f773693 WebPPictureRescale: add a note about 0 width/height 1683241bb5d9 MIPS: dspr2: added optimization for TrueMotion 16846cef0e4f examples/Android.mk: add webpmux_example target 168553c16ff0 Android.mk: add webpmux target 168621852a00 Android.mk: add webpdemux target 16878697a3bc Android.mk: add webpdecoder{,_static} targets 16884a670491 Android.mk: split source lists per-directory 1689b5e79422 MIPS: dspr2: Added optimization for some convert functions 16900f595db6 MIPS: dspr2: Added optimization for some convert functions 16918a218b4a MIPS: [mips32|dspr2]: GetResidualCost rebased 1692ef987500 Speedup method StoreImageToBitMask by 5%. 1693602a00f9 fix iOS arm64 build with Xcode 6.3 169423820507 1-2% faster encoding by removing an indirection in GetResidualCost() 1695eddb7e70 MIPS: dspr2: added otpimization for DC8uv, DC8uvNoTop and DC8uvNoLeft 169673ba2915 MIPS: dspr2: added optimization for functions RD4 and LD4 1697c7129da5 Merge "4-5% faster encoding using SSE2 for GetResidualCost" 169894380d00 MIPS: dspr2: added optimizaton for functions VE4 and DC4 16992a407092 4-5% faster encoding using SSE2 for GetResidualCost 170017e19862 Merge "MIPS: dspr2: added optimization for simple filtering functions" 17013ec404c4 Merge "dsp: normalize WEBP_TSAN_IGNORE_FUNCTION usage" 1702b969f5df dsp: normalize WEBP_TSAN_IGNORE_FUNCTION usage 1703d7b8e711 MIPS: dspr2: added optimization for simple filtering functions 1704235f774e Merge "MIPS: dspr2: Added optimization for function VP8LTransformColorInverse_C" 170542a8a628 MIPS: dspr2: Added optimization for function VP8LTransformColorInverse_C 1706b442bef3 Merge "ApplyFiltersAndEncode: only copy lossless stats" 1707b510fbfe doc/webp-container-spec: note MSB order for chunk diagrams 17089bc0f922 ApplyFiltersAndEncode: only copy lossless stats 17093030f115 Merge "dsp/mips: add some missing TSan annotations" 1710dfcf4593 Merge "MIPS: dspr2: Added optimization for function VP8LAddGreenToBlueAndRed_C" 171155c75a25 dsp/mips: add some missing TSan annotations 17122cb879f0 MIPS: dspr2: Added optimization for function VP8LAddGreenToBlueAndRed_C 1713e1556010 move some cost tables from enc/ to dsp/ 1714c3a03168 Merge "picture_csp: fix build w/USE_GAMMA_COMPRESSION undefined" 171539537d7c Merge "VP8LDspInitMIPSdspR2: add missing TSan annotation" 17161dd419ce picture_csp: fix build w/USE_GAMMA_COMPRESSION undefined 171743fd3543 VP8LDspInitMIPSdspR2: add missing TSan annotation 1718c7233dfc Merge "VP8LDspInit: remove memcpy" 17190ec4da96 picture_csp::InitGammaTables*: add missing TSan annotations 172035579a49 VP8LDspInit: remove memcpy 172197f6aff8 VP8YUVInit: add missing TSan annotation 1722f9016d66 dsp/enc::InitTables: add missing TSan annotation 1723e3d9771a VP8EncDspCostInit*: add missing TSan annotations 1724d97c143d Merge "doc/webp-container-spec: cosmetics" 1725309b7908 MIPS: mips32: Added optimization for function SetResidualCoeffs 1726a987faed MIPS: dspr2: added optimization for function GetResidualCost 1727e7d3df23 doc/webp-container-spec: cosmetics 1728be6635e9 Merge "VP8TBufferClear: remove some misleading const's" 172902971e72 Merge "VP8EmitTokens: remove unnecessary param void cast" 17303b77e5a7 VP8TBufferClear: remove some misleading const's 1731aa139c8f VP8EmitTokens: remove unnecessary param void cast 1732c24d8f14 cosmetics: upsampling_sse2: add const to some casts 17331829c42c cosmetics: lossless_sse2: add const to some casts 1734183168f3 cosmetics: enc_sse2: add const to some casts 1735860badca cosmetics: dec_sse2: add const to some casts 17360254db97 cosmetics: argb_sse2: add const to some casts 17371aadf856 cosmetics: alpha_processing_sse2: add const to some casts 17381579de3c vwebp: clear canvas at the beginning of each loop 17394b9fa5d0 Merge "webp-container-spec: clarify background clear on loop" 17404c82284d Updated the near-lossless level mapping. 174156039479 webp-container-spec: clarify background clear on loop 174219f0ba0e Implement true-motion prediction in SSE2 1743774d4cb7 make VP8PredLuma16[] array non-const 1744d7eabb80 Merge "MIPS: dspr2: Added optimization for function CollectHistogram" 1745fe42739c Use integers for kmin/kmax for simplicity. 1746b9df35f7 AnimEncode API: kmax=0 should imply all keyframes. 17476ce296da MIPS: dspr2: Added optimization for function CollectHistogram 17482c906c40 vwebp: remove unnecessary static Help() prototype 1749be0fd1d5 Merge "dec/vp8: clear 'dither_' on skipped blocks" 1750e96170fe Merge "vwebp/animation: display last frame on end-of-loop" 17510f017b56 vwebp/animation: display last frame on end-of-loop 1752c86b40cc enc/near_lossless.c: fix alignment 175366935fb9 dec/vp8: clear 'dither_' on skipped blocks 1754b7de7946 Merge "lossless_neon: enable subtract green for aarch64" 175577724f70 SSE2 version of GradientUnfilter 1756416e1cea lossless_neon: enable subtract green for aarch64 175772831f6b Speedup AnalyzeAndInit for low effort compression. 1758a6597483 Speedup Analyze methods for lossless compression. 175998c81386 Enable Near-lossless feature. 1760c6b24543 AnimEncoder API: Fix for kmax=1 and default kmin case. 1761022d2f88 add SSE2 variants for alpha filtering functions 17622db15a95 Temporarily disable encoding of alpha plane with color cache. 17631d575ccd Merge "Lossless decoding: Remove an unnecessary if condition." 1764cafa1d88 Merge "Simplify backward refs calculation for low-effort." 17657afdaf84 Alpha coding: reorganize the filter/unfiltering code 17664d6d7285 Simplify backward refs calculation for low-effort. 1767ec0d1be5 Cleaup Near-lossless code. 17689814ddb6 Remove the post-transform near-lossless heuristic. 17694509e32e Lossless decoding: Remove an unnecessary if condition. 1770f2ebc4a8 Merge "Regression fix for lossless decoding" 1771783a8cda Regression fix for lossless decoding 17729a062b8e AnimEncoder: Bugfix for kmin = 1 and kmax = 2. 17730f027a72 simplify smart RGB->YUV conversion code 17740d5b334e BackwardReferencesHashChainFollowChosenPath: remove unused variable 1775f480d1a7 Fix to near lossless artefacts on palettized images. 1776d4615d08 Merge changes Ia1686828,I399fda40 1777cb4a18a7 rename HashChainInit into HashChainReset 1778f079e487 use uint16_t for chosen_path[] 1779da091212 MIPS: dspr2: Added optimization for function FTransformWHT 1780b8c20135 Merge "wicdec: (msvs) quiet some /analyze warnings" 17819b228b54 wicdec: (msvs) quiet some /analyze warnings 1782daeb276a Merge "MIPS: dspr2: Added optimization for MultARGBRow function" 1783cc087424 Merge "dsp/cpu: (msvs) add include for __cpuidex" 17844a82aab5 Merge changes I87544e92,I0bb6cda5 17857a191398 dwebp/WritePNG: mark png variables volatile 1786775dfad2 dwebp: include setjmp.h w/WEBP_HAVE_PNG 178747d26be7 dwebp: correct sign in format strings 1788f0e0677b VP8LEncodeStream: add an assert 1789c5f7747f VP8LColorCacheCopy: promote an int before shifting 17900de5f33e dsp/cpu: (msvs) add include for __cpuidex 17917d850f7b MIPS: dspr2: Added optimization for MultARGBRow function 179254875293 MIPS: dspr2: added optimization for function QuantizeBlock 17934fbe9cf2 dsp/cpu: (msvs) avoid immintrin.h on _M_ARM 17943fd59039 simplify/reorganize arguments for CollectColorBlueTransforms 1795b9e356b9 Disable costly TraceBackwards for method=0. 1796a7e7caa4 MIPS: dspr2: added optimization for function TransformColorRed 17972cb39180 Merge "MIPS: dspr2: added optimization for function TransformColorBlue" 1798279e6613 Merge "dsp/cpu: add include for _xgetbv() w/MSVS" 1799b6c0428e dsp/cpu: add include for _xgetbv() w/MSVS 1800d1c4ffae gif2webp: Move GIF decoding related code to a support library. 180107c39559 Merge "AnimEncoder API: Add info in README.mux" 18027b161973 MIPS: dspr2: added optimization for function TransformColorBlue 1803d7c4b02a cpu: fix AVX2 detection for gcc/clang targets 18049d299469 AnimEncoder API: Add info in README.mux 1805d581ba40 follow-up: clean up WebPRescalerXXX dsp function 1806f8740f0d dsp: s/USE_INTRINSICS/WEBP_USE_INTRINSICS/ 1807ce73abe0 Merge "introduce a separate WebPRescalerDspInit to initialize pointers" 1808ab66beca introduce a separate WebPRescalerDspInit to initialize pointers 1809205c7f26 fix handling of zero-sized partition #0 corner case 1810cbcdd5ff Merge "move rescaler functions to rescaler* files in src/dsp/" 1811bf586e88 Merge changes I230b3532,Idf3057a7 18126dc79dc2 Merge "anim_encode: fix type conversion warnings" 181311fce25a Merge "dec_neon: remove returns from void functions" 1814c4e63f99 Makefile.vc: add gif2webp target 18154f43d38c enable NEON for Windows ARM builds 18163f6615ac Makefile.vc: add rudimentary Windows ARM support 1817e7c5954c dec_neon: remove returns from void functions 1818f79c163b anim_encode: fix type conversion warnings 18190f54f1ec Remove gif2webp_util which is no longer needed. 1820cbcbedd0 move rescaler functions to rescaler* files in src/dsp/ 1821ac79ed19 webpmux: remove experimental fragment handling 1822e8694d4d mux: remove experimental FRGM parsing 18239e92b6ea AnimEncoder API: Optimize single-frame animated images 1824abbae279 Merge "Move over gif2webp to the new AnimEncoder API." 1825a28c4b36 MIPS: move WORK_AROUND_GCC define to appropriate place 1826012d2c60 MIPS: dspr2: added optimization for functions SSEAxB 182767720c8b Move over gif2webp to the new AnimEncoder API. 18289241ecf4 MIPS: dspr2: added optimization for function Average 18299422211d Merge "Tune BackwardReferencesLz77 for low_effort (m=0)." 1830df40057b Merge "Speedup VP8LGetHistoImageSymbols for low effort (m=0) mode." 1831ea08466d Tune BackwardReferencesLz77 for low_effort (m=0). 1832b0b973c3 Speedup VP8LGetHistoImageSymbols for low effort (m=0) mode. 1833c6d32927 argb_sse2: cosmetics 183467f601cd make the 'last_cpuinfo_used' variable names unique 1835b9489861 AnimEncoder API: Init method for default options. 1836856f8ec1 Merge "AnimEncoder API: Remove AnimEncoderFrameOptions." 1837c537514d Merge "AnimEncoder API: GenerateCandidates bugfix." 1838dc0ce039 Merge "AnimEncoder API: Compute change rectangle for first frame too." 1839f00b639b Merge "AnimEncoder API: In Assemble(), always set animation parameters." 184029ed796c Merge "AnimEncoder lib cleanup: prev to prev canvas not needed." 18419f0dd6e5 Merge "WebPAnimEncoder API: Header and implementation" 18425e56bbe0 AnimEncoder API: Remove AnimEncoderFrameOptions. 1843b902c3ea AnimEncoder API: GenerateCandidates bugfix. 1844ef3c39bb AnimEncoder API: Compute change rectangle for first frame too. 1845eec423ab AnimEncoder API: In Assemble(), always set animation parameters. 1846ae1c046e AnimEncoder lib cleanup: prev to prev canvas not needed. 18474b997ae4 WebPAnimEncoder API: Header and implementation 184872208bec move argb_*.o build target to encoder list 184995920538 Merge "multi-thread fix: lock each entry points with a static var" 18504c1b300a Merge "SSE2 implementation of VP8PackARGB" 1851fbcc2004 Merge "add -Wformat-nonliteral and -Wformat-security" 185280d950d9 add -Wformat-nonliteral and -Wformat-security 185304c20e75 Merge "MIPS: dspr2: added optimization for function Intra4Preds" 1854a437694a multi-thread fix: lock each entry points with a static var 1855ca7f60db SSE2 implementation of VP8PackARGB 185672d573f6 simplify the PackARGB signature 18574e2589ff demux: restore strict fragment flag check 18584ba8e074 Merge "webp-container-spec: remove references to fragments" 1859e752f0a6 Merge "demux: remove experimental FRGM parsing" 1860f8abb112 Merge changes I109ec4d9,I73fe7743 1861ae2188a4 MIPS: dspr2: added optimization for function Intra4Preds 18621f4b8642 move VP8EncDspARGBInit() call closer to where it's needed 186314108d78 dec_neon: add DC8uvNoTop / DC8uvNoLeft 1864d8340da7 dec_neon: add DC8uv 1865a66e66c7 webp-container-spec: remove references to fragments 18667ce8788b MIPS: dspr2: added optimization for function MakeARGB32 1867012e623d demux: remove experimental FRGM parsing 186887c3d531 method=0: Don't evaluate any predictor 18696f4fcb98 Merge "MIPS: dspr2: added optimization for function ImportRow" 187024284459 replace unneeded calls to HistogramCopy() by swaps 1871bdf7b40c MIPS: dspr2: added optimization for function ImportRow 1872e66a9225 Merge "MIPS: dspr2: added optimization for function ExportRowC" 1873c279fec1 MIPS: dspr2: added optimization for function ExportRowC 187431a9cf64 Speedup WebP lossless compression for low effort (m=0) mode with following: - Disable Cross-Color transform. - Evaluate predictors #11 (paeth), #12 and #13 only. 18759275d91c MIPS: dspr2: added optimization for function TrueMotion 187626106d66 Merge "enc_neon: fix building with non-Xcode clang (iOS)" 18771c4e3efe unroll the kBands[] indirection to remove a dereference in GetCoeffs() 1878a3946b89 enc_neon: fix building with non-Xcode clang (iOS) 18798ed9c00d Merge "simplify the Histogram struct, to only store max_value and last_nz" 1880bad77571 simplify the Histogram struct, to only store max_value and last_nz 18813cca0dc7 MIPS: dspr2: Added optimization for DCMode function 188237e395fd MIPS: fix functions to use generic BPS istead of hardcoded value 18839475bef4 PickBestUV: fix VP8Copy16x8 invocation 1884441f273f Merge changes I55f8da52,Id73a1e96 18854a279a68 cosmetics: add some missing != NULL comparisons 188666ad3725 factorize BPS definition in dsp.h and add VP8Copy16x8 1887432e5b55 make ALIGN_xxx naming consistent 188857606047 encoder: switch BPS to 32 instead of 16 18891b66bbe9 MIPS: dspr2: added optimization for function TransformColor_C 1890c6d0f9e7 histogram: cosmetics 1891f399d307 Merge changes I6eac17e5,I32d2b514 18929de9074c dec_neon: add TM8uv 18938e517eca bit_reader/kVP8NewRange: range_t -> uint8_t 1894e1857139 dsp: initialize VP8PredChroma8 in VP8DspInit() 1895e0c809ad Move Entropy methods to lossless.c 1896a96ccf8f iosbuild: add x64_64 simulator support 1897a0df5510 Remove handling for WEBP_HINT_GRAPH 1898413dfc0c Move static method definition before its usage. 18990f235665 Update BackwardRefsWithLocalCache. 1900d69e36ec Remove TODOs from lossless encoder code. 1901fdaac8e0 Optmize VP8LGetBackwardReferences LZ77 references. 19022f0e2ba8 MIPS: dspr2: added optimization for function Select 1903a3e79a46 Merge "WebPEncode: Support encoding same pic twice (even if modified)" 1904e4f4dddb WebPEncode: Support encoding same pic twice (even if modified) 1905cbc3fbb4 Merge "Updated VP8LGetBackwardReferences and color cache." 190695a9bd85 Updated VP8LGetBackwardReferences and color cache. 190754f2c14c MIPS: dspr2: added optimization for function FTransform 1908aa42f423 MIPS: dspr2: Added optimization for function VP8LSubtractGreenFromBlueAndRed 190911a25f75 Merge "FlattenSimilarBlocks should only be tried when blending is possible." 19105cccdadf FlattenSimilarBlocks should only be tried when blending is possible. 191195ca44a7 MIPS: dspr2: added optimization for Disto4x4 19124171b672 backward_references.c: reindent after c8581b0 1913c8581b06 Optimize BackwardReferences for RLE encoding. 19145798eee6 MIPS: dspr2: unfilters bugfix (Ie7b7387478a6b5c3f08691628ae00f059cf6d899) 19154167a3f5 Optimize backwardreferences 1916d18554c3 Merge "webp/types.h: use inline for clang++/-std=c++11" 19177489b0e7 gif2webp: Add '-min-size' option to get best compression. 191877bdddf0 Speed up BackwardReferences 19196638710b webp/types.h: use inline for clang++/-std=c++11 1920abf04205 Enable entropy based merge histo for (q<100) 1921572022a3 filters_mips_dsp_r2.c: disable unfilters 1922a28e21b1 MIPS: dspr2: Added optimization for function ClampedAddSubtractFull 192318d5a1ef MIPS: dspr2: added optimization for function ClampedAddSubtractHalf 1924829a8c19 MIPS: dspr2: added optimization for ITransform 1925c94ed49e gif2webp: Use the default hint instead of WEBP_HINT_GRAPH. 1926653ace55 Increase the MAX_COLOR_CACHE_BITS from 9 to 10. 1927919220c7 Change the logic adjusting the Histogram bits. 192853b096c0 Merge "Fix bug in VP8LCalculateEstimateForCacheSize." 1929e912bd55 Fix bug in VP8LCalculateEstimateForCacheSize. 1930541d7839 Merge "dec_neon: add RD4 intra predictor" 1931f8cd0672 Merge "Makefile.vc: add a 'legacy' RTLIBCFG option" 193222881c99 dec_neon: add RD4 intra predictor 1933613d281e update NEWS 19341304eb34 Merge "dec_neon: DC4: use pair-wise adds for top row" 193534c20c06 Makefile.vc: add a 'legacy' RTLIBCFG option 19367083006b Merge "dsp/dec_{neon,sse2}: VE4: normalize variable names" 19370db9031c dsp/dec_{neon,sse2}: VE4: normalize variable names 1938b5bc1530 dec_neon: DC4: use pair-wise adds for top row 19395b90d8fe Unify the API between VP8BitWriter and VP8LBitWriter 1940f7ada560 Merge changes I2e06907b,Ia9ed4ca6,I782282ff 19415beb6bf0 Merge "dec_neon: add VE4 intra predictor" 1942eba6ce06 dec_neon: add DC4 intra predictor 194379abfbd9 dec_neon: add TM4 intra predictor 1944fe395f0e dec_neon: add LD4 intra predictor 194532de385e dec_neon: add VE4 intra predictor 194672395ba9 Merge "Modify CostModel to allocate optimal memory." 194765e5eb8a gif2webp: Support GIF_DISPOSE_RESTORE_PREVIOUS 1948e4c829ef gif2webp: Handle frames with odd offsets + disposal to background. 1949c2b5a039 Modify CostModel to allocate optimal memory. 1950b7a33d7e implement VE4/HE4/RD4/... in SSE2 195197c76f1f make VP8PredLuma4[] non-const and initialize array in VP8DspInit() 19520ea8c6c2 Merge "PrintReg: output to stderr" 1953d7ff2f97 Merge "stopwatch.h: fix includes" 1954f85ec712 PrintReg: output to stderr 195554edbf65 stopwatch.h: fix includes 1956139142e4 Optimize BackwardReferenceHashChainFollowPath. 19575f36b68d enc/backward_references.c: fix indent 1958e0e9960d Merge "sync version numbers to 0.4.2 release" 195964ac5144 sync version numbers to 0.4.2 release 1960c24f8954 Simplify and speedup Backward refs computation. 1961d1c359ef fix shared object build with -fvisibility=hidden 1962a4c3a31b WEBP_TSAN_IGNORE_FUNCTION: fix gcc compat warning 1963f358eeb8 add code for testing random incremental decoding in dwebp 196480247291 mark some init function as being safe for thread_sanitizer. 196579b5bdbf bit_reader.h: cosmetics: fix a typo 19666c673681 Improved near-lossless mode. 19670ce27e71 enc_mips32: workaround gcc-4.9 bug 1968aca1b98f enc/vp8l.c: fix indent 1969ca005027 Evaluate non-palette compression for palette image 1970c8a87bb6 AssignSegments: quiet -Warray-bounds warning 197132f67e30 Merge "enc_neon: initialize vectors w/vdup_n_u32" 1972fabc65da 1-3% faster encoding optimizing SSE_NxN functions 19737534d716 enc_neon: initialize vectors w/vdup_n_u32 19745f813912 Merge "Fix return code of EncodeImageInternal()" 1975e321abe4 Fix return code of EncodeImageInternal() 1976f82cb06a optimize palette ordering 1977f545feee don't set the alpha value for histogram index image 19782d9b0a44 add WebPDispatchAlphaToGreen() to dsp 19791bd4c2ad Merge "Change Entropy based Histogram Combine heuristic." 1980e295b8f1 Merge "iosbuild: cleanup" 19811be4e760 Merge "iosbuild: output autoconf req. on failure" 1982d5e498d4 Change Entropy based Histogram Combine heuristic. 198347a2d8e1 fix MSVC float->int conversion warning 1984041956f6 iosbuild: cleanup 1985767eb402 iosbuild: output autoconf req. on failure 198635ad48b8 HistoHeapInit: correct positions allocation size 198745d9635f lossless: entropy clustering for high qualities. 1988dc37df8c fix type warning for VS9_x64 19899f7d9e6d iosbuild: make iOS 6 the minimum requirement 1990fdd6528b Remove unused VP8LDecoder member variable 1991ea3bba5a Merge "rewrite Disto4x4 in enc_neon.c with intrinsic" 1992f060dfc4 add lossless incremental decoding support 1993ab70794d rewrite Disto4x4 in enc_neon.c with intrinsic 1994d4471637 MIPS: dspr2: added optimization for function FilterLoop24 19952aef54d4 Merge "prepare VP8LDecodeImage for incremental decode" 1996aed0f5a2 Merge "MIPS: dspr2: added optimization for function FilterLoop26" 199728630685 prepare VP8LDecodeImage for incremental decode 1998248f3aed remove br->error_ field 199949e15044 MIPS: dspr2: added optimization for function FilterLoop26 200038128cb9 iobuild.sh: only install .h files in Headers 2001c792d412 Premultiply with alpha during U/V downsampling 20020cc811d7 gif2webp: Background color correction 2003d7167ff7 Amend the lossless spec according to issue #205, #206 and #224 2004b901416b Record the lossless size stats. 2005cddd3340 Add a WebPExtractAlpha function to dsp 20060716a98e fix indent after I0204949917836f74c0eb4ba5a7f4052a4797833b 2007f9ced95a Optimize lossless decoding for trivial(ARB) codes. 2008924fcfd9 Merge "webpmux: simplify InitializeConfig()" 2009c0a462ca webpmux: simplify InitializeConfig() 20106986bb5e webpmux: fix indent 2011f89e1690 webpmux: fix exit status on numeric value parse error 20122172cb62 Merge "webpmux: fix loop_count range check" 2013e3b343ec Merge "examples: warn on invalid numeric parameters" 20140e23c487 webpmux: fix loop_count range check 20156208338a Merge "fix loop bug in DispatchAlpha()" 2016d51f3e40 gif2webp: Handle frames with missing graphic control extension 2017690b491a fix loop bug in DispatchAlpha() 201896d43a87 examples: warn on invalid numeric parameters 20193101f537 MIPS: dspr2: added optimization for TransformOne 2020a6bb9b17 SSE2 for inverse Mult(ARGB)Row and ApplyAlphaMultiply 2021d84a8ffd Remove default initialization of decoder status. 2022be70b86c configure: simplify libpng-config invocation 2023e0a99321 Rectify bug in lossless incremental decoding. 2024e2502a97 MIPS: dspr2: added optimization for TransformAC3 202524e1072a MIPS: dspr2: added optimization for TransformDC 2026c0e84df8 Merge "Slightly faster lossless decoding (1%)" 20278dd28bb5 Slightly faster lossless decoding (1%) 2028f0103595 MIPS: dspr2: added optimization for ColorIndexInverseTransforms 2029d3242aee make VP8LSetBitPos() set br->eos_ flag 2030a9decb55 Lossless decoding: fix eos_ flag condition 20313fea6a28 fix erroneous dec->status_ setting 203280b8099f MIPS: dspr2: add some specific mips code to commit I2c3f2b12f8df15b785fad5a9c56316e954ae0c53 2033e5640625 Merge "further refine the COPY_PATTERN optim for DecodeAlpha" 2034854509fe enc/histogram.c: reindent after f4059d0 203534421964 Merge "~3-5% faster encoding optimizing PickBestIntra*()" 2036865069c1 further refine the COPY_PATTERN optim for DecodeAlpha 2037a5956228 added C-level optimization for DecodeAlphaData function 2038187d379d add a fallback to ALPHA_NO_COMPRESSION 2039a48a2d76 ~3-5% faster encoding optimizing PickBestIntra*() 2040a6140194 ExUtilReadFromStdin: (windows) open stdin in bin mode 2041e80eab1f webpmux: (windows) open stdout in binary mode 2042e9bfb116 cwebp: (windows) open stdout in binary mode 20435927e15b example_util: add ExUtilSetBinaryMode 204430f3b75b webpmux man page: Clarify some title, descriptions and examples 204577d4c7e3 address cosmetic comments from patch #71380 2046f75dfbf2 Speed up Huffman decoding for lossless 2047637b3888 dsp/lossless: workaround gcc-4.9 bug on arm 20488323a903 dsp.h: collect gcc/clang version test macros 2049e6c4b52f move static initialization of WebPYUV444Converters[] to the Init function. 205049911d4d Merge "fix indentation" 2051f4059d0c Code cleanup for HistogramRemap. 2052e632b092 fix indentation 2053f5c04d64 Merge "add a DispatchAlpha() for SSE2 that handles 8 pixels at a time" 2054fc98edd9 add a DispatchAlpha() for SSE2 that handles 8 pixels at a time 205573d361dd introduce VP8EncQuantize2Blocks to quantize two blocks at a time 20560b21c30b MIPS: dspr2: added optimization for EmitAlphaRGB 2057953acd56 enc_neon: enable QuantizeBlock for aarch64 2058f4ae1437 MIPS: mips32: code rebase 205956977154 MIPS: dspr2: added optimizations for VP8YuvTo* 20602523aa73 SmartRGBYUV: fix odd-width problem with pixel replication 2061ee52dc4e fix some MSVC64 warning about float conversion 20623fca851a cpu: check for _MSC_VER before using msvc inline asm 2063e2a83d71 faster RGB->YUV conversion function (~7% speedup) 2064de2d03e1 Merge "Add smart RGB->YUV conversion option -pre 4" 20653fc4c539 Add smart RGB->YUV conversion option -pre 4 2066b4dc4069 MIPS: dspr2: added optimization for (un)filters 2067137e6090 Merge "configure: add work around for gcc-4.9 aarch64 bug" 2068b61c9cec MIPS: dspr2: Optimization of some simple point-sampling functions 2069e2b8cec0 configure: add work around for gcc-4.9 aarch64 bug 207098c54107 MIPS: mips32r2: added optimization for BSwap32 2071dab702b3 Update PATENTS to reflect s/VP8/WebM/g 2072b564f7c7 Merge "MIPS: detect mips32r6 and disable mips32r1 code" 2073b7e5a5c4 MIPS: detect mips32r6 and disable mips32r1 code 207463c2fc02 Correctly use the AC_CANONICAL_* macros 2075bb07022b Merge "cosmetics" 2076e300c9d8 cosmetics 20770e519eea Merge "cosmetics: remove some extraneous 'extern's" 20783ef0f08a Merge "vp8enci.h: cosmetics: fix '*' placement" 20794c6dde37 bit_writer: cosmetics: rename kFlush() -> Flush() 2080f7b4c48b cosmetics: remove some extraneous 'extern's 2081b47fb00a vp8enci.h: cosmetics: fix '*' placement 2082b5a36cc9 add -near_lossless [0..100] experimental option 20830524d9e5 dsp: detect mips64 & disable mips32 code 2084d3485d96 cwebp.1: fix quality description placement 208529a9fe22 Merge tag 'v0.4.1' 20868af27718 update ChangeLog (tag: v0.4.1, origin/0.4.1) 2087e09e9ff6 Record & log the image pre-processing time. 2088f59c0b4b iosbuild.sh: specify optimization flags 20898d34ea3e update ChangeLog (tag: v0.4.1-rc1) 2090dbc3da66 makefile.unix: add vwebp.1 to the dist target 209189a7c83c update ChangeLog 2092ffe67ee9 Merge "update NEWS for the next release" into 0.4.1 20932def1fe6 gif2webp: dust up the help message 2094fb668d78 remove -noalphadither option from README/vwebp.1 2095e49f693b update NEWS for the next release 2096cd013580 Merge "update AUTHORS" into 0.4.1 2097268d01eb update AUTHORS 209885213b9b bump version to 0.4.1 2099695f80ae Merge "restore mux API compatibility" into 0.4.1 2100862d296c restore mux API compatibility 21018f6f8c5d remove the !WEBP_REFERENCE_IMPLEMENTATION tweak in Put8x8uv 2102d713a696 Merge changes If4debc15,I437a5d5f into 0.4.1 2103c2fc52e4 restore encode API compatibility 2104793368e8 restore decode API compatibility 2105b8984f31 gif2webp: fix compile with giflib 5.1.0 2106222f9b1a gif2webp: simplify giflib version checking 2107d2cc61b7 Extend MakeARGB32() to accept Alpha channel. 21084595b62b Merge "use explicit size of kErrorMessages[] arrays" 2109157de015 Merge "Actuate memory stats for PRINT_MEMORY_INFO" 2110fbda2f49 JPEG decoder: delay conversion to YUV to WebPEncode() call 21110b747b1b use explicit size of kErrorMessages[] arrays 21123398d81a Actuate memory stats for PRINT_MEMORY_INFO 21136f3202be Merge "move WebPPictureInit to picture.c" 21146c347bbb move WebPPictureInit to picture.c 2115fb3acf19 fix configure message for multi-thread 211640b086f7 configure: check for _beginthreadex 21171549d620 reorder the YUVA->ARGB and ARGB->YUVA functions correctly 2118c6461bfd Merge "extract colorspace code from picture.c into picture_csp.c" 2119736f2a17 extract colorspace code from picture.c into picture_csp.c 2120645daa03 Merge "configure: check for -Wformat-security" 2121abafed86 configure: check for -Wformat-security 2122fbadb480 split monolithic picture.c into picture_{tools,psnr,rescale}.c 2123c76f07ec dec_neon/TransformAC3: initialize vector w/vcreate 2124bb4fc051 gif2webp: Allow single-frame animations 212546fd44c1 thread: remove harmless race on status_ in End() 21265a1a7264 Merge "configure: check for __builtin_bswapXX()" 21276781423b configure: check for __builtin_bswapXX() 21286450c48d configure: fix iOS builds 21296422e683 VP8LFillBitWindow: enable fast path for 32-bit builds 21304f7f52b2 VP8LFillBitWindow: respect WEBP_FORCE_ALIGNED 2131e458badc endian_inl.h: implement htoleXX with BSwapXX 2132f2664d1a endian_inl.h: add BSwap16 21336fbf5345 Merge "configure: add --enable-aligned" 2134dc0f479d configure: add --enable-aligned 21359cc69e2b Merge "configure: support WIC + OpenGL under mingw64" 2136257adfb0 remove experimental YUV444 YUV422 and YUV400 code 213710f4257c configure: support WIC + OpenGL under mingw64 2138380cca4f configure.ac: add AC_C_BIGENDIAN 2139ee70a901 endian_inl.h: add BSwap64 214047779d46 endian_inl.h: add BSwap32 2141d5104b1f utils: add endian_inl.h 214258ab6224 Merge "make alpha-detection loop in IsKeyFrame() in good x/y order" 21439d562902 make alpha-detection loop in IsKeyFrame() in good x/y order 2144516971b1 lossless: Remove unaligned read warning 2145b8b596f6 Merge "configure.ac: add an autoconf version prerequisite" 214634b02f8c configure.ac: add an autoconf version prerequisite 2147e59f5360 neon: normalize vdup_n_* usage 21486ee7160d Merge changes I0da7b3d3,Idad2f278,I4accc305 2149abc02f24 Merge "fix (uncompiled) typo" 2150bc03670f neon: add INIT_VECTOR4 21516c1c632b neon: add INIT_VECTOR3 2152dc7687e5 neon: add INIT_VECTOR2 21534536e7c4 add WebPMuxSetCanvasSize() to the mux API 2154824eab10 fix (uncompiled) typo 21551f3e5f1e remove unused 'shift' argument and QFIX2 define 21568e867051 Merge "VP8LoadNewBytes: use __builtin_bswap32 if available" 21571b6a2635 Merge "Fix handling of weird GIF with canvas dimension 0x0" 21581da3d461 VP8LoadNewBytes: use __builtin_bswap32 if available 21591582e402 Fix handling of weird GIF with canvas dimension 0x0 2160b8811dac Merge "rename interface -> winterface" 2161db8b8b5f Fix logic in the GIF LOOP-detection parsing 216225aaddc8 rename interface -> winterface 21635584d9d2 make WebPSetWorkerInterface() check its arguments 2164a9ef7ef9 Merge "cosmetics: update thread.h comments" 2165c6af9991 Merge "dust up the help message" 21660a8b8863 dust up the help message 2167a9cf3191 cosmetics: update thread.h comments 216827bfeee4 QuantizeBlock SSE2 Optimization: 21692bc0dc3e Merge "webpmux: warn when odd frame offsets are used" 21703114ebe4 Merge changes Id8edd3c1,Id418eb96,Ide05e3be 2171c0726634 webpmux: warn when odd frame offsets are used 2172c5c6b408 Merge "add alpha dithering for lossy" 2173d5146784 examples/Android.mk: add cwebp 2174ca0fa7c7 Android.mk: move dwebp to examples/Android.mk 217573d8fca0 Android.mk: add ENABLE_SHARED flag 21766e93317f muxread: fix out of bounds read 21778b0f6a48 Makefile.vc: fix CFLAGS assignment w/HAVE_AVX2=1 2178bbe32df1 add alpha dithering for lossy 217979020767 Merge "make error-code reporting consistent upon malloc failure" 218077bf4410 make error-code reporting consistent upon malloc failure 21817a93c000 **/Makefile.am: remove unused AM_CPPFLAGS 218224e30805 Add an interface abstraction to the WebP worker thread implementation 2183d6cd6358 Merge "fix orig_rect==NULL case" 21842bfd1ffa fix orig_rect==NULL case 2185059e21c1 Merge "configure: move config.h to src/webp/config.h" 2186f05fe006 properly report back encoding error code in WebPFrameCacheAddFrame() 218732b31379 configure: move config.h to src/webp/config.h 218890090d99 Merge changes I7c675e51,I84f7d785 2189ae7661b3 makefiles: define WEBP_HAVE_AVX2 when appropriate 219069fce2ea remove the special casing for res->first in VP8SetResidualCoeffs 21916e61a3a9 configure: test for -msse2 2192b9d2efc6 rename upsampling_mips32.c to yuv_mips32.c 2193bdfeebaa dsp/yuv: move sse2 functions to yuv_sse2.c 219446b32e86 Merge "configure: set WEBP_HAVE_AVX2 when available" 219588305db4 Merge "VP8RandomBits2: prevent signed int overflow" 219673fee88c VP8RandomBits2: prevent signed int overflow 2197db4860b3 enc_sse2: prevent signed int overflow 21983fdaf4d2 Merge "real fix for longjmp warning" 2199385e3340 real fix for longjmp warning 2200230a0555 configure: set WEBP_HAVE_AVX2 when available 2201a2ac8a42 restore original value_/range_ field order 22025e2ee56f Merge "remove libwebpdspdecode dep on libwebpdsp_avx2" 220361362db5 remove libwebpdspdecode dep on libwebpdsp_avx2 220442c447ae Merge "lossy bit-reader clean-up:" 2205479ffd8b Merge "remove unused #include's" 22069754d39a Merge "strong filtering speed-up (~2-3% x86, ~1-2% for NEON)" 2207158aff9b remove unused #include's 220809545eea lossy bit-reader clean-up: 2209ea8b0a17 strong filtering speed-up (~2-3% x86, ~1-2% for NEON) 22106679f899 Optimize VP8SetResidualCoeffs. 2211ac591cf2 fix for gcc-4.9 warnings about longjmp + local variables 22124dfa86b2 dsp/cpu: NaCl has no support for xgetbv 22134c398699 Merge "cwebp: fallback to native webp decode in WIC builds" 221433aa497e Merge "cwebp: add some missing newlines in longhelp output" 2215c9b340a2 fix missing WebPInitAlphaProcessing call for premultiplied colorspace output 221657897bae Merge "lossless_neon: use vcreate_*() where appropriate" 22176aa4777b Merge "(enc|dec)_neon: use vcreate_*() where appropriate" 22180d346e41 Always reinit VP8TransformWHT instead of hard-coding 22197d039fc3 cwebp: fallback to native webp decode in WIC builds 2220d471f424 cwebp: add some missing newlines in longhelp output 2221bf0e0030 lossless_neon: use vcreate_*() where appropriate 22229251c2f6 (enc|dec)_neon: use vcreate_*() where appropriate 2223399b916d lossy decoding: correct alpha-rescaling for YUVA format 222478c12ed8 Merge "Makefile.vc: add rudimentary avx2 support" 2225dc5b122f try to remove the spurious warning for static analysis 2226ddfefd62 Makefile.vc: add rudimentary avx2 support 2227a8911643 Merge "simplify VP8LInitBitReader()" 2228fdbcd44d simplify VP8LInitBitReader() 22297c004287 makefile.unix: add rudimentary avx2 support 2230515e35cf Merge "add stub dsp/enc_avx2.c" 2231a05dc140 SSE2: yuv->rgb speed-up for point-sampling 2232178e9a69 add stub dsp/enc_avx2.c 22331b99c09c Merge "configure: add a test for -mavx2" 2234fe728071 configure: add a test for -mavx2 2235e46a247c cpu: fix check for __cpuidex availability 2236176fda26 fix the bit-writer for lossless in 32bit mode 2237541784c7 dsp.h: add a check for AVX2 / define WEBP_USE_AVX2 2238bdb151ee dsp/cpu: add AVX2 detection 2239ab9f2f86 Merge "revamp the point-sampling functions by processing a full plane" 2240a2f8b289 revamp the point-sampling functions by processing a full plane 2241ef076026 use decoder's DSP functions for autofilter 22422b5cb326 Merge "dsp/cpu: add AVX detection" 2243df08e67e dsp/cpu: add AVX detection 2244e2f405c9 Merge "clean-up and slight speed-up in-loop filtering SSE2" 2245f60957bf clean-up and slight speed-up in-loop filtering SSE2 22469fc3ae46 .gitattributes: treat .ppm as binary 22473da924b5 Merge "dsp/WEBP_USE_NEON: test for __aarch64__" 2248c7164490 Android.mk: always include *_neon.c in the build 2249a577b23a dsp/WEBP_USE_NEON: test for __aarch64__ 225054bfffca move RemapBitReader() from idec.c to bit_reader code 225134168ecb Merge "remove all unused layer code" 2252f1e77173 remove all unused layer code 2253b0757db7 Code cleanup for VP8LGetHistoImageSymbols. 22545fe628d3 make the token page size be variable instead of fixed 8192 2255f948d08c memory debug: allow setting pre-defined malloc failure points 2256ca3d746e use block-based allocation for backward refs storage, and free-lists 22571ba61b09 enable NEON intrinsics in aarch64 builds 2258b9d2bb67 dsp/neon.h: coalesce intrinsics-related defines 2259b5c75258 iosbuild: add support for iOSv7/aarch64 22609383afd5 Reduce number of memory allocations while decoding lossless. 2261888e63ed Merge "dsp/lossless: prevent signed int overflow in left shift ops" 22628137f3ed Merge "instrument memory allocation routines for debugging" 22632aa18736 instrument memory allocation routines for debugging 2264d3bcf72b Don't allocate VP8LHashChain, but treat like automatic object 2265bd6b8619 dsp/lossless: prevent signed int overflow in left shift ops 2266b7f19b83 Merge "dec/vp8l: prevent signed int overflow in left shift ops" 226729059d51 Merge "remove some uint64_t casts and use." 2268e69a1df4 dec/vp8l: prevent signed int overflow in left shift ops 2269cf5eb8ad remove some uint64_t casts and use. 227038e2db3e MIPS: MIPS32r1: Added optimization for HistogramAdd. 2271e0609ade dwebp: fix exit code on webp load failure 2272bbd358a8 Merge "example_util.h: avoid forward declaring enums" 22738955da21 example_util.h: avoid forward declaring enums 22746d6865f0 Added SSE2 variants for Average2/3/4 2275b3a616b3 make HistogramAdd() a pointer in dsp 2276c8bbb636 dec_neon: relocate some inline-asm defines 22774e393bb9 dec_neon: enable intrinsics-only functions 2278ba99a922 dec_neon: use positive tests for USE_INTRINSICS 227969058ff8 Merge "example_util: add ExUtilDecodeWebPIncremental" 2280a7828e8b dec_neon: make WORK_AROUND_GCC conditional on version 22813f3d717a Merge "enc_neon: enable intrinsics-only functions" 2282de3cb6c8 Merge "move LOCAL_GCC_VERSION def to dsp.h" 22831b2fe14d example_util: add ExUtilDecodeWebPIncremental 2284ca49e7ad Merge "enc_neon: move Transpose4x4 to dsp/neon.h" 2285ad900abd Merge "fix warning about size_t -> int conversion" 22864825b436 fix warning about size_t -> int conversion 228742b35e08 enc_neon: enable intrinsics-only functions 2288f937e012 move LOCAL_GCC_VERSION def to dsp.h 22895e1a17ef enc_neon: move Transpose4x4 to dsp/neon.h 2290c7b92a5a dec_neon: (WORK_AROUND_GCC) delete unused Load4x8 22918e5f90b0 Merge "make ExUtilLoadWebP() accept NULL bitstream param." 229205d4c1b7 Merge "cwebp: add webpdec" 2293ddeb6ac8 cwebp: add webpdec 229435d7d095 Merge "Reduce memory footprint for encoding WebP lossless." 22950b896101 Reduce memory footprint for encoding WebP lossless. 2296f0b65c9a make ExUtilLoadWebP() accept NULL bitstream param. 22979c0a60cc Merge "dwebp: move webp decoding to example_util" 22981d62acf6 MIPS: MIPS32r1: Added optimization for HuffmanCost functions. 22994a0e7390 dwebp: move webp decoding to example_util 2300c0220460 Merge "Bugfix: Incremental decode of lossy-alpha" 23018c7cd722 Bugfix: Incremental decode of lossy-alpha 23027955152d MIPS: fix error with number of registers. 2303b1dabe37 Merge "Move the HuffmanCost() function to dsp lib" 230475b12006 Move the HuffmanCost() function to dsp lib 23052772b8bd MIPS: fix assembler error revealed by clang's debug build 23066653b601 enc_mips32: fix unused symbol warning in debug 23078dec1209 enc_mips32: disable ITransform(One) in debug builds 230898519dd5 enc_neon: convert Disto4x4 to intrinsics 2309fe9317c9 cosmetics: 2310953b0746 enc_neon: cosmetics 2311a9fc697c Merge "WIP: extract the float-calculation of HuffmanCost from loop" 23123f84b521 Merge "replace some mult-long (vmull_u8) with mult-long-accumulate (vmlal_u8)" 23134ae0533f MIPS: MIPS32r1: Added optimizations for ExtraCost functions. 2314b30a04cf WIP: extract the float-calculation of HuffmanCost from loop 2315a8fe8ce2 Merge "NEON intrinsics version of CollectHistogram" 231695203d2d NEON intrinsics version of CollectHistogram 23177ca2e74b replace some mult-long (vmull_u8) with mult-long-accumulate (vmlal_u8) 231841c6efbd fix lossless_neon.c 23198ff96a02 NEON intrinsics version of FTransform 23200214f4a9 Merge "MIPS: MIPS32r1: Added optimizations for FastLog2" 2321baabf1ea MIPS: MIPS32r1: Added optimizations for FastLog2 23223d49871d NEON functions for lossless coding 23233fe02915 MIPS: MIPS32r1: Added optimizations for SSE functions. 2324c503b485 Merge "fix the gcc-4.6.0 bug by implementing alternative method" 2325abe6f487 fix the gcc-4.6.0 bug by implementing alternative method 23265598bdec enc_mips32.c: fix file mode 23272b1b4d5a MIPS: MIPS32r1: Add optimization for GetResidualCost 2328f0a1f3cd Merge "MIPS: MIPS32r1: Added optimization for FTransform" 23297231f610 MIPS: MIPS32r1: Added optimization for FTransform 2330869eaf6c ~30% encoding speedup: use NEON for QuantizeBlock() 2331f758af6b enc_neon: convert FTransformWHT to intrinsics 23327dad095b MIPS: MIPS32r1: Added optimization for Disto4x4 (TTransform) 23332298d5f3 MIPS: MIPS32r1: Added optimization for QuantizeBlock 2334e88150c9 Merge "MIPS: MIPS32r1: Add optimization for ITransform" 2335de693f25 lossless_neon: disable VP8LConvert* functions 23364143332b NEON intrinsics for encoding 23370ca2914b MIPS: MIPS32r1: Add optimization for ITransform 233871bca5ec dec_neon: use vst_lane instead of vget_lane 2339bf061052 Intrinsics NEON version of TransformOne 234019c6f1ba Merge "dec_neon: use vld?_lane instead of vset?_lane" 23417a94c0cf upsampling_neon: drop NEON suffix from local functions 2342d14669c8 upsampling_sse2: drop SSE2 suffix from local functions 23432ca42a4f enc_sse2: drop SSE2 suffix from local functions 2344d038e619 dec_sse2: drop SSE2 suffix from local functions 2345fa52d752 dec_neon: use vld?_lane instead of vset?_lane 2346c520e77d cosmetic: fix long line 23474b0f2dae Merge "add intrinsics NEON code for chroma strong-filtering" 2348e351ec07 add intrinsics NEON code for chroma strong-filtering 2349aaf734b8 Merge "Add SSE2 version of forward cross-color transform" 2350c90a902e Add SSE2 version of forward cross-color transform 2351bc374ff3 Use histogram_bits to initalize transform_bits. 23522132992d Merge "Add strong filtering intrinsics (inner and outer edges)" 23535fbff3a6 Add strong filtering intrinsics (inner and outer edges) 2354d4813f0c Add SSE2 function for Inverse Cross-color Transform 235526029568 dec_neon: add strong loopfilter intrinsics 2356cca7d7ef Merge "add intrinsics version of SimpleHFilter16NEON()" 23571a05dfa7 windows: fix dll builds 2358d6c50d8a Merge "add some colorspace conversion functions in NEON" 23594fd7c82e SSE2 variants of Subtract-Green: Rectify loop condition 236097e5fac3 add some colorspace conversion functions in NEON 2361b9a7a45f add intrinsics version of SimpleHFilter16NEON() 2362daccbf40 add light filtering NEON intrinsics 2363af444608 fix typo in STORE_WHT 23646af6b8e1 Tune HistogramCombineBin for large images. 2365af93bdd6 use WebPSafe[CM]alloc/WebPSafeFree instead of [cm]alloc/free 236651f406a5 lossless_sse2: relocate VP8LDspInitSSE2 proto 23670f4f721b separate SSE2 lossless functions into its own file 2368514fc251 VP8LConvertFromBGRA: use conversion function pointers 23696d2f3527 dsp/dec: TransformDCUV: use VP8TransformDC 2370defc8e1b Merge "fix out-of-bound read during alpha-plane decoding" 2371fbed3643 Merge "dsp: reuse wht transform from dec in encoder" 2372d8467084 Merge "Add SSE2 version of ARGB -> BGR/RGB/... conversion functions" 2373207d03b4 fix out-of-bound read during alpha-plane decoding 2374d1b33ad5 2-5% faster trellis with clang/MacOS (and ~2-3% on ARM) 2375369c26dd Add SSE2 version of ARGB -> BGR/RGB/... conversion functions 2376df230f27 dsp: reuse wht transform from dec in encoder 237780e218d4 Android.mk: fix build with APP_ABI=armeabi-v7a-hard 237859daf083 Merge "cosmetics:" 237953622008 cosmetics: 23803e7f34a3 AssignSegments: quiet array-bounds warning 23813c2ebf58 Merge "UpdateHistogramCost: avoid implicit double->float" 2382cf821c82 UpdateHistogramCost: avoid implicit double->float 2383312e638f Extend the search space for GetBestGreenRedToBlue 23841c58526f Fix few nits 2385fef22704 Optimize and re-structure VP8LGetHistoImageSymbols 2386068b14ac Optimize lossless decoding. 23875f0cfa80 Do a binary search to get the optimum cache bits. 238824ca3678 Merge "allow 'cwebp -o -' to emit output to stdout" 2389e12f874e allow 'cwebp -o -' to emit output to stdout 23902bcad89b allow some more stdin/stout I/O 239184ed4b3a fix cwebp.1 typos after patch #69199 239265b99f1c add a -z option to cwebp, and WebPConfigLosslessPreset() function 239330176619 4-5% faster trellis by removing some unneeded calculations. 2394687a58ec histogram.c: reindent after b33e8a0 239506d456f6 Merge "~3-4% faster lossless encoding" 2396c60de260 ~3-4% faster lossless encoding 239742eb06fc Merge "few cosmetics after patch #69079" 239882af8264 few cosmetics after patch #69079 2399b33e8a05 Refactor code for HistogramCombine. 2400ca1bfff5 Merge "5-10% encoding speedup with faster trellis (-m 6)" 24015aeeb087 5-10% encoding speedup with faster trellis (-m 6) 240282ae1bf2 cosmetics: normalize VP8GetCPUInfo checks 2403e3dd9243 Merge "Refactor GetBestPredictorForTile for future tuning." 2404206cc1be Refactor GetBestPredictorForTile for future tuning. 24053cb84062 Merge "speed-up trellis quant (~5-10% overall speed-up)" 2406b66f2227 Merge "lossy encoding: ~3% speed-up" 24074287d0d4 speed-up trellis quant (~5-10% overall speed-up) 2408390c8b31 lossy encoding: ~3% speed-up 24099a463c4a Merge "dec_neon: convert TransformWHT to intrinsics" 2410e8605e96 Merge "dec_neon: add ConvertU8ToS16" 24114aa3e412 MIPS: MIPS32r1: rescaler bugfix 2412c16cd99a Speed up lossless encoder. 24139d6b5ff1 dec_neon: convert TransformWHT to intrinsics 24142ff0aae2 dec_neon: add ConvertU8ToS16 241577a8f919 fix compilation with USE_YUVj flag 24164acbec1b Merge changes I3b240ffb,Ia9370283,Ia2d28728 24172719bb7e dec_neon: TransformAC3: work on packed vectors 2418b7b60ca1 dec_neon: add SaturateAndStore4x4 2419b7685d73 Rescale: let ImportRow / ExportRow be pointer-to-function 2420e02f16ef dec_neon.c: convert TransformDC to intrinsics 24219cba963f add missing file 24228992ddb7 use static clipping tables 24230235d5e4 1-2% faster quantization in SSE2 2424b2fbc36c fix VC12-x64 warning 24256e37cb94 Merge "cosmetics: backward_references.c: reindent after a7d2ee3" 2426a42ea974 cosmetics: backward_references.c: reindent after a7d2ee3 24276c327442 Merge "fix missing __BIG_ENDIAN__ definition on some platform" 2428a8b6aad1 fix missing __BIG_ENDIAN__ definition on some platform 2429fde2904b Increase initial buffer size for VP8L Bit Writer. 2430a7d2ee39 Optimize cache estimate logic. 24317fb6095b Merge "dec_neon.c: add TransformAC3" 2432bf182e83 VP8LBitWriter: use a bit-accumulator 24333f40b4a5 Merge "MIPS: MIPS32r1: clang macro warning resolved" 24341684f4ee WebP Decoder: Mark some truncated bitstreams as invalid 2435acbedac4 MIPS: MIPS32r1: clang macro warning resolved 2436228e4877 dec_neon.c: add TransformAC3 2437393f89b7 Android.mk: avoid gcc-specific flags with clang 243832aeaf11 revamp VP8LColorSpaceTransform() a bit 24390c7cc4ca Merge "Don't dereference NULL, ensure HashChain fully initialized" 2440391316fe Don't dereference NULL, ensure HashChain fully initialized 2441926ff402 WEBP_SWAP_16BIT_CSP: remove code dup 24421d1cd3bb Fix decode bug for rgbA_4444/RGBA_4444 color-modes. 2443939e70e7 update AUTHORS file 24448934a622 cosmetics: *_mips32.c 2445dd438c9a MIPS: MIPS32r1: Optimization of some simple point-sampling functions. PATCH [6/6] 244653520911 Added support for calling sampling functions via pointers. 2447d16c6974 MIPS: MIPS32r1: Optimization of filter functions. PATCH [5/6] 244804336fc7 MIPS: MIPS32r1: Optimization of function TransformOne. PATCH [4/6] 244992d8fc7d MIPS: MIPS32r1: Optimization of function WebPRescalerImportRow. PATCH [3/6] 2450bbc23ff3 parse one row of intra modes altogether 2451a2f608f9 Merge "MIPS: MIPS32r1: Optimization of function WebPRescalerExportRow. [2/6]" 245288230854 MIPS: MIPS32r1: Optimization of function WebPRescalerExportRow. [2/6] 2453c5a5b028 decode mt+incremental: fix segfault in debug builds 24549882b2f9 always use fast-analysis for all methods. 2455000adac0 Merge "autoconf: update ax_pthread.m4" 24562d2fc37d update .gitignore 24575bf4255a Merge "Make it possible to avoid automagic dependencies" 2458c1cb1933 disable NEON for arm64 platform 245973a304e9 Make it possible to avoid automagic dependencies 24604d493f8d MIPS: MIPS32r1: Decoder bit reader function optimized. PATCH [1/6] 2461c741183c make WebPCleanupTransparentArea work with argb picture 24625da18552 add a decoding option to flip image vertically 246300c3c4e1 Merge "add man/vwebp.1" 24642c6bb428 add man/vwebp.1 2465ea59a8e9 Merge "Merge tag 'v0.4.0'" 24667574bed4 fix comments related to array sizes 24670b5a90fd dwebp.1: fix option formatting 2468effcb0fd Merge tag 'v0.4.0' 24697c76255d autoconf: update ax_pthread.m4 2470fff2a11b make -short work with -print_ssim, -print_psnr, etc. 247168e7901d update ChangeLog (tag: v0.4.0-rc1, tag: v0.4.0, origin/0.4.0) 2472256e4333 update NEWS description with new general features 247329625340 Merge "gif2webp: don't use C99 %zu" into 0.4.0 24743b9f9dd0 gif2webp: don't use C99 %zu 2475b5b2e3c7 cwebp: fix metadata output w/lossy+alpha 2476ad26df1a makefile.unix: clean up libgif2webp_util.a 2477c3b45570 update Changelog 2478ca841121 Merge "bump version to 0.4.0" into 0.4.0 24798c524db8 bump version to 0.4.0 2480eec2398c update AUTHORS & .mailmap 2481b9bbf6a1 update NEWS for 0.4.0 2482c72e0811 Merge "dec/webp.c: don't wait for data before reporting w/h" 24835ad65314 dec/frame.c: fix formatting 2484f7fc4bc8 dec/webp.c: don't wait for data before reporting w/h 248566a32af5 Merge "NEON speed up" 248626d842eb NEON speed up 2487f307f98b Merge "webpmux: let -- stop parameter parsing" 2488fe051da7 Merge "README: add a section on gif2webp" 24896fd2bd62 Merge "manpage pedantry" 24904af19007 README: add a section on gif2webp 24916f36ade9 manpage pedantry 2492f9016cb9 README: update dwebp options 2493b4fa0a47 webpmux: let -- stop parameter parsing 2494a9a20acf gif2webp: Add a multi-threaded encode option 2495495bef41 fix bug in TrellisQuantize 2496605a7127 simplify __cplusplus ifdef 249733109f99 Merge "drop: ifdef __cplusplus checks from C files" 24987f9de0b9 Merge changes I994a5587,I8467bb71,I13b50688,I1e2c9c7b 24995459030b gif2webp: let -- stop parameter parsing 2500a4b0aa06 vwebp: let -- stop parameter parsing 250198af68fe cwebp: let -- stop parameter parsing 2502a33831e2 dwebp: let -- stop parameter parsing 250336301249 add some checks on error paths 2504ce4c7139 Merge "autoconf: add --disable-wic" 25055227d991 drop: ifdef __cplusplus checks from C files 2506f6453559 dwebp.1: fix typo 2507f91034f2 Merge "cwebp: print metadata stats when no output file is given" 2508d4934553 gif2webp: Backward compatibility for giflib version <= 4.1.3 25094c617d32 gif2webp: Disable output of ICC profile by default 251073b731fb introduce a special quantization function for WHT 251141c0cc4b Make Forward WHT transform use 32bit fixed-point calculation 2512a3359f5d Only compute quantization params once 251370490437 cwebp: print metadata stats when no output file is given 2514d513bb62 * fix off-by-one zthresh calculation * remove the sharpening for non luma-AC coeffs * adjust the bias a little bit to compensate for this 2515ad9dec0c Merge "cosmetics: dwebp: fix local function name format" 2516f737f037 Merge "dwebp: remove a dead store" 25173c3a70da Merge "makefile.unix: install binaries in $(DESTDIR)/bin/" 2518150b655f Merge "Android.mk: add some release compile flags" 2519dbebd33b cosmetics: dwebp: fix local function name format 252027749951 dwebp: remove a dead store 2521a01e04fe autoconf: add --disable-wic 25225009b227 makefile.unix: install binaries in $(DESTDIR)/bin/ 2523bab30fca Merge "fix -print_psnr / ssim options" 2524ebef7fb3 fix -print_psnr / ssim options 2525cb637855 Merge "fix bug due to overzealous check in WebPPictureYUVAToARGB()" 25268189885b Merge "EstimateBestFilter: use an int to iterate WEBP_FILTER_TYPE" 25274ad7d335 Android.mk: add some release compile flags 2528c12e2369 cosmetics: fix a few typos 25296f104034 fix bug due to overzealous check in WebPPictureYUVAToARGB() 25303f6c35c6 EstimateBestFilter: use an int to iterate WEBP_FILTER_TYPE 2531cc55790e Merge changes I8bb7a4dc,I2c180051,I021a014f,I8a224a62 2532c536afb5 Merge "cosmetics: fix some typos" 2533cbdd3e6e add a -dither dithering option to the decoder 2534e8124012 Updated iosbuild.sh for XCode 5.x 25354931c329 cosmetics: fix some typos 253605aacf77 mux: add some missing casts 2537617d9348 enc/vp8l: add a missing cast 253846db2865 idec: add some missing casts 2539b524e336 ErrorStatusLossless: correct return type 2540cb261f79 fix a descaling bug for vertical/horizontal U/V interpolation 2541bcb3955c Merge changes I48968468,I181bc736 254273f52133 gif2webp: Add a mixed compression mode 25436198715e demux: split chunk parsing from ParseVP8X 2544d2e3f4e6 demux: add a tail pointer for chunks 254587cffcc3 demux: cosmetics: s/has_frames/is_animation/ 2546e18e6677 demux: strictly enforce the animation flag 2547c4f39f4a demux: cosmetics: remove a useless break 254861cb884d demux: (non-exp) fail if the fragmented flag is set 2549ff379db3 few % speedup of lossless encoding 2550df3649a2 remove all disabled code related to P-frames 25516d0cb3de Merge "gif2webp: kmin = 0 should suppress key-frame addition." 255236555983 gif2webp: kmin = 0 should suppress key-frame addition. 25537708e609 Merge "detect flatness in blocks and favor DC prediction" 255406b1503e Merge "add comment about the kLevelsFromDelta[][] LUT generation" 25555935259c add comment about the kLevelsFromDelta[][] LUT generation 2556e3312ea6 detect flatness in blocks and favor DC prediction 2557ebc9b1ee Merge "VPLBitReader bugfix: Catch error if bit_pos > LBITS too." 255896ad0e0a VPLBitReader bugfix: Catch error if bit_pos > LBITS too. 2559a014e9c9 tune quantization biases toward higher precision 25601e898619 add helpful PrintBlockInfo() function 2561596a6d73 make use of 'extern' consistent in function declarations 2562c8d48c6e Merge "extract random utils to their own file util/random.[ch]" 256398aa33cf extract random utils to their own file util/random.[ch] 2564432a723e Merge "swig: add basic go bindings" 2565fab618b5 Merge "rename libwebp.i -> libwebp.swig" 2566e4e7fcd6 swig: add basic go bindings 2567d3408720 Merge "fast auto-determined filtering strength" 2568f8bfd5cd fast auto-determined filtering strength 2569ac0bf951 small clean-up in ExpandMatrix() 25701939607e rename libwebp.i -> libwebp.swig 257143148b6c filtering: precompute ilimit and hev_threshold 257218f992ec simplify f_inner calculation a little 2573241d11f1 add missing const 257486c0031e add a 'format' field to WebPBitstreamFeatures 2575dde91fde Demux: Correct the extended format validation 25765d6c5bd2 add entry for '-resize' option in cwebp's man 25777c098d18 Use some gamma-curve range compression when computing U/V average 25780b2b0504 Use deterministic random-dithering during RGB->YUV conversion 25798a2fa099 Add a second multi-thread method 25807d6f2da0 Merge "up to 20% faster multi-threaded decoding" 2581266f63ea Merge "libwebp.jar: build w/Java 1.6 for Android compat" 25820532149c up to 20% faster multi-threaded decoding 258338efdc2e Simplify the gif2webp tool: move the optimization details to util 2584de899516 libwebp.jar: build w/Java 1.6 for Android compat 2585cb221552 Decode a full row of bitstream before reconstructing 2586dca8a4d3 Merge "NEON/simple loopfilter: avoid q4-q7 registers" 25879e84d901 Merge "NEON/TransformWHT: avoid q4-q7 registers" 2588fc10249b NEON/simple loopfilter: avoid q4-q7 registers 25892f09d63e NEON/TransformWHT: avoid q4-q7 registers 259077585a2b Merge "use a macrofunc for setting NzCoeffs bits" 2591d155507c Merge "use HINT_GRAPH as image_hint for gif source" 25929c561646 Merge "only print GIF_DISPOSE_WARNING once" 259305879865 use HINT_GRAPH as image_hint for gif source 25940b28d7ab use a macrofunc for setting NzCoeffs bits 2595f9bbc2a0 Special-case sparse transform 259600125196 gif2webp: detect and flatten uniformly similar blocks 25970deaf0fa only print GIF_DISPOSE_WARNING once 25986a8c0eb7 Merge "small optimization in segment-smoothing loop" 2599f7146bc1 small optimization in segment-smoothing loop 26005a7533ce small gif2webp fix 26014df0c89e Merge changes Ic697660c,I27285521 26025b2e6bd3 Android.mk: add a dwebp target 2603f910a84e Android.mk: update build flags 260463f9aba4 special-case WHT transform when there's only DC 260580911aef Merge "7-8% faster decoding by rewriting GetCoeffs()" 2606606c4304 gif2webp: Improved compression for lossy animated WebP 2607fb887f7f gif2webp: Different kmin/kmax defaults for lossy and lossless 26082a981366 7-8% faster decoding by rewriting GetCoeffs() 260992d47e4c improve VP8L signature detection by checking the version bits too 26105cd43e43 Add -incremental option to dwebp 261154b8e3f6 webpmux: DisplayInfo(): remove unnecessary error checks. 261240ae3520 fix memleak in WebPIDelete() 2613d9662658 mux.h doc: WebPMuxGetFrame() can return WEBP_MUX_MEMORY_ERROR too. 26140e6747f8 webpmux -info: display dimensions and has_alpha per frame 2615d78a82c4 Sanity check for underflow 26168498f4bf Merge "remove -Wshadow warnings" 2617e89c6fc8 Avoid a potential memleak 26183ebe1757 Merge "break down the proba 4D-array into some handy structs" 26196a44550a break down the proba 4D-array into some handy structs 26202f5e8934 remove -Wshadow warnings 2621bf3a29b3 Merge "add proper WEBP_HAVE_GIF and WEBP_HAVE_GL flags" 26222b0a7593 Merge "fix some warnings from static analysis" 262322dd07ce mux.h: Some doc corrections 262479ff0346 add proper WEBP_HAVE_GIF and WEBP_HAVE_GL flags 2625d51f45f0 fix some warnings from static analysis 2626d134307b fix conversion warning on MSVC 2627d538cea8 gif2webp: Support a 'min' and 'max' key frame interval 262880b54e1c allow search with token buffer loop and fix PARTITION0 problem 2629b7d4e042 add VP8EstimateTokenSize() 263010fddf53 enc/quant.c: silence a warning 2631399cd456 Merge "fix compile error on ARM/gcc" 26329f24519e encoder: misc rate-related fixes 2633c663bb21 Merge "simplify VP8IteratorSaveBoundary() arg passing" 2634fa46b312 Demux.h: Correct a method name reference 2635f8398c9d fix compile error on ARM/gcc 2636f691f0e4 simplify VP8IteratorSaveBoundary() arg passing 263742542be8 up to 6% faster encoding with clang compiler 263893402f02 multi-threaded segment analysis 26397e2d6595 Merge "remove the PACK() bit-packing tricks" 2640c13fecf9 remove the PACK() bit-packing tricks 26412fd091c9 Merge "use NULL for lf_stats_ testing, not bool" 2642b11c9d62 dwebp: use default dct_method 26434bb8465f Merge "(de)mux.h: wrap pseudo-code in /* */" 2644cfb56b17 make -pass option work with token buffers 26455416aab4 (de)mux.h: wrap pseudo-code in /* */ 264635dba337 use NULL for lf_stats_ testing, not bool 2647733a7faa enc->Iterator memory cleanup 2648e81fac86 Add support for "no blend" in webpmux binary 26493b80bc48 gif2webp: Separate out each step into a method 2650bef7e9cc Add doc precision about demux object keeping pointers to data. 265161405a14 dwebp: enable stdout output with WIC 26526eabb886 Merge "Animated WebP: add "do no blend" option to spec" 2653be20decb fix compilation for BITS 24 2654e58cc137 Merge "dwebp: s/unsigned char/uint8_t/" 265572501d43 dwebp: s/unsigned char/uint8_t/ 26562c9633e8 Merge "gif2webp: Insert independent frames at regular intervals." 2657f0d6a14b gif2webp: Insert independent frames at regular intervals. 2658b25a6fbf yuv.h: fix indent 2659ede3602e Merge "cosmetics: fix indent" 26603a65122a dwebp: fix stdout related output 2661388a7249 cosmetics: fix indent 26624c7322c8 Merge "dsp: msvc compatibility" 2663d50c7e32 Merge "5-7% faster SSE2 versions of YUV->RGB conversion functions" 2664b8ab7847 Merge "simplify upsampler calls: only allow 'bottom' to be NULL" 2665df6cebfa 5-7% faster SSE2 versions of YUV->RGB conversion functions 2666ad6ac32d simplify upsampler calls: only allow 'bottom' to be NULL 2667a5e8afaf output to stdout if file name is "-" 2668f358450f dsp: msvc compatibility 266943a7c8eb Merge "cosmetics" 26704c5f19c1 Merge "bit_reader.h: cosmetics" 2671f72fab70 cosmetics 267214dd5e78 fix const-ness 2673b20aec49 Merge "Support for 'do not blend' option in vwebp" 2674dcf65222 Support for 'do not blend' option in vwebp 2675d5bad033 Animated WebP: add "do no blend" option to spec 2676a2f5f73d Merge "Support for "Do not blend" in mux and demux libraries" 2677e081f2f3 Pack code & extra_bits to Struct (VP8LPrefixCode). 26786284854b Support for "Do not blend" in mux and demux libraries 2679f486aaa9 Merge "slightly faster ParseIntraMode" 2680d1718632 slightly faster ParseIntraMode 26813ceca8ad bit_reader.h: cosmetics 268269257f70 Create LUT for PrefixEncode. 2683988b7084 add WebPWorkerExecute() for convenient bypass 268406e24987 Merge "VP8EncIterator clean-up" 2685de4d4ad5 VP8EncIterator clean-up 26867bbe9529 Merge "cosmetics: thread.c: drop a redundant comment" 2687da411485 cosmetics: thread.c: drop a redundant comment 2688feb4b6e6 thread.h: #ifdef when checking WEBP_USE_THREAD 26898924a3a7 thread.c: drop WebPWorker prefix from static funcs 26901aed8f2a Merge "fix indent" 26914038ed15 fix indent 26921693fd9b Demux: A new state WEBP_DEMUX_PARSE_ERROR 26938dcae8b3 fix rescaling-with-alpha inaccuracy 269411249abf Merge changes I9b4dc36c,I4e0eef4d 269552508a1f Mux: support parsing unknown chunks within a frame/fragment. 269605db0572 WebPMuxSetChunk: remove unused variable 26978ba1bf61 Stricter check for presence of alpha when writing lossless images 2698a03c3516 Demux: WebPIterator now also denotes if the frame has alpha. 26996df743a3 Decoder: handle fragments case correctly too. 2700faa4b07e Support for unknown chunks in mux library 27017d60bbc6 Speed up HashChainFindCopy function. 270266740140 Speedup Alpha plane encoding. 2703b7346a1e 0.1 % speedup to decoding 2704c606182e webp-container-spec: Tighten language added by last 2705a34a5029 pngdec: output error messages from libpng 2706e84c625d Merge "Detect canvas and image size mismatch in decoder." 2707f626fe2e Detect canvas and image size mismatch in decoder. 2708f5fbdee0 demux: stricter image bounds check 270930c8158a add extra assert in Huffman decode code 27108967b9f3 SSE2 for lossless decoding (critical) functions. 2711699d80ea Jump-lookup for Huffman coding 2712c34307ab fix some VS9 warnings about type conversion 2713eeada35c pngdec: add missing include 271454b65108 gif2webp: If aligning to even offsets, extra pixels should be transparent 27150bcf5ce3 Merge "remove a malloc() in case we're using only FILTER_NONE for alpha" 27162c07143b remove a malloc() in case we're using only FILTER_NONE for alpha 2717a4d5f59d Faster lossless decoding 2718fd53bb75 Merge "alternate LUT-base reverse-bits code" 2719d1c166ef Merge "Container spec: a clarification on background color." 2720fdb91779 Rename a method 27215e967532 Container spec: a clarification on background color. 272230e77d0f Merge branch '0.3.0' 27231b631e29 alternate LUT-base reverse-bits code 272424cc307a ~20% faster lossless decoding 2725313d853f Speedup for decoding lossless WebP photographs: 272624ee098a change the bytes_per_pixels_ field into more evocative use_8b_decode 27272a04b034 update ChangeLog (tag: v0.3.1-rc2, tag: v0.3.1) 27287288950b Regression fix for alpha channels using color cache: 27292e377b53 wicdec: silence a format warning 2730ad9e42a6 muxedit: silence some uninitialized warnings 27313307c163 Don't set alpha-channel to 0xff for alpha->green uplift 27325130770c Merge "wicdec: silence a format warning" 2733a37eff47 Regression fix for alpha channels using color cache: 2734241cf99b Merge "muxedit: silence some uninitialized warnings" 2735c8f9c84d Regression fix for alpha unfiltering: 273614cd5c6c muxedit: silence some uninitialized warnings 2737a368db81 dec/vp8l: quiet vs9 x64 type conversion warning 2738ffae9f31 wicdec: silence a format warning 27398cf0701e Alpha encoding: never filter in case of NO_COMPRESSION 2740825e73b1 update ChangeLog (tag: v0.3.1-rc1) 2741abf6f691 update NEWS 27425a92c1a5 bump version to 0.3.1 274386daf77c store top Y/U/V samples in packed fashion 274467bc353e Revert "add WebPBlendAlpha() function to blend colors against background" 2745068db59e Intertwined decoding of alpha and RGB 274638cc0114 Simplify forward-WHT + SSE2 version 27473fa595a5 Support decoding upto given row in DECODE_DATA_FUNC 2748520f005f DequantizeLevels(): Add 'row' and 'num_rows' args 274947374b82 Alpha unfilter for given set of rows 2750f32097e0 probe input file and quick-check for WebP format. 2751a2aed1d0 configure: improve gl/glut library test 2752c7e89cbb update copyright text 2753a00380d2 configure: remove use of AS_VAR_APPEND 2754a94a88dd fix EXIF parsing in PNG 2755a71e5d84 add doc precision for WebPPictureCopy() and WebPPictureView() 27568287012e remove datatype qualifier for vmnv 2757e1908430 fix a memory leak in gif2webp 27580b18b9ee fix two minor memory leaks in webpmux 2759db5095d5 remove some cruft from swig/libwebp.jar 2760850e956f README: update swig notes 2761bddd9b0a swig/python: add minimal documentation 2762d573a8d5 swig: add python encode support 27636b931875 swig/java: reduce wrapper function code duplication 27646fe536f4 swig/java: rework uint8_t typemap 2765a2ea4643 Fix the bug in ApplyPalette. 27667bb28d2a webp/lossless: fix big endian BGRA output 2767f036d4bf Speed up ApplyPalette for ARGB pixels. 27688112c8cf remove some warnings: 2769cc128e0b Further reduce memory to decode lossy+alpha images 277007db70d2 fix for big-endian 2771eda8a7de gif2webp: Fix signed/unsigned comparison mismatch 277231f346fe Makefile.vc: fix libwebpdemux dll variable typo 27736c76d28e swig: add python (decode) support 2774b4f5bb6c swig: cosmetics 2775498d4dd6 WebP-Lossless encoding improvements. 277626e72442 swig: ifdef some Java specific code 27778ecec686 configure: add warning related flags 2778e676b043 configure: add GLUT detection; build vwebp 2779b0ffc437 Alpha decoding: significantly reduce memory usage 278020aa7a8d configure: add --enable-everything 2781b8307cc0 configure.ac: add some helper macros 2782980e7ae9 Remove the gcc compilation comments 27837f25ff99 gif2webp: Fix ICC and XMP support 2784d8e53211 Add missing name to AUTHORS 278511edf5e2 Demux: Fix a potential memleak 2786c7b92184 don't forward declare enums 27877a650c6a prevent signed int overflow in left shift ops 278831bea324 add precision about dynamic output reallocation with IDecoder 2789c22877f7 Add incremental support for extended format files 27905051245f Makefile.vc: have 'all' target build everything 27918191deca Makefile.vc: flags cleanup 2792b9d74735 Makefile.vc: drop /FD flag 27935568dbcf update gitignore 2794f4c7b654 WebPEncode: An additional check. Start VP8EncLoop/VP8EncTokenLoop only if VP8EncStartAlpha succeeded. 27951fb04bec pngdec: Avoid a double-free. 2796dcbb1ca5 add WebPBlendAlpha() function to blend colors against background 2797bc9f5fbe configure.ac: add AM_PROG_AR for automake >= 1.12 2798bf867bf2 Tuned cross_color parameter (step) for lower qual 279990e2ec5a Merge "probe input file and quick-check for WebP format." 28007180d7ff Merge "update copyright text" 2801830f72b7 probe input file and quick-check for WebP format. 28022ccf58d6 configure: improve gl/glut library test 2803d640614d update copyright text 2804c2113ad4 Merge "configure: remove use of AS_VAR_APPEND" 28059326a56f configure: remove use of AS_VAR_APPEND 2806ea63d619 fix a type warning on VS9 x86 2807bec11092 fix EXIF parsing in PNG 2808b6e65f3d Merge "fix warnings for vs9 x64" 2809438946dc fix warnings for vs9 x64 2810f4710e3b collect macroblock reconstruction data in VP8MBData struct 281123d28e21 add doc precision for WebPPictureCopy() and WebPPictureView() 2812518f2cd7 cosmetics: gif2webp: fix indent 2813af358e68 Merge "remove datatype qualifier for vmnv" 28143fe91635 remove datatype qualifier for vmnv 2815764fdffa fix a memory leak in gif2webp 28163e59a74d fix two minor memory leaks in webpmux 281747b9862f Merge "README: update swig notes" 2818325d15ff remove some cruft from swig/libwebp.jar 28194a7627c2 README: update swig notes 28205da81e33 Merge "swig/python: add minimal documentation" 2821f39e08f2 Merge "swig: add python encode support" 28226ca4a3e3 Merge "swig/java: reduce wrapper function code duplication" 28238f8702b0 Merge "swig/java: rework uint8_t typemap" 282491413be2 reduce memory for VP8MB and remove bitfields use 28257413394e Fix the memory leak in ApplyFilters. 28262053c2cf simplify the alpha-filter testing loop 2827825b64db swig/python: add minimal documentation 282814677e11 swig: add python encode support 2829a5c297c8 swig/java: reduce wrapper function code duplication 2830ad4a367d swig/java: rework uint8_t typemap 28310d25876b use uint8_t for inv_palette[] 2832afa3450c Fix the bug in ApplyPalette. 28332d6ac422 Merge "webp/lossless: fix big endian BGRA output" 28342ca83968 webp/lossless: fix big endian BGRA output 2835742110cc Speed up ApplyPalette for ARGB pixels. 28362451e47d misc code cleanup 283783db4043 Merge "swig: add python (decode) support" 2838eeeea8b5 Merge "swig: cosmetics" 2839d5f9b8f3 Merge "libwebp: fix vp8 encoder mem alloc offsetting" 2840d8edd835 libwebp: fix vp8 encoder mem alloc offsetting 28418983b83e remove use of bit-fields in VP8FInfo 284287a4fca2 remove some warnings: 2843ba8f74e2 Merge "fix for big-endian" 2844a65067fa Merge "Further reduce memory to decode lossy+alpha images" 284564c84486 Further reduce memory to decode lossy+alpha images 2846332130b9 Mux: make a few methods static 284744370617 fix for big-endian 28485199eab5 Merge "add uncompressed TIFF output support" 2849a3aede97 add uncompressed TIFF output support 2850f975b67f Merge "gif2webp: Fix signed/unsigned comparison mismatch" 28515fbc734b Merge "GetFeatures: Detect invalid VP8X/VP8/VP8L data" 2852d5060c87 Merge "mux.h: A comment fix + some consistency fixes" 2853352d0dee GetFeatures: Detect invalid VP8X/VP8/VP8L data 28543ef79fef Cosmetic: "width * height" 2855043e1ae4 gif2webp: Fix signed/unsigned comparison mismatch 28565818cff7 mux.h: A comment fix + some consistency fixes 28571153f888 Merge "swig: ifdef some Java specific code" 28583eeedae1 Makefile.vc: fix libwebpdemux dll variable typo 2859f980faf4 swig: add python (decode) support 28607f5f42bb swig: cosmetics 28618eae188a WebP-Lossless encoding improvements. 2862c7247c4c swig: ifdef some Java specific code 28634cb234d5 Merge "Mux: make ValidateForSingleImage() method static" 2864ed6f5308 Merge "Add GetCanvasSize() method to mux" 28651d530c9a Mux: make ValidateForSingleImage() method static 2866bba4c2b2 configure: add warning related flags 2867fffefd18 Add GetCanvasSize() method to mux 2868732da8d0 Merge "configure: add GLUT detection; build vwebp" 28690e513f7a configure: add GLUT detection; build vwebp 287055d1c150 Merge "Alpha decoding: significantly reduce memory usage" 287113d99fb5 Merge "configure: add --enable-everything" 28722bf698fe Merge "configure.ac: add some helper macros" 2873edccd194 Alpha decoding: significantly reduce memory usage 28743cafcc9a configure: add --enable-everything 28754ef14477 configure.ac: add some helper macros 2876a4e1cdbb Remove the gcc compilation comments 28776393fe4b Cosmetic fixes 28789c4ce971 Simplify forward-WHT + SSE2 version 2879878b9da5 fix missed optim 288000046171 VP8GetInfo(): Check for zero width or height. 28819bf31293 align VP8Encoder::nz_ allocation 28825da165cf fix CheckMode() signature 28830ece07dc Merge "explicitly pad bitfields to 32-bits" 28849dbc9d19 explicitly pad bitfields to 32-bits 28855369a80f Merge "prevent signed int overflow in left shift ops" 288670e39712 Merge "cosmetics: remove unnecessary ';'s" 2887d3136ce2 Merge "don't forward declare enums" 2888b26e5ad5 gif2webp: Fix ICC and XMP support 288946089b20 Add missing name to AUTHORS 289094328d64 Demux: Fix a potential memleak 289196e948d7 don't forward declare enums 2892f4f90880 prevent signed int overflow in left shift ops 28930261545e cosmetics: remove unnecessary ';'s 28947ebdf110 Merge "Fix few missing comparisons to NULL" 28951579989e Fix few missing comparisons to NULL 2896ea1b21cf Cleaned up VP8GetHeaders() so that it parses only frame header 2897b66caee4 dwebp: add support for BMP output 2898ff885bfe add precision about dynamic output reallocation with IDecoder 289979241d5a Merge "Makefile.vc: have 'all' target build everything" 2900ac1c729b Merge "Makefile.vc: flags cleanup" 2901118a055c Merge "Makefile.vc: drop /FD flag" 2902ecad0109 Merge "update gitignore" 2903a681b4f4 Rename PRE_VP8 state to WEBP_HEADER 2904ead4d478 Add incremental support for extended format files 290569d0f926 Makefile.vc: have 'all' target build everything 290652967498 Makefile.vc: flags cleanup 2907c61baf0c Makefile.vc: drop /FD flag 29083a15125d update gitignore 29095167ca47 Merge "WebPEncode: An additional check. Start VP8EncLoop/VP8EncTokenLoop only if VP8EncStartAlpha succeeded." 291067708d67 WebPEncode: An additional check. Start VP8EncLoop/VP8EncTokenLoop only if VP8EncStartAlpha succeeded. 2911b68912af pngdec: Avoid a double-free. 291282abbe12 Merge "configure.ac: add AM_PROG_AR for automake >= 1.12" 2913e7d9548c add WebPBlendAlpha() function to blend colors against background 2914ed4dc717 configure.ac: add AM_PROG_AR for automake >= 1.12 2915df4a406d Merge branch '0.3.0' 29161e0d4b8c Update ChangeLog (tag: v0.3.0-rc7, tag: v0.3.0) 2917d52b405d Cosmetic fixes 29186cb4a618 misc style fix 291968111ab0 add missing YUVA->ARGB automatic conversion in WebPEncode() 2920e9a7990b Cosmetic fixes 2921403bfe82 Container spec: Clarify frame disposal 29222aaa423b Merge "add missing YUVA->ARGB automatic conversion in WebPEncode()" 292307d87bda add missing YUVA->ARGB automatic conversion in WebPEncode() 2924142c4629 misc style fix 29253e7a13a0 Merge "Container spec: clarify the background color field" into 0.3.0 292614af7745 container doc: add a note about the 'ANMF' payload 2927cc635efa Container spec: clarify the background color field 2928e3e33949 container doc: move RIFF description to own section 29294299f398 libwebp/mux: fix double free 293033f9a692 Merge "demux: keep a frame tail pointer; used in AddFrame" into 0.3.0 2931a2a7b959 use WebPDataCopy() instead of re-coding it. 29326f18f12f demux: keep a frame tail pointer; used in AddFrame 2933e5af49e9 add doc precision about WebPParseHeaders() return codes 2934db46daab Merge "Makefile.vc: fix dynamic builds" into 0.3.0 293553c77afc Merge "gif2webp: Bgcolor fix for a special case" into 0.3.0 2936a5ebd143 gif2webp: Bgcolor fix for a special case 29376378f238 Merge "vwebp/animation: fix background dispose" into 0.3.0 29383c8eb9a8 fix bad saturation order in QuantizeBlock 293904c7a2ec vwebp/animation: fix background dispose 294081a50695 Makefile.vc: fix dynamic builds 29415f25c396 update ChangeLog (tag: v0.3.0-rc6) 294214d42af2 examples: don't use C99 %zu 29435ccf1fe5 update ChangeLog 29442560c243 update NEWS 2945f43bafc3 Merge changes Iecccb09c,If5ee9fd2,I3e181ce4 into 0.3.0 2946a788644f dwebp: warn when decoding animated webp's 2947302efcdb Decode: return more meaningful error for animation 2948ad452735 WebPBitstreamFeatures: add has_animation field 2949783dfa49 disable FRGM decoding for good in libwebpmux 29504b956be0 Update ChangeLog 2951ad8b86d7 update NEWS 29523e084f63 Merge "demux cosmetics: comments/rename internal function" into 0.3.0 2953d3f8c621 Merge "move WebPFeatureFlags declaration" into 0.3.0 29547386fe50 Merge "libwebp{demux,mux}: install mux_types.h" into 0.3.0 2955d6cd4e90 Merge "bump decode abi" into 0.3.0 295617f8da5c bump decode abi 295797684ae2 Merge "add doc precision about WebPDemuxPartial()" into 0.3.0 2958f933fd2a move WebPFeatureFlags declaration 2959289bc47b libwebp{demux,mux}: install mux_types.h 2960224e8d46 add doc precision about WebPDemuxPartial() 29614c18e80c demux cosmetics: comments/rename internal function 29627cfd1bf1 update AUTHORS 2963401f7b85 Merge "speed-up lossless (~3%) with ad-hoc histogram cost evaluation" into 0.3.0 29641fc8ffca Merge "makefile.unix: dist related changes" into 0.3.0 29658a89c6ed Merge changes I466c377f,Ib761ebd3,I694857fc into 0.3.0 2966f4ffb2d5 speed-up lossless (~3%) with ad-hoc histogram cost evaluation 2967723847d5 gif2webp: only write error messages to stderr 2968701b9e2a makefile.unix: dist related changes 2969bb85b437 Merge "update NEWS" into 0.3.0 297059423a24 gif2webp: fix crash on open failure with libgif5 29719acb17de gif2webp: silence a unused param warning 29727d9fdc23 Merge "README updates" into 0.3.0 29735621934e Merge "build: fix install race on shared headers" into 0.3.0 297470809d89 Merge "bump version to 0.3.0" into 0.3.0 2975d851cd1d demux: make the parse a bit more strict 297628bb4107 update NEWS 2977cef93882 bump version to 0.3.0 29789048494d build: fix install race on shared headers 29791e67e8ef README updates 298042b611a4 Merge "configure: drop experimental from mux/demux" into 0.3.0 2981096a8e32 Merge "vwebp: add color profile support" into 0.3.0 2982ddfee5dc vwebp: add color profile support 29830d6927d3 Merge "Mark fragment options as experimental in webpmux" into 0.3.0 29845dbd4030 Mark fragment options as experimental in webpmux 2985a0a6648c configure: drop experimental from mux/demux 2986ee65bad8 Merge "add support for BITS > 32" into 0.3.0 2987744930db add support for BITS > 32 29887dd288f0 cwebp: fix build 298919a8dd01 Merge "Makefile.vc: add vwebp.exe target" into 0.3.0 299050eeddad Merge "examples: normalize icc related program arguments" into 0.3.0 2991757f637f Merge "Makefile.vc: add libwebpdecoder target" into 0.3.0 2992b65c4b7c Makefile.vc: add libwebpdecoder target 2993f8db7b4a Merge "vwebp: replace doubles w/floats where appropriate" into 0.3.0 2994d99aa56f Makefile.vc: add vwebp.exe target 2995013023e7 vwebp: replace doubles w/floats where appropriate 29969b3db894 README.mux: add version reference 29977b6a26cf Merge "cwebp: output metadata statistics" into 0.3.0 2998d8dc72a0 examples: normalize icc related program arguments 29997bfc9056 Merge "make alpha unfilter work in-place" into 0.3.0 30000037b2d2 Merge "add LUT-free reference code for YUV->RGB conversion." into 0.3.0 3001166bf744 Merge "demux: disable fragment parsing" into 0.3.0 3002126974b4 add LUT-free reference code for YUV->RGB conversion. 30030aef3ebd make alpha unfilter work in-place 300414ef5005 Merge "Remove 'status: experimental' from container spec" into 0.3.0 3005d40c98e1 Merge "webpmux binary: tiny style fix" into 0.3.0 30060bc42689 cwebp: output metadata statistics 3007bc039803 Merge "autoconf: normalize experimental define" into 0.3.0 3008d1e21b13 Remove 'status: experimental' from container spec 30097681bb96 webpmux binary: tiny style fix 3010a3dd3d0f avoid installing example_util.h 3011252320e2 demux: disable fragment parsing 3012537bde05 autoconf: normalize experimental define 30135e338e0b Merge changes I33e8a613,I8e8a7b44 into 0.3.0 3014d9d0ea1b Merge changes If21e3ec7,I991fc30b into 0.3.0 3015627f5ca6 automake: add reference to libwebp for mux/demux 3016eef73d07 don't consolidate proba stats too often 301705ec4cc2 libwebp{,decoder}.pc: add pthread flags 30181bfcf5bf add libwebpmux.pc 301926ca843d add libwebpdemux.pc 302069e25906 Merge "Tune Lossless compression for lower qualities." 30210478b5d2 Tune Lossless compression for lower qualities. 302239f7586f add a mention of parallel alpha encoding in the NEWS 30235a21d967 Merge "1.5x-2x faster encoding for method 3 and up" 30249bfbdd14 1.5x-2x faster encoding for method 3 and up 302527dc741b Correct frame options order in README.mux 3026be2fd173 Mux: fix a scenario with bad ANMF/FRGM size 302719eb012c Merge "Demux: Add option to get frame count using GetI()" 30287368b8cb Merge "WebPGetFeatures() out of if condition for clarity." 3029f604c9a4 Merge "fix windows build" 3030153f94e8 fix windows build 3031847b4924 Merge "vwebp: use magenta for 'i'nfo display" 303225ea46bd Merge "vwebp: add keyboard shortcuts to help output" 3033bea7ccaf vwebp: use magenta for 'i'nfo display 30348fab161a webpmux: correct -frame param order in help output 303503cc23d6 vwebp: add keyboard shortcuts to help output 3036068eba8d Demux: Add option to get frame count using GetI() 3037988b8f56 WebPGetFeatures() out of if condition for clarity. 30386933d910 Merge "gif2webp: Be lenient about background color index." 30394d0f7c55 Merge "WebPGetFeatures() behavior change:" 3040fdeeb01d gif2webp: Be lenient about background color index. 3041ad250320 Merge "multi-threaded alpha encoding for lossy" 30424e32d3e1 Merge "fix compilation of token.c" 3043f817930a multi-threaded alpha encoding for lossy 304488050351 fix compilation of token.c 3045fc816219 code using the actual values for num_parts_, not the ones from config 304672655350 Merge "move the config check from .c to .h" 3047dd9e76f7 move the config check from .c to .h 3048956b217a WebPGetFeatures() behavior change: 3049df02e4ce WebPDemuxGetI behavior change: 3050633c004d Merge "rebalance method tools (-m) for methods [0..4]" 305158ca6f65 rebalance method tools (-m) for methods [0..4] 30527648c3cc Merge "describe rd-opt levels introduce VP8RDLevel enum" 305367fb1003 Merge "autoconf: enable silent-rules by default" 3054a5042a32 GetVersion() methods for mux and demux 30555189957e describe rd-opt levels introduce VP8RDLevel enum 30564e094ace autoconf: enable silent-rules by default 3057b7eaa85d inline VP8LFastLog2() and VP8LFastSLog2 for small values 30585cf7792e split quant_levels.c into decoder and encoder version 3059e5d3ffe2 Merge "Update code example in README.mux" 3060ac5a9156 Update code example in README.mux 306138a91e99 Add example code snippet for demux API 30625f557f3c README.mux: add info about Demux API and vwebp 3063c0ba0903 backward_references: avoid signed integer overflow 3064943386db disable SSE2 for now 30659479fb7d lossless encoding speedup 3066ec2030a8 merge two lines together 3067b67956c0 Merge "Remove ReadOneBit() and ReadSymbolUnsafe()" 30681667bded Remove ReadOneBit() and ReadSymbolUnsafe() 30693151669b wicdec + dwebp cosmetics: normalize formatting 307092668da6 change default filtering parameters: * type is now 'strong' * strength is now '60' 3071b7490f85 introduce WEBP_REFERENCE_IMPLEMENTATION compile option 307233838857 faster decoding (3%-6%) 30735c3e381b Merge "add a -jpeg_like option" 3074c2311046 remove unused declaration of VP8Zigzag 307536152957 Merge "wicdec: add alpha support for paletted formats" 3076c9f16490 wicdec: add alpha support for paletted formats 30771262f81e Merge "wicdec: silence some warnings" 3078e7ea61eb wicdec: silence some warnings 307923c0f354 fix missing intptr_t->int cast for MSVC 3080e895059a add a -jpeg_like option 30811f803f64 Merge "Tune alpha quality mapping to more reasonable values." 30821267d498 Tune alpha quality mapping to more reasonable values. 3083043076e2 Merge "speed-up lossless in BackwardTrace" 3084f3a44dcd remove one malloc from TraceBackwards() 30850fc1a3a0 speed-up lossless in BackwardTrace 30867c732e59 cwebp: centralize WebPCleanupTransparentArea() 30877381254e Merge "wicdec: add ICC profile extraction" 3088e83ff7de wicdec: add ICC profile extraction 3089146c6e3b Merge "cosmetics: pngdec: normalize default label location" 3090a8f549d7 Merge "manpages: italicize option parameters" 3091e118db83 Merge "encode.h: note the need to free() WebPMemoryWriter" 30921dfee6db cosmetics: pngdec: normalize default label location 309314c38200 manpages: italicize option parameters 30947defbfad encode.h: note the need to free() WebPMemoryWriter 309588d382a0 cwebp: cleanup after memory_writer 309612d6cecf fix extra space in dwebp.1 man 3097b01681a9 Fix for demuxer frame iteration: 309856c12aa6 Demuxer creation fix: 309966c810bc add a -yuv option to dwebp (very similar to -pgm) 3100841a3ba5 Merge "Remove -Wshadow warnings." 31018fd02527 Merge "upsampling_neon.c: fix build" 31026efed268 Remove -Wshadow warnings. 310360904aa6 Merge "allow WebPINewRGB/YUVA to be passed a NULL output buffer." 3104b7adf376 allow WebPINewRGB/YUVA to be passed a NULL output buffer. 310527f8f742 upsampling_neon.c: fix build 310606b9cdf1 gitignore: add IOS related directories 3107f112221e Merge "Fix more comments for iobuild.sh" 3108fe4d25dd Fix more comments for iobuild.sh 31091de3e252 Merge "NEON optimised yuv to rgb conversion" 3110090b708a NEON optimised yuv to rgb conversion 3111daa06476 Merge "Add ios build script for building iOS library." 311279fe39e2 Add ios build script for building iOS library. 3113126c035f remove some more -Wshadow warnings 3114522e9d61 Merge "cwebp: enable '-metadata'" 311576ec5fa1 cwebp: enable '-metadata' 3116aeb91a9d Merge "cosmetics: break a few long lines" 3117be7c96b0 cosmetics: break a few long lines 3118cff8ddb6 Merge "add libwebpdecoder.pc" 311993148ab8 Merge "libwebp.pc.in: detab" 31206477f955 Merge "Makefile.vc: normalize path separator" 3121bed1ed7c add libwebpdecoder.pc 312246168b2d libwebp.pc.in: detab 3123a941a346 Fixed few nits in the build files. 3124dd7a49b2 Makefile.vc: normalize path separator 31259161be86 Merge "cwebp: extract WIC decoding to its own module" 312608e7c58e Merge "Provide an option to build decoder library." 31270aeba528 Provide an option to build decoder library. 3128757ebcb1 catch malloc(0)/calloc(0) with an assert 3129152ec3d2 Merge "handle malloc(0) and calloc(0) uniformly on all platforms" 3130a452a555 cwebp: extract WIC decoding to its own module 31312b252a53 Merge "Provide option to swap bytes for 16 bit colormodes" 313294a48b4b Provide option to swap bytes for 16 bit colormodes 313342f8f934 handle malloc(0) and calloc(0) uniformly on all platforms 31348b2152c5 Merge "add an extra assert to check memory bounds" 31350d19fbff remove some -Wshadow warnings 3136cd22f655 add an extra assert to check memory bounds 31378189feda Merge "Add details and reference about the YUV->RGB conversion" 31381d2702b1 Merge "Formatting fixes in lossless bitstream spec" 31398425aaee Formatting fixes in lossless bitstream spec 3140a556cb1a Add details and reference about the YUV->RGB conversion 3141d8f21e0b add link to SSIM description on Wikipedia 314218e9167e Merge "WebP-lossless spec clarifications:" 314398e25b9b Merge "cwebp: add -metadata option" 3144f01c2a53 WebP-lossless spec clarifications: 3145f4a97970 Merge "Disto4x4 and Disto16x16 in NEON" 314647b7b0ba Disto4x4 and Disto16x16 in NEON 31477eaee9f1 cwebp: add -metadata option 314836c52c2c tiffdec: use toff_t for exif ifd offset 31497c8111e4 Merge "cwebp/tiffdec: add TIFF metadata extraction" 3150e6409adc Remove redundant include from dsp/lossless code. 31511ab5b3a7 Merge "configure: fix --with-gifincludedir" 315203c749eb configure: fix --with-gifincludedir 31538b650635 multiple libgif versions support for gif2webp 3154476e293f gif2webp: Use DGifOpenFileName() 3155b50f277b tiffdec: correct format string 31562b9048e3 Merge "tiffdec: check error returns for width/height" 3157a1b5a9a3 Merge "cwebp/tiff: use the first image directory" 3158079423f5 tiffdec: check error returns for width/height 3159d62824af Merge "cwebp/jpegdec: add JPEG metadata extraction" 316003afaca4 Merge "cwebp: add PNG metadata extraction" 31612c724968 cwebp/jpegdec: add JPEG metadata extraction 3162dba64d91 cwebp: add PNG metadata extraction 31631f075f89 Lossless spec corrections/rewording/clarifications 31642914ecfd cwebp/tiffdec: add TIFF metadata extraction 3165d82a3e33 More corrections/clarifications in lossless spec: 3166bd002557 cwebp/tiff: use the first image directory 3167df7aa076 Merge "Cleanup around jpegdec" 31680f57dcc3 decoding speed-up (~1%) 3169bcec339b Lossless bitstream clarification: 31706bf20874 add examples/metadata.c 3171207f89c0 Merge "configure: add libwebpdemux status to summary" 31721bd287a6 Cleanup around jpegdec 317391455679 Merge "cosmetics: use '== 0' in size checks" 3174d6b88b76 cosmetics: use '== 0' in size checks 3175d3dace2f cosmetics: jpegdec 31762f69af73 configure: add libwebpdemux status to summary 31771c1c5646 cwebp: extract tiff decoding to its own module 31786a871d66 cwebp: extract jpeg decoding to its own module 31792ee228f9 cwebp: extract png decoding to its own module 31804679db00 Merge "cwebp: add metadata framework" 318163aba3ae cwebp: add metadata framework 3182931bd516 lossless bitstream: block size bits correction 3183e4fc4c1c lossless bitstream: block size bits correction 3184d65ec678 fix build, move token.c to src/enc/ 3185657f5c91 move token buffer to its own file (token.c) 3186c34a3758 introduce GetLargeValue() to slim-fast GetCoeffs(). 3187d5838cd5 faster non-transposing SSE2 4x4 FTransform 3188f76191f9 speed up GetResidualCost() 3189ba2aa0fd Add support for BITS=24 case 31902e7f6e8e makefile.unix: Dependency on libraries 3191dca84219 Merge "Separate out mux and demux code and libraries:" 319223782f95 Separate out mux and demux code and libraries: 3193bd56a01f configure: add summary output 319490e5e319 dwebp manual: point to webpmux, gif2webp. 3195540790ca gif2webp.c: add a note about prerequisites 3196d1edf697 cwebp man page: meaning of '-q' for lossy/lossless 319779efa1d0 Add man page for gif2webp utility 31982243e40c Merge "gif2webp build support with autoconf tools" 3199c40efca1 gif2webp build support with autoconf tools 32006523e2d4 WebP Container: 32014da788da Merge "simplify the fwd transform" 320242c3b550 simplify the fwd transform 320341a6ced9 user GLfloat instead of float 3204b5426119 fix indentation 320568f282f7 * handle offset in anim viewer 'vwebp' * fix gif2webp to handle disposal method and odd offset correctly 3206118cb312 Merge "add SSE2 version of Sum of Square error for 16x16, 16x8 and 8x8 case" 32078a7c3cc8 Merge "Change the order of -frame argument to be more natural" 320899e0a707 Merge "Simplify the texture evaluation Disto4x4()" 32090f923c3f make the bundling work in a tmp buffer 3210e5c3b3f5 Simplify the texture evaluation Disto4x4() 321148600084 Change the order of -frame argument to be more natural 321235bfd4c0 add SSE2 version of Sum of Square error for 16x16, 16x8 and 8x8 case 3213a7305c2e Clarification for unknown chunks 32144c4398e2 Refine WebP Container Spec wrt unknown chunks. 32152ca642e0 Rectify WebPMuxGetFeatures: 32167caab1d8 Some cosmetic/comment fixes. 321760b2651a Merge "Write a GIF to WebP converter based on libgif." 3218c7127a4d Merge "Add NEON version of FTransformWHT" 321911b27212 Write a GIF to WebP converter based on libgif. 3220e9a15a37 ExUtilWriteFile() to write memory segment to file 322174356eb5 Add a simple cleanup step in mux assembly: 322251bb1e5d mux.h: correct WebPDemuxSelectFragment() prototype 322322a0fd9d Add NEON version of FTransformWHT 3224fa30c863 Update mux code to match the spec wrt animation 3225d9c5fbef by-pass Analysis pass in case segments=1 3226d2ad4450 Merge changes Ibeccffc3,Id1585b16 32275c8be251 Merge "Chunk fourCCs for XMP/EXIF" 3228a00a3daf Use 'frgm' instead of 'tile' in webpmux parameters 322981b8a741 Design change in ANMF and FRGM chunks: 3230f903cbab Chunk fourCCs for XMP/EXIF 3231812933d6 Tune performance of HistogramCombine 323252ad1979 Animation specification in container spec 3233001b9302 Image fragment specification in container spec 3234391f9db9 Ordering of description of bits in container spec 3235d5735776 Metadata specification in container spec 32361c4609b1 Merge commit 'v0.2.1' 32370ca584cb Merge "Color profile specification in container spec" 3238e8b41ad1 add NEON asm version for WHT inverse transform 3239af6f0db2 Color profile specification in container spec 3240a61a824b Merge "Add NULL check in chunk APIs" 32410e8b7eed fix WebPPictureView() unassigned strides 324275e5f17e ARM/NEON: 30% encoding speed-up 324302b43568 Add NULL check in chunk APIs 3244a0770727 mux struct naming 32456c66dde8 Merge "Tune Lossless encoder" 3246ab5ea217 Tune Lossless encoder 324774fefc8c Update ChangeLog (tag: v0.2.1, origin/0.2.0) 324892f8059c Rename some chunks: 32493bb4bbeb Merge "Mux API change:" 3250d0c79f05 Mux API change: 3251abc06044 Merge "update NEWS" into 0.2.0 325257cf313b update NEWS 325325f585c4 bump version to 0.2.1 3254fed7c048 libwebp: validate chunk size in ParseOptionalChunks 3255552cd9bc cwebp (windows): fix alpha image import on XP 3256b14fea99 autoconf/libwebp: enable dll builds for mingw 32574a8fb272 [cd]webp: always output windows errors 3258d6621580 fix double to float conversion warning 325972b96a69 cwebp: fix jpg encodes on XP 3260734f762a VP8LAllocateHistogramSet: fix overflow in size calculation 3261f9cb58fb GetHistoBits: fix integer overflow 3262b30add20 EncodeImageInternal: fix uninitialized free 32633de58d77 fix the -g/O3 discrepancy for 32bit compile 326477aa7d50 fix the BITS=8 case 3265e5970bda Make *InitSSE2() functions be empty on non-SSE2 platform 3266ef5cc47e make *InitSSE2() functions be empty on non-SSE2 platform 3267c4ea259d make VP8DspInitNEON() public 32688344eadf Merge "libwebp: validate chunk size in ParseOptionalChunks" 32694828bb93 Merge "cwebp (windows): fix alpha image import on XP" 327030763333 libwebp: validate chunk size in ParseOptionalChunks 327170481898 AccumulateLSIM: fix double -> float warnings 3272eda8ee4b cwebp (windows): fix alpha image import on XP 3273c6e98658 Merge "add EXPERIMENTAL code for YUV-JPEG colorspace" 3274f0360b4f add EXPERIMENTAL code for YUV-JPEG colorspace 3275f86e6abe add LSIM metric to WebPPictureDistortion() 3276c3aa215a Speed up HistogramCombine for lower qualities. 32771765cb1c Merge "autoconf/libwebp: enable dll builds for mingw" 3278a13562e8 autoconf/libwebp: enable dll builds for mingw 32799f469b57 typo: no_fancy -> no_fancy_upsampling 32801a27f2f8 Merge "fix double to float conversion warning" 3281cf1e90de Merge "cwebp: fix jpg encodes on XP" 3282f2b5d19b [cd]webp: always output windows errors 3283e855208c fix double to float conversion warning 3284ecd66f77 cwebp: fix jpg encodes on XP 32857b3eb372 Tune lossless compression to get better gains. 3286ce8bff45 Merge "VP8LAllocateHistogramSet: fix overflow in size calculation" 3287ab5b67a1 Merge "EncodeImageInternal: fix uninitialized free" 32887fee5d12 Merge "GetHistoBits: fix integer overflow" 3289a6ae04d4 VP8LAllocateHistogramSet: fix overflow in size calculation 329080237c43 GetHistoBits: fix integer overflow 32918a997235 EncodeImageInternal: fix uninitialized free 32920b9e6829 minor cosmetics 3293a792b913 fix the -g/O3 discrepancy for 32bit compile 329473ba4357 Merge "detect and merge similar segments" 3295fee66275 detect and merge similar segments 32960c44f415 src/webp/*.h: don't forward declare enums in C++ 3297d7a5ac86 vwebp: use demux interface 3298931e0ea1 Merge "replace 'typedef struct {} X;" by "typedef struct X X; struct X {};"" 32998f216f7e remove cases of equal comparison for qsort() 330028d25c82 replace 'typedef struct {} X;" by "typedef struct X X; struct X {};" 33012afee60a speed up for ARM using 8bit for boolean decoder 33025725caba new segmentation algorithm 33032cf1f815 Merge "fix the BITS=8 case" 330412f78aec fix the BITS=8 case 33056920c71f fix MSVC warnings regarding implicit uint64 to uint32 conversions 3306f6c096aa webpmux binary: Rename 'xmp' option to 'meta' 3307ddfe871a webpmux help correction 3308b7c55442 Merge "Make *InitSSE2() functions be empty on non-SSE2 platform" 33091c04a0d4 Common APIs for chunks metadata and color profile. 33102a3117a1 Merge "Create WebPMuxFrameInfo struct for Mux APIs" 33115c3a7231 Make *InitSSE2() functions be empty on non-SSE2 platform 33127c6e60f4 make *InitSSE2() functions be empty on non-SSE2 platform 3313c7eb4576 make VP8DspInitNEON() public 3314ab3234ae Create WebPMuxFrameInfo struct for Mux APIs 3315e3990fd8 Alignment fixes 3316e55fbd6d Merge branch '0.2.0' 33174238bc0a Update ChangeLog (tag: v0.2.0) 3318c655380c dec/io.c: cosmetics 3319fe1958f1 RGBA4444: harmonize lossless/lossy alpha values 3320681cb30a fix RGBA4444 output w/fancy upsampling 3321f06c1d8f Merge "Alignment fix" into 0.2.0 3322f56e98fd Alignment fix 33236fe843ba avoid rgb-premultiply if there's only trivial alpha values 3324528a11af fix the ARGB4444 premultiply arithmetic 3325a0a48855 Lossless decoder fix for a special transform order 332662dd9bb2 Update encoding heuristic w.r.t palette colors. 33276f4272b0 remove unused ApplyInverseTransform() 332893bf0faa Update ChangeLog (tag: v0.2.0-rc1) 33295934fc59 update AUTHORS 3330014a711d update NEWS 333143b0d610 add support for ARGB -> YUVA conversion for lossless decoder 333233705ca0 bump version to 0.2.0 3333c40d7ef1 fix alpha-plane check + add extra checks 3334a06f8023 MODE_YUVA: set alpha to opaque if the image has none 333552a87dd7 Merge "silence one more warning" into 0.2.0 33363b023093 silence one more warning 3337f94b04f0 move some RGB->YUV functions to yuv.h 33384b71ba03 README: sync [cd]webp help output 3339c9ae57f5 man/dwebp.1: add links to output file format details 3340292ec5cc quiet a few 'uninitialized' warnings 33414af3f6c4 fix indentation 33429b261bf5 remove the last NOT_HAVE_LOG2 instances 3343323dc4d9 remove use of log2(). Use VP8LFastLog2() instead. 33448c515d54 Merge "harness some malloc/calloc to use WebPSafeMalloc and WebPSafeCalloc" into 0.2.0 3345d4b4bb02 Merge changes I46090628,I1a41b2ce into 0.2.0 3346bff34ac1 harness some malloc/calloc to use WebPSafeMalloc and WebPSafeCalloc 3347a3c063c7 Merge "extra size check for security" into 0.2.0 33485e796300 Merge "WebPEncode: clear stats at the start of encode" into 0.2.0 3349f1edf62f Merge "rationalize use of color-cache" into 0.2.0 3350c1933317 extra size check for security 3351906be657 rationalize use of color-cache 3352dd1c3873 Add image-hint for low-color images. 33534eb7aa64 Merge "WebPCheckMalloc() and WebPCheckCalloc():" into 0.2.0 335480cc7303 WebPCheckMalloc() and WebPCheckCalloc(): 3355183cba83 check VP8LBitWriterInit return 3356cbfa9eec lossless: fix crash on user abort 3357256afefa cwebp: exit immediately on version mismatch 3358475d87d7 WebPEncode: clear stats at the start of encode 3359a7cc7291 fix type and conversion warnings 33607d853d79 add stats for lossless 3361d39177b7 make QuantizeLevels() store the sum of squared error 33625955cf5e replace x*155/100 by x*101581>>16 33637d732f90 make QuantizeLevels() store the sum of squared error 3364e45a446a replace x*155/100 by x*101581>>16 3365159b75d3 cwebp output size consistency: 3366cbee59eb Merge commit 'v0.1.99' 33671889e9b6 dwebp: report -alpha option 33683bc3f7c0 Merge "dwebp: add PAM output support" into 0.2.0 3369d919ed06 dwebp: add PAM output support 337085e215d3 README/manpages/configure: update website link 3371c3a207b9 Update ChangeLog (tag: v0.1.99) 3372d1fd7826 Merge "add extra precision about default values and behaviour" into 0.2.0 3373efc826e0 add extra precision about default values and behaviour 33749f29635d header/doc clean up 3375ff9fd1ba Makefile.vc: fix webpmux.exe *-dynamic builds 33768aacc7b0 remove INAM, ICOP, ... chunks from the test webp file. 33772fc13015 harmonize authors as "Name (mail@address)" 33784a9f37b7 Merge "update NEWS" into 0.2.0 33797415ae13 makefile.unix: provide examples/webpmux target 3380ce82cedc update NEWS 3381641e28e8 Merge "man/cwebp.1: wording, change the date" into 0.2.0 3382c37c23e5 README: cosmetics 33833976dcd5 man/cwebp.1: wording, change the date 33843e5bbe1c Merge "rename 'use_argb_input' to 'use_argb'" into 0.2.0 3385ce90847a Merge "add some padding bytes areas for later use" into 0.2.0 33862390dabc Merge "fixing the findings by Frederic Kayser to the bitstream spec" into 0.2.0 338702751591 add a very crude progress report for lossless 3388a4b9b1c6 Remove some unused enum values. 3389dd108176 rename 'use_argb_input' to 'use_argb' 339090516ae8 add some padding bytes areas for later use 3391d03b2503 fixing the findings by Frederic Kayser to the bitstream spec 3392ce156afc add missing ABI compatibility checks 33939d45416a Merge "Doc: container spec text tweaks" into 0.2.0 33944e2e0a8c Doc: container spec text tweaks 3395f7f16a29 add ABI compatibility check 33962a775570 Merge "swig: add WebPEncodeLossless* wrappers" into 0.2.0 3397a3ec6225 mux.h: remove '* const' from function parameters 339831426eba encode.h: remove '* const' from function parameters 33999838e5d5 decode.h: remove '* const' from function parameters 34004972302d swig: add WebPEncodeLossless* wrappers 34019ff00cae bump encoder/decoder versions 3402c2416c9b add lossless quick encoding functions to the public API 34034c1f5d64 Merge "NEWS: mention decode_vp8.h is no longer installed" into 0.2.0 34046cb2277d NEWS: mention decode_vp8.h is no longer installed 3405d5e5ad63 move decode_vp8.h from webp/ to dec/ 34068d3b04a2 Merge "header clean-up" into 0.2.0 340702201c35 Merge "remove one malloc() by making color_cache non dynamic" into 0.2.0 3408d708ec14 Merge "move MIN/MAX_HISTO_BITS to format_constants.h" into 0.2.0 3409ab2da3e9 Merge "add a malloc() check" into 0.2.0 34102d571bd8 add a malloc() check 34117f0c178e remove one malloc() by making color_cache non dynamic 34126569cd7c Merge "VP8LFillBitWindow: use 64-bit path for msvc x64 builds" into 0.2.0 341323d34f31 header clean-up 34142a3ab6f9 move MIN/MAX_HISTO_BITS to format_constants.h 3415985d3da6 Merge "shuffle variables in HashChainFindCopy" into 0.2.0 3416cdf885c6 shuffle variables in HashChainFindCopy 3417c3b014db Android.mk: add missing lossless files 34188c1cc6b5 makefile.unix dist: explicitly name installed includes 34197f4647ee Merge "clarify the colorspace naming and byte ordering of decoded samples" into 0.2.0 3420cbf69724 clarify the colorspace naming and byte ordering of decoded samples 3421857650c8 Mux: Add WebPDataInit() and remove WebPImageInfo 3422ff771e77 don't install webp/decode_vp8.h 3423596dff78 VP8LFillBitWindow: use 64-bit path for msvc x64 builds 34243ca7ce98 Merge "doc: remove non-finalized chunk references" into 0.2.0 34251efaa5a3 Merge "bump versions" into 0.2.0 342651fa13e1 Merge "README: update cwebp help output" into 0.2.0 342712f9aede README: update cwebp help output 3428f0b5defb bump versions 34294c42a61b update AUTHORS 34306431a1ce doc: remove non-finalized chunk references 34318130c4cc Merge "build: remove libwebpmux from default targets/config" 343223b44438 Merge "configure: broaden test for libpng-config" 343385bff2cd Merge "doc: correct lossless prefix coding table & code" 343405108f6e Merge "More spec/code matching in mux:" 34356808e69d More spec/code matching in mux: 3436bd2b46f5 Merge "doc/webp-container-spec: light cosmetics" 343720ead329 doc/webp-container-spec: light cosmetics 34381d40a8bc configure: add pthread detection 3439b5e9067a fix some int <-> size_t mix for buffer sizes 3440e41a7596 build: remove libwebpmux from default targets/config 34410fc2baae configure: broaden test for libpng-config 344245b8272c Merge "restore authorship to lossless bitstream doc" 344306ba0590 restore authorship to lossless bitstream doc 344444a09a3c add missing description of the alpha filtering methods 344563db87dd Merge "vwebp: add checkboard background for alpha display" 3446a73b8978 vwebp: add checkboard background for alpha display 3447939158ce Merge "vwebp: fix info display" 3448b35c07d9 vwebp: fix info display 344948b39eb1 fix underflow for very short bitstreams 34507e622984 cosmetics: param alignment, manpage wording 34511bd7dd50 Merge changes I7b0afb0d,I7ecc9708 3452ac69e63e Merge "Updated cwebp man's help for Alpha & Lossless." 3453c0e8859d Get rid of image_info_ from WebPChunk struct. 3454135ca69e WebP Container Spec: 3455eb6f9b8a Updated cwebp man's help for Alpha & Lossless. 34560fa844fb cosmetic fixes on assert and 'const' where applicable 34577f22bd25 check limit of width * height is 32 bits 345816c46e83 autoconf/make: cosmetics: break long lines 3459ab22a07a configure: add helper macro to define --with-* 3460c17699b3 configure: add libtiff test 34610e09732c Merge "cwebp: fix crash with yuv input + lossless" 346288a510ff Merge "fix big-endian VP8LWriteBits" 3463da99e3bf Merge "Makefile.vc: split mux into separate lib" 34647bda392b cwebp: fix crash with yuv input + lossless 3465f56a369a fix big-endian VP8LWriteBits 346654169d6c Merge "cwebp: name InputFileFormat members consistently" 3467e2feefa9 Makefile.vc: split mux into separate lib 346827caa5aa Merge "cwebp: add basic TIFF support" 3469d8921dd4 cwebp: name InputFileFormat members consistently 34706f76d246 cwebp: add basic TIFF support 34714691407b Merge changes If39ab7f5,I3658b5ae 3472cca7c7b8 Fixed nit: 10 -> 10.f 34735d09a244 WebPMuxCreate() error handling: 3474777341c3 Fix a memleak in WebPMuxCreate() 347561c9d161 doc: correct lossless prefix coding table & code 34764c397579 Merge "mark VP8{,L}{GetInfo,CheckSignature} as WEBP_EXTERN" 3477e4e36cc6 Merge "Mux: Allow only some frames/tiles to have alpha." 3478ad2aad3c Merge "WebP Decoding error handling:" 347997649c8f Mux: Allow only some frames/tiles to have alpha. 3480f864be3b Lower the quality settings for Alpha encoding. 34813ba81bbe WebP Decoding error handling: 3482fcc69923 add automatic YUVA/ARGB conversion during WebPEncode() 3483802e012a fix compilation in non-FANCY_UPSAMPLING mode 3484e012dfd9 make width/height coding match the spec 3485228d96a5 mark VP8{,L}{GetInfo,CheckSignature} as WEBP_EXTERN 3486637a314f remove the now unused *KeepA variants 3487d11f6fcc webpmux returns error strings rather than numbers 3488fcec0593 makefile.unix: cwebp: fix OSX link 34896b811f1b Merge "doc: remove lossless pdf" 3490c9634821 doc: remove lossless pdf 3491b9ae4f0d cosmetics after mux changes b74ed6e, b494ad5 3492b494ad50 Mux: only allow adding frame/tiles at the end. 34932c341b0e Merge "Added image characteristic hint for the codec." 3494d373076a Added image characteristic hint for the codec. 34952ed2adb5 Merge "msvc: add intrinsic based BitsLog2Floor" 3496e595e7c5 Merge "add demux.c to the makefiles" 3497da47b5bd Merge "demux: add {Next,Prev}Chunk" 3498e5f46742 add demux.c to the makefiles 34994708393c demux: add {Next,Prev}Chunk 3500e8a0a821 demux: quiet msvc warnings 35017f8472a6 Update the WebP Container Spec. 350231b68fe6 cleanup WebPPicture struct and API 35039144a186 add overflow check before calling malloc() 350481720c91 consistency cosmetics 35052ebe8394 Merge "Add kramdown version information to README" 350671443084 enc/vp8l.c: fix build 3507b7ac19fe Add kramdown version information to README 3508efdcb667 Merge "Edit for consistency, usage and grammar." 350908220102 Enable alpha in vvwebp 35108de9a084 Merge "Mux API change:" 3511b74ed6e7 Mux API change: 3512233a589e take picture->argb_stride into account for lossless coding 351304e33f17 Edit for consistency, usage and grammar. 3514a575b4bc Merge "cosmetics: add missing const" 35158d99b0f4 Merge "cosmetics: remove unimplemented function proto" 351669d02217 cosmetics: add missing const 35175b08318b cosmetics: remove unimplemented function proto 3518b7fb0ed5 Log warning for unsupported options for lossless. 3519e1f769fe msvc: add intrinsic based BitsLog2Floor 35208a69c7d8 Bug-fix: Clamp backward dist to 1. 3521b5b6ac97 Merge "Bring the special writer 'WebPMemoryWriter' to public API" 3522a6a1909f Merge "Fix floating point exception with cwebp -progress" 3523f2cee067 Fix floating point exception with cwebp -progress 352491b7a8c7 Bring the special writer 'WebPMemoryWriter' to public API 3525310e2972 support resize and crop for RGBA input 3526a89835d3 Merge changes Ice662960,Ie8d7aa90,I2d996d5e,I01c04772 3527ce614c0c Merge "dec/vp8: avoid setting decoder status twice" 3528900285da dec/vp8: avoid setting decoder status twice 35298227adc8 Merge changes I6f02b0d0,I5cbc9c0a,I9dd9d4ed,Id684d2a1 3530dcda59c1 Merge "demux: rename SetTile to SelectTile" 3531622ef12e demux: rename SetTile to SelectTile 353281ebd375 Merge "demux: add {Next,Prev}Frame" 353302dd37a2 demux: add {Next,Prev}Frame 35344b79fa59 Merge "Limit the maximum size of huffman Image to 16MB." 35359aa34b34 Manually number "chapters," as chapter numbers are used in the narrative. 35362a4c6c29 Re-wrap at <= 72 columns 3537a45adc19 Apply inline emphasis and monospacing, per gdoc / PDF 353891011206 Incorporate gdoc changes through 2012-06-08 35397a182487 Removed CodeRay syntax declarations ... 3540b3ec18c5 Provide for code-block syntax highlighting. 3541709d7702 Replace high ASCII artifacts (curly quotes, etc.). 3542930e8abb Lossless WebP doc largely ported to markdown text. 354318cae37b msvc: silence some build warnings 3544b3923084 Limit the maximum size of huffman Image to 16MB. 3545f180df2a Merge "libwebp/demux: add Frame/Chunk iteration" 35462bbe1c9a Merge "Enable lossless encoder code" 3547d0601b01 Merge changes I1d97a633,I81c59093 354878f3e345 Enable lossless encoder code 3549d974a9cc Merge "libwebp/demux: add simple format parsing" 355026bf2232 Merge "libwebp: add WebPDemux stub functions" 35512f666688 Merge "modify WebPParseHeaders to allow reuse by GetFeatures" 3552b402b1fb libwebp/demux: add Frame/Chunk iteration 3553ad9ada3b libwebp/demux: add WebPDemuxGetI 35542f2d4d58 libwebp/demux: add extended format parsing 3555962dcef6 libwebp/demux: add simple format parsing 3556f8f94081 libwebp: add WebPDemux stub functions 3557fb47bb5c Merge "NumNamedElements() should take an enum param." 35587c689805 Fix asserts in Palette and BackwardReference code. 3559fbdcb7ea NumNamedElements() should take an enum param. 3560fb4943bd modify WebPParseHeaders to allow reuse by GetFeatures 35613697b5ce write an ad-hoc EncodeImageInternal variant 3562eaee9e79 Bug-Fix: Decode small (less than 32 bytes) images. 35630bceae48 Merge "cwebp: fix alpha reporting in stats output" 35640424b1ef Rebase default encoding settings. 3565c71ff9e3 cwebp: fix alpha reporting in stats output 3566e2ffe446 Merge "Stop indefinite recursion for Huffman Image." 356770eb2bd6 Stop indefinite recursion for Huffman Image. 3568f3bab8eb Update vwebp 35696d5c797c Remove support for partial files in Mux. 3570f1df5587 WebPMuxAssemble() returns WebPData*. 3571814a0639 Rename 'Add' APIs to 'Set'. 3572bbb0218f Update Mux psuedo-code examples. 35734fc4a47f Use WebPData in MUX set APIs 3574c67bc979 Merge "add WebPPictureImportRGBX() and WebPPictureImportBGRX()" 357527519bc2 add WebPPictureImportRGBX() and WebPPictureImportBGRX() 3576f80cd27e factorize code in Import() 35779b715026 histogram: add log2 wrapper 35788c34378f Merge "fix some implicit type conversion warnings" 357942f6df9d fix some implicit type conversion warnings 3580250c16e3 Merge "doc: update lossless pdf" 35819d9daba4 Merge "add a PDF of the lossless spec" 35828fbb9188 prefer webp/types.h over stdint.h 35830ca170c2 doc: update lossless pdf 35840862ac6e add a PDF of the lossless spec 3585437999fb introduce a generic WebPPictureHasTransparency() function 3586d2b6c6c0 cosmetic fixes after Idaba281a 3587b4e6645c Merge "add colorspace for premultiplied alpha" 358848f82757 add colorspace for premultiplied alpha 3589069f903a Change in lossless bit-stream. 35905f7bb3f5 Merge "WebPReportProgress: use non-encoder specific params" 3591f18281ff WebPReportProgress: use non-encoder specific params 35929ef32283 Add support for raw lossless bitstream in decoder. 35937cbee29a Fix bug: InitIo reseting fancy_upsampling flag. 3594880fd98c vwebp: fix exit w/freeglut 35951875d926 trap two unchecked error conditions 359687b4a908 no need to have mux.h as noinst clause in enc/ 359788f41ec6 doc: fix bit alignment in VP8X chunk 359852f5a4ef Merge "fix bug with lossy-alpha output stride" 35993bde22d7 fix bug with lossy-alpha output stride 360042d61b6d update the spec for the lossy-alpha compression methods. 3601e75dc805 Move some more defines to format_constants.h 3602c13f6632 Move consts to internal header format_constants.h 36037f2dfc92 use a bit-set transforms_seen_ instead of looping 360418da1f53 modulate alpha-compression effort according to config.method 3605f5f2fff6 Merge "Alpha flag fix for lossless." 3606c975c44e Alpha flag fix for lossless. 36074f067fb2 Merge "Android: only build dec_neon with NEON support" 3608255c66b4 Android: only build dec_neon with NEON support 36098f9117a9 cosmetics: signature fixes 361039bf5d64 use header-less lossless bitstream for alpha channel 361175d7f3b2 Merge "make input data be 'const' for VP8LInverseTransform()" 36129a721c6d make input data be 'const' for VP8LInverseTransform() 36139fc64edc Disallow re-use of same transformation. 361498ec717f use a function pointer for ProcessRows() 3615f7ae5e37 cosmetics: join line 3616140b89a3 factor out buffer alloc in AllocateARGBBuffers() 3617a107dfa8 Rectify WebPParseOptionalChunks(). 3618237eab67 Add two more color-spaces for lossless decoding. 361927f417ab fix orthographic typo 3620489ec335 add VP8LEncodeStream() to compress lossless image stream 3621fa8bc3db make WebPEncodingSetError() take a const picture 3622638528cd bitstream update for lossy alpha compression 3623d73e63a7 add DequantizeLevels() placeholder 3624ec122e09 remove arch-dependent rand() 3625d40e7653 fix alignment 36261dd6a8b6 Merge "remove tcoder, switch alpha-plane compression to lossless" 36273e863dda remove tcoder, switch alpha-plane compression to lossless 36288d77dc29 Add support for lossless in mux: 3629831bd131 Make tile size a function of encoding method. 3630778c5228 Merge "remove some variable shadowing" 3631817c9dce Few more HuffmanTreeToken conversions. 363237a77a6b remove some variable shadowing 363389c07c96 Merge "normalize example header includes" 36344aff411f Merge "add example_util.[hc]" 363500b29e28 normalize example header includes 3636061263a7 add example_util.[hc] 3637c6882c49 merge all tree processing into a single VP8LProcessTree() 36389c7a3cf5 fix VP8LHistogramNumCodes to handle the case palette_code_bits == 0 3639b5551d2e Merge "Added HuffmanTreeCode Struct for tree codes." 36408b85d01c Added HuffmanTreeCode Struct for tree codes. 3641093f76d8 Merge "Allocate single memory in GetHuffBitLengthsAndCodes." 364241d80494 Allocate single memory in GetHuffBitLengthsAndCodes. 36431b04f6d2 Correct size in VP8L header. 36442924a5ae Makefile.vc: split object lists based on directory 3645c8f24165 Merge "add assert(tokens)" 364643239947 add assert(tokens) 36479f547450 Catch an error in DecodeImageData(). 3648ac8e5e42 minor typo and style fix 36499f566d1d clean-up around Huffman-encode 3650c579a710 Introduce CHUNK_SIZE_BYTES in muxi.h. 365114757f8a Make sure huffman trees always have valid symbols 365241050618 makefile.unix: add support for building vwebp 365348b37721 Merge "fixed signed/unsigned comparison warning" 365457f696da Merge "EncodeImageInternal: fix potential leak" 3655d972cdf2 EncodeImageInternal: fix potential leak 36565cd12c3d fixed signed/unsigned comparison warning 3657cdca30d0 Merge "cosmetics: shorten long line" 3658e025fb55 cosmetics: shorten long line 365922671ed6 Merge "enc/vp8l: fix double free on error" 3660e1b9b052 Merge "cosmetics: VP8LCreateHuffmanTree: fix indent" 3661a8e725f8 enc/vp8l: fix double free on error 366227541fbd cosmetics: VP8LCreateHuffmanTree: fix indent 36631d38b258 cwebp/windows: use MAKE_REFGUID where appropriate 3664817ef6e9 Merge "cwebp: fix WIC/Microsoft SDK compatibility issue" 3665902d3e3b cwebp: fix WIC/Microsoft SDK compatibility issue 366689d803c4 Merge "Fix a crash due to wrong pointer-integer arithmetic." 3667cb1bd741 Merge "Fix a crash in lossless decoder." 3668de2fe202 Merge "Some cleanup in VP8LCreateHuffmanTree() (and related functions CompareHuffmanTrees() and SetBitDepths()): - Move 'tree_size' initialization and malloc for 'tree + tree_pool' outside the loop. - Some renames/tweaks for readability." 3669ce69177a Fix a crash due to wrong pointer-integer arithmetic. 3670e40a3684 Fix a crash in lossless decoder. 36713927ff3a remove unneeded error condition for WebPMuxNumNamedElements() 36722c140e11 Some cleanup in VP8LCreateHuffmanTree() (and related functions CompareHuffmanTrees() and SetBitDepths()): - Move 'tree_size' initialization and malloc for 'tree + tree_pool' outside the loop. - Some renames/tweaks for readability. 3673861a5b7b add support for animation 3674eb5c16cc Merge "Set correct encode size in encoder's stats." 36754abe04a2 fix the return value and handle missing input file case. 36762fafb855 Set correct encode size in encoder's stats. 3677e7167a2b Provide one entry point for backward references. 3678c4ccab64 Print relevant lossless encoding stats in cwebp. 3679e3302cfd GetHuffBitLengthsAndCodes: reduce level of indirection 3680b5f2a9ed enc/vp8l: fix uninitialized variable warning 36817885f8b2 makefile.unix: add lossless encoder files 36821261a4c8 Merge "cosmetics" 36833926b5be Merge "dsp/cpu.c: Android: fix crash on non-neon arm builds" 3684834f937f dsp/cpu.c: Android: fix crash on non-neon arm builds 3685126e1606 cosmetics 3686e38602d2 Merge branch 'lossless_encoder' 3687e8d3d6a0 split StoreHuffmanCode() into smaller functions 3688d0d88990 more consolidation: introduce VP8LHistogramSet 36891a210ef1 big code clean-up and refactoring and optimization 369041b5c8ff Some cosmetics in histogram.c 3691ada6ff77 Approximate FastLog between value range [256, 8192] 3692ec123ca3 Forgot to update out_bit_costs to symbol_bit_costs at one instance. 3693cf33ccd1 Evaluate output cluster's bit_costs once in HistogramRefine. 3694781c01f4 Simple Huffman code changes. 3695a2849bc5 Lossless decoder: remove an unneeded param in ReadHuffmanCodeLengths(). 3696b39e7487 Reducing emerging palette size from 11 to 9 bits. 3697bfc73db4 Move GetHistImageSymbols to histogram.c 3698889a5786 Improve predict vs no-predict heuristic. 369901f50663 code-moving and clean-up 370031035f3b reduce memory usage by allocating only one histo 3701fbb501b8 Restrict histo_bits to ensure histo_image size is under 32MB 37028415ddf3 further simplification for the meta-Huffman coding 3703e4917299 A quick pass of cleanup in backward reference code 370483332b3c Make transform bits a function of encode method (-m). 370572920caa introduce -lossless option, protected by USE_LOSSLESS_ENCODER 3706c6ac4dfb Run TraceBackwards for higher qualities. 3707412222c8 Make histo_bits and transform_bits function of quality. 3708149b5098 Update lossless encoder strategy: 37090e6fa065 cache_bits passed to EncodeImageInternal() 3710e38b40a9 Factorize code for clearing HtreeGroup. 37116f4a16ea Removing the indirection of meta-huffman tables. 37123d33ecd1 Some renaming/comments related to palette in lossless encoder. 37134d02d586 Lossless encoder: correction in Palette storage 37144a636235 fix a memleak in EncodeImageInternal() 37150993a611 Full and final fix for prediction transform 3716afd2102f Fix cross-color transform in lossless encoder 3717b96d8740 Need to write a '0' bit at the end of transforms. 371854dad7e5 Color cache size should be counted as 0 when cache bits = 0 37194f0c5caf Fix prediction transform in lossless encoder. 372036dabdad Fix memory leak in method EncodeImageInternal for histogram_image. 3721352a4f49 Get rid of PackLiteralBitLengths() 3722d673b6b9 Change the predictor function to pass left pixel 3723b2f99465 Fix CopyTileWithPrediction() 372484547f54 Add EncodeImageInternal() method. 37256b38378a Guard the lossless encoder (in flux) under a flag 372609f7532c Fix few nits (const qualifiers) 3727648be393 Added implementation for various lossless functions 372832714ce3 Add VP8L prefix to backward ref & histogram methods. 3729fcba7be2 Fixed header file tag (WEBP_UTILS_HUFFMAN_ENCODE_H_) 3730bc703746 Add backward_ref, histogram & huffman encode modules from lossless. 3731fdccaadd Fixing nits 3732227110c4 libwebp interface changes for lossless encoding. 373350679acf minor style fixes 3734b38dfccf remove unneeded reference to NUM_LITERAL_CODES 37358979675b harmonize header description 3736c04eb7be tcoder.c: define NOT_HAVE_LOG2 for MSVC builds 37379a214fa1 Merge "VP8[L]GetInfo: check input pointers" 37385c5be8ba VP8[L]GetInfo: check input pointers 37390c188fec Merge changes I431acdfe,I713659b7 3740b3515c62 mux: drop 'chunk' from ChunkInfo member names 3741aea7923c muxi.h: remove some unused defines 374201422492 update NEWS file for next release 374329e3f7ec Merge "dec: remove deprecated WebPINew()" 37444718e449 Merge "muxedit: a few more size_t changes" 374582654f96 Merge "muxedit: remove a few redundant NULL checks" 374602f27fbd dec: remove deprecated WebPINew() 3747ccddb3fc muxedit: remove a few redundant NULL checks 3748a6cdf710 muxedit: a few more size_t changes 3749a3846892 Merge "mux: remove unused LIST_ID" 375011ae46ae alpha.c: quiet some size_t -> int conversion warnings 3751dee46692 mux: remove unused LIST_ID 375203f1f493 mux: add version checked entry points 37536a0abdaa Merge "doc: tile/alpha corrections" 3754c8139fbe Merge "few cosmetics" 375568338737 Merge "lossless: remove some size_t -> int conversions" 37565249e94a doc: tile/alpha corrections 3757d96e722b huffman: quiet int64 -> int conversion warning 3758532020f2 lossless: remove some size_t -> int conversions 375923be6edf few cosmetics 37601349edad Merge "configure: AC_ARG_* use AS_HELP_STRING" 3761bfbcc60a configure: AC_ARG_* use AS_HELP_STRING 37621427ca8e Merge "Makefile.am: header file maintenance" 3763087332e3 Merge "remove unused parameter 'round' from CalcProba()" 37649630e168 remove unused parameter 'round' from CalcProba() 376592092eaa Merge "bit_reader.h: correct include" 3766a87fc3f6 Merge "mux: ensure # images = # tiles" 376753af99b1 Merge "mux: use size_t consistently" 376839a57dae Makefile.am: header file maintenance 37691bd0bd0d bit_reader.h: correct include 3770326a3c6b mux: ensure # images = # tiles 377195667b8d mux: use size_t consistently 3772231ec1fb Removing the indirection of meta-huffman tables. 377315ebcbaa check return pointer from MuxImageGetListFromId 3774b0d6c4a7 Merge "configure: remove test for zlib.h" 37758cccac50 Merge "dsp/lossless: silence some build warnings" 3776b08819a6 dsp/lossless: silence some build warnings 37777ae22521 Android.mk: SSE2 & NEON updates 37780a49e3f3 Merge "makefile.unix add missing header files" 37792e75a9a1 Merge "decode.h: use size_t consistently" 3780fa13035e configure: remove test for zlib.h 3781d3adc81d makefile.unix add missing header files 3782262fe01b Merge "makefile.unix & Android.mk: cosmetics" 37834cce137e Merge "enc_sse2 add missing stdlib.h include" 378480256b85 enc_sse2 add missing stdlib.h include 37859b3d1f3a decode.h: use size_t consistently 378664083d3c Merge "Makefile.am: cosmetics" 3787dceb8b4d Merge changes If1331d3c,I86fe3847 37880e33d7bf Merge "webp/decode.h: fix prototypes" 3789fac0f12e rename BitReader to VP8LBitReader 3790fbd82b5a types.h: centralize use of stddef.h 37912154835f Makefile.am: cosmetics 37921c92bd37 vp8io: use size_t for buffer size 379390ead710 fix some more uint32_t -> size_t typing 3794cbe705c7 webp/decode.h: fix prototypes 37953f8ec1c2 makefile.unix & Android.mk: cosmetics 3796217ec7f4 Remove tabs in configure.ac 3797b3d35fc1 Merge "Android.mk & Makefile.vc: add new files" 37980df04b9e Android.mk & Makefile.vc: add new files 3799e4f20c5b Merge "automake: replace 'silent-rules' w/AM_SILENT_RULES" 38008d254a09 cosmetics 38016860c2ea fix some uint32_t -> size_t typing 38024af1858a Fix a crash due to max symbol in a tree >= alphabet size 38036f01b830 split the VP8 and VP8L decoding properly 3804f2623dbe enable lossless decoder 3805b96efd7d add dec/vp8i.h changes from experimental 380619f6398e add dec/vp8l{i.h,.c} from experimental 3807c4ae53c8 add utils/bit_reader.[hc] changes from experimental 3808514d0089 add dsp/lossless.[hc] from experimental 38099c67291d add utils/huffman.[hc] from experimental 3810337914a0 add utils/color_cache.[hc] from experimental 3811b3bf8fe7 the read-overflow code-path wasn't reporting as an error 38121db888ba take colorspace into account when cropping 381361c2d51f move the rescaling code into its own file and make enc/ and dec/ use it. 3814efc2016a Make rescaler methods generic 38153eacee81 Move rescaler methods out of io.c. 3816a69b893d automake: replace 'silent-rules' w/AM_SILENT_RULES 38176f7bf645 issue 111: fix little-endian problem in bit-reader 3818ed278e22 Removed unnecessary lookup 3819cd8c3ba7 fix some warnings: down-cast and possibly-uninitialized variable 38200a7102ba ~1% improvement of alpha compression 38213bc1b141 Merge "Reformat container doc" 3822dc17abdc mux: cosmetics 3823cb5810df Merge "WebPMuxGetImage: allow image param to be NULL" 3824506a4af2 mux: cosmetics 3825135e8b19 WebPMuxGetImage: allow image param to be NULL 3826de556b68 Merge "README.mux: reword some descriptions" 38270ee2aeb9 Makefile.vc: use batch mode rules 3828d9acddc0 msvc: move {i,p}db creation to object directory 3829237c9aa7 Merge "expose WebPFree function for DLL builds" 3830b3e4054f silence msvc debug build warning 383145feb55d expose WebPFree function for DLL builds 383211316d84 README.mux: reword some descriptions 38334be52f4a factorize WebPMuxValidate 383414f6b9f6 mux: light cleanup 38355e96a5db add more param checks to WebPPictureDistortion() 38368abaf820 Merge "silence some type size related warnings" 38371601a39b silence some type size related warnings 3838f3abe520 Merge "idec: simplify buffer size calculation" 3839a9c5cd4c idec: simplify buffer size calculation 38407b06bd7f Merge "configure/automake: add silent-rules option" 3841e9a7d145 Reformat container doc 3842d4e5c7f3 configure/automake: add silent-rules option 38435081db78 configure/automake: no -version-info for convenience libs 384485b6ff68 Merge "idec: fix WebPIUpdate failure" 38457bb6a9cc idec: fix internal state corruption 384689cd1bb8 idec: fix WebPIUpdate failure 384701b63806 4-5% faster decoding, optimized byte loads in arithmetic decoder. 3848631117ea Merge "cosmetics & warnings" 3849a0b2736d cosmetics & warnings 3850f73947f4 use 32bit for storing dequant coeffs, instead of 16b. 3851b9600308 Merge "store prediction mode array as uint8_t[16], not int[16]." 38527b67881a store prediction mode array as uint8_t[16], not int[16]. 3853cab8d4dc Merge "NEON TransformOne" 3854ba503fda NEON TransformOne 38559f740e3b Merge "gcc warning fix: remove the 'const' qualifier." 3856f76d3587 gcc warning fix: remove the 'const' qualifier. 3857e78478d6 Merge "webpmux: make more use of WebPData" 3858f85bba3d Merge "manpages: add BUGS section" 385948a43bbf Merge "makefile.unix: variable cosmetics" 3860c274dc96 makefile.unix: variable cosmetics 38611f7b8595 re-organize the error-handling in the main loop a bit 38621336fa71 Only recompute level_cost_[] when needed 3863771ee449 manpages: add BUGS section 38640f7820e6 webpmux: make more use of WebPData 3865974aaff3 examples: logging updates 38666c14aadd Merge "better token buffer code" 3867f4054250 better token buffer code 386818d959fa Merge "mux: add WebPData type" 3869eec4b877 mux: add WebPData type 38700de3096b use 16bit counters for recording proba counts 38717f23678d fix for LevelCost + little speed-up 38727107d544 further speed-up/cleanup of RecordCoeffs() and GetResidualCost() 3873fd221040 Introduce Token buffer (unused for now) 38745fa148f4 Merge "speed-up GetResidualCost()" 387528a9d9b4 speed-up GetResidualCost() 387611e7dadd Merge "misc cosmetics" 3877378086bd misc cosmetics 3878d61479f9 add -print_psnr and -print_ssim options to cwebp. 38792e3e8b2e add a WebPCleanupTransparentArea() method 3880552c1217 Merge "mux: plug some memory leaks on error" 3881a2a81f7d Merge "fix Mach-O shared library build" 3882b3482c43 Merge "fix gcc-4.0 apple 32-bit build" 3883e4e3ec19 fix gcc-4.0 apple 32-bit build 3884b0d2fecf mux: plug some memory leaks on error 3885f0d2c7a7 pass of cosmetics 3886b309a6f9 fix Mach-O shared library build 3887241ddd38 doc: delete mux container pdf 38888b1ba272 doc: update VP8 decode guide link 38897e4371c5 WebPMuxCreate: fix unchecked malloc 3890eb425586 Merge "have makefile.unix clean up src/webp/*~ too" 3891a85c3631 Merge "correct EncodeAlpha documentation" 3892a33842fd Merge "Update webp container spec with alpha filter options." 38938d6490da Incremental support for some of the mux APIs. 3894b8375abd have makefile.unix clean up src/webp/*~ too 3895b5855fc7 correct EncodeAlpha documentation 3896dba37fea Update webp container spec with alpha filter options. 38972e74ec8b fix compile under MINGW 3898716d1d7f fix suboptimal MAX_LEN cut-off limit 389957cab7b8 Harmonize the alpha-filter predictions at boundary 39003a989534 Merge "Fix bug for Alpha in RGBA_4444 color-mode." 39018ca2076d Introduce a 'fast' alpha mode 3902221a06bb Fix bug for Alpha in RGBA_4444 color-mode. 3903ad1e163a cosmetics: normalize copyright headers 3904c77424d7 cosmetics: light include cleanup 39059d0e17c9 fix msvc build breakage after 252028a 39067c4c177c Some readability fixes for mux library 3907d8a47e66 Merge "Add predictive filtering option for Alpha." 3908252028aa Add predictive filtering option for Alpha. 39099b69be1c Merge "Simplify mux library code" 3910a056170e Simplify mux library code 3911992187a3 improve log2 test 3912e852f832 update Android.mk file list 3913a90cb2be reduce number of copies and mallocs in alpha plane enc/dec 3914b1662b05 fix some more type conversion warnings w/MSVC 3915223d8c60 fix some uint64_t -> int conversion warnings with MSC 3916c1a0437b Merge "simplify checks for enabling SSE2 code" 3917f06817aa simplify checks for enabling SSE2 code 3918948d4fe9 silence a msvc build warning 391991179549 vwebp: msvc build tweaks 39207937b409 simple WebP viewer, based on OpenGL 39216aac1df1 add a bunch of missing 'extern "C"' 3922421eb99d Merge "Remove assigned-but-not-used variable "br"" 392391e27f45 better fitting names for upsampling functions 3924a5d7ed5c Remove assigned-but-not-used variable "br" 3925f62d2c94 remove unused 'has_alpha' from VP8GetInfo() signature 392608e86582 trap alpha-decoding error 3927b361eca1 add cut-off to arith coder probability update. 39288666a93a Some bug-fixes for images with alpha. 3929273a12a0 fix off-by-1 diff in case cropping and simple filtering 39302f741d1e webpmux: ReadImage: fix ptr free in error case 3931721f3f48 fix alpha decode 393260942c8c fix the has_alpha_ order 393330971c9e Implement progress report (and user abort) 3934eda520a9 cosmetics after 9523f2a 393538bd5bb5 Merge "Better alpha support in webpmux binary" 3936ccbaebfe Merge "Updated the includes to relative paths." 3937d71fbdcc fix small typo in error message array 3938cdf97aa2 Better alpha support in webpmux binary 3939885f25bc Updated the includes to relative paths. 3940a0ec9aac Update WebP encoder (cwebp) to support Alpha. 3941667b769a Fixed the include for types.h within mux.h 39429523f2a5 Add Alpha Encode support from WebPEncode. 394316612ddd Merge "Add Alpha Decode support from WebPDecode." 3944d117a940 Add Alpha Decode support from WebPDecode. 394567228734 cosmetics after e1947a9 3946e1947a92 Add Alpha encode/decode code. 3947afc4c5d6 simplify code by introducing a CopyPlane() helper func 3948113b3128 Merge "MUX API Updates" 3949c398f595 MUX API Updates 39505acf04ef remove orphan source file 3951059f03ef Merge "dec: validate colorspace before using as array index" 395270a03989 Merge "factorize some code" 39539b243b3d factorize some code 3954372e2b46 Correct a bug in ReadPNG() with GRAY_ALPHA images 3955469d6eb9 Merge "Makefile.am: remove redundant noinst_HEADERS" 39569fe3372f dec: validate colorspace before using as array index 39578962030f remove orphan source file 3958ced3e3f4 Makefile.am: remove redundant noinst_HEADERS 3959964387ed use WEBP_INLINE for inline function declarations 396090880a11 Merge "manpages: break long lines" 3961b5910895 Merge "manpages: minor formatting updates" 39624c451e4a Merge "Rectify the Chunk parsing logic." 396304e84cf1 examples: slight cleanup 3964099717ce manpages: break long lines 39651daf39bb manpages: minor formatting updates 3966abd030b5 fix missing "(void)" in function signature 3967f6a7d758 remove useless test 3968f07b2138 Rectify the Chunk parsing logic. 3969b8634f7d webpmux: fix lib link order 397042c2e682 Fix missing coma (on uncompiled code) 3971d8329d41 Android.mk: add missing source files 397213a54df5 Merge "More aggressive copy-edit; add TODO; validate HTML5" 3973868b96ae More aggressive copy-edit; add TODO; validate HTML5 3974767afea2 configure: check for a symbol contained in libpng 3975408b8918 Merge "Linewrap at 72 cols. Casual copy-edit." 39763ae318c7 Merge "Restore (most) emphasis; add emphasis to normative RFC 2119 terms (MUST, etc.)" 3977918eb2d8 Merge "Basic container doc source clean-up; fix lists and pseudocode blocks." 397803bec9e0 Linewrap at 72 cols. Casual copy-edit. 39792678d819 Restore (most) emphasis; add emphasis to normative RFC 2119 terms (MUST, etc.) 3980428674da Basic container doc source clean-up; fix lists and pseudocode blocks. 39816a77d928 Merge "Makefile.vc: cosmetics" 398228c38e8c Merge "Makefile.vc: condense directory creation rules" 398355be2cf8 Initial import of container spec document, from pdftotext transform. 3984a82a788b Makefile.vc: cosmetics 3985c8f41ce5 Makefile.vc: condense directory creation rules 39862b877cd0 Some fixes to Makefile.vc to support the src\mux directory. 39873eb969b3 Merge "Add Makefile.vc for Mux library & binary." 3988e78e971e Add Makefile.vc for Mux library & binary. 39896aedde58 Add manual for WebPMux tool. 39908a360d0a Merge "Added WebPMux Binary." 3991a4f32cae Added WebPMux Binary. 3992f3bf4c76 Added Mux Container Spec & README for MUX-API. 39939f761cfa Changed function signature for WebPMuxCreate 39945f31b5ec Merge "Add Mux library for manipulating WebP container." 39952315785f Add Mux library for manipulating WebP container. 39967e198abb update ChangeLog (tag: v0.1.3) 3997dfc9c1ea Harmonize the dates 399828ad70c5 Fix PNG decoding bug 3999846e93c5 Update AUTHORS & add .mailmap 4000563e52d6 cosmetics after '76036f5 Refactor decoder library' 400176036f54 Refactor decoder library 4002377ef43c configure.ac: update AC_INIT params 40037a8d8762 use a user-visible MACRO for max width/height. 4004d4e9f559 NEON decode support in WebP 40050ee683b5 update libtool version-info 4006fdbe02c5 windows: match _cond_destroy logic w/return variable name 4007206b686b README: correct advanced decode api pseudo-code 40086a32a0f5 make VP8BitReader a typedef, for better re-use 4009b112e836 create a libwebputils under src/utils 4010ee697d9f harmonize the include guards and #endif comments 4011a1ec07a6 Fixing compiler error in non x86 arch. 4012dcfa509a Fixed recursive inclusion of bit_writer.h and vp8enci.h. 4013e06ac088 create a separate libwebpdsp under src/dsp 4014ebeb412a use unsigned int for bitfields 4015341cc56a make kNewRange a static array 4016227a91e5 README: minor wording update 401705bd8e6a add man pages to dist 4018812dfa1a bump up versions in preparations for 0.1.3 4019a5b78c81 wrap alpha-related options under WEBP_EXPERIMENTAL_FEATURES flag 402034dc7907 regen ChangeLog for 0.1.3-rc2 40217c436630 Silence some (more) Visual Studio warnings. 402260306e8c add top-level gitattributes 40232aa6b80e Slience some Visual Studio warnings. 40244cbbb290 Merge "bump up version for next freeze" 4025a3291674 bump up version for next freeze 4026c7e86aba cosmetics: fix comment line lengths 4027c9e037ab makefile.unix: add simple dist target 402887d58ce9 makefile.unix: rule maintenance 4029d477de77 mend 4030fac15ec7 Update NEWS & README for next release V0.1.3 40316215595c Merge "add a -partition_limit option to limit the number of bits used by intra4x4" 40323814b76c Merge "reorganize chunk-parsing code" 4033900286e0 add a -partition_limit option to limit the number of bits used by intra4x4 4034cd12b4b0 add the missing cost for I4/I16 mode selection 4035dfcc2136 reorganize chunk-parsing code 40363cf20306 initialize pointers to function within VP8DspInit() 4037d21b4795 Merge "windows: add decode threading support" 4038473ae953 fix hang on thread creation failure 4039fccca420 windows: add decode threading support 4040a31f843a Use the exact PNG_INCLUDES/PNG_LIBS when testing for -lpng 4041ad9b45f1 Merge "Makefile.vc: rule maintenance" 4042565a2cab Makefile.vc: rule maintenance 40432d0da681 makefile.unix: disable Wvla by default 4044fc7815d6 multi-thread decoding: ~25-30% faster 4045acd8ba42 io->teardown() was not always called upon error 4046c85527b1 Merge "Makefile.vc: add DLL configs" 4047e1e9be35 cosmetics: spelling/grammar in README and lib headers 4048b4d0ef8f Makefile.vc: add DLL configs 4049998754a7 remove unused nb_i4_ and nb_i16_ fields. 40509f01ce3a rename WebPDecBuffer::memory -> private_memory 4051fb5d659b fix an overflow bug in LUT calculation 4052d646d5c7 swig: add WebPDecodeARGB 405378aeed40 add missing WebPDecodeARGBInto() and switch ARGB4444 to RGBA4444 as was intended 4054cd7c5292 explicitly mark library functions as extern 405519db59f8 add support for RGB565, ARGB4444 and ARGB colorspace (decoder) 4056c915fb2a encoder speed-up: hardcode special level values 4057c558bdad Rename and improve the API to retrieve decoded area 4058bf599d74 Merge "makefile.unix: disable -Wvla by default" 4059c9ea03d7 SSE2 version of strong filtering 4060993af3e2 makefile.unix: disable -Wvla by default 40613827e1bc Merge "examples: (windows/WIC) add alpha support" 4062e291fae0 SSE2 functions for the fancy upsampler. 4063a06bbe2e add WebPISetIOHooks() to set some custom hooks on the incremental decoder object. 40647643a6f2 Merge "makefile.unix: use uname to detect OSX environment" 40655142a0be export alpha channel (if present) when dumping to PGM format 406614d5731c makefile.unix: use uname to detect OSX environment 406708057062 examples: quiet warnings 40683cfe0888 examples: (windows/WIC) add alpha support 406913ed94b8 add compile warning for variable-length-array 40705a18eb1a Merge "add Advanced Decoding Interface" 40715c4f27f9 add missing \n 4072f4c4e416 80 cols fix 4073d2603105 add Advanced Decoding Interface 4074bd2f65f6 sse2 version of the complex filter 407596ed9ce0 perform two idct transforms at a time when possible 407601af7b69 use aligned stored 40770e1d1fdf Merge "Makefile.vc: add experimental target" 40782a1292a6 Makefile.vc: add experimental target 407923bf351e Enable decode SSE2 for Visual Studio 4080131a4b7b dec/dsp_sse2: fix visual studio compile 408100d9d680 swig: file reorganization 40827fc7e0d9 Merge "swig/java: basic encode support" 40833be57b16 fix MSVC compile for WEBP_EXPERIMENTAL_FEATURES 408440a7e347 dec/dsp: disable sse2 for Visual Studio builds 4085e4d540c8 add SSE2 code for transform 408654f2170a swig/java: basic encode support 4087c5d4584b call function pointers instead of C-version 4088ea43f045 Merge "configure: mingw32 targets: test for WIC support" 4089a11009d7 SSE2 version of simple in-loop filtering 409042548da9 shave one unneeded filter-cache line 409131f9dc6f configure: mingw32 targets: test for WIC support 409219559699 Merge "split expression in two." 4093415dbe46 split expression in two. 4094e29072a8 configure: test for zlib only w/--enable-experimental 4095b2b0090b Simplify Visual Studio ifdefs 4096ca7a2fd6 Add error reporting from encoding failures. 40976c9405db Merge "Makefile.vc: require CFG with clean target" 40980424ecd9 Makefile.vc: require CFG with clean target 4099003417c7 Enable SSE2 for Visual Studio builds 4100af10db4a little speed up for VP8BitUpdate() 4101e71418f8 more MSVC files to ignore 410246d90363 cosmetics 4103edf59ab3 typo fix 410472229f5f Add support for x64 and SSE2 builds under Windows. 410592e5c6e1 VP8GetInfo() + WebPResetDecParams() 4106416b7a6b raise the fixed-point precision for the rescaler 4107aa87e4e0 fix alignment 4108eb66670c disable WEBP_EXPERIMENTAL_FEATURES 4109c5ae7f65 typo fix: USE_ => WEBP_ 4110d041efae swig: add libwebp.jar/libwebp_java_wrap.c 4111f6fb3877 add swig interface 4112e9273902 align buffer for double too 4113842c009b fix -strong option 4114d0a70387 Merge "cosmetics" 4115fc0a02e5 fix the dichotomy loop 411638369c03 cosmetics 41178dfc4c6f factorize and unify GetAlpha() between the C and SSE2 version 41186d0e66c2 prepare experimentation with yuv444 / 422 411979cc49f5 add a --enable-experimental option to './configure' 4120d7575238 sse2 version of CollectHistogram() 4121c1c728d6 add an extra #ifdef WEBP_EXPERIMENTAL_FEATURES to avoid 'unused variable' warning 412260c61d2d always call VP*EncDeleteAlpha() unconditionnally, for simplicity 41230f8c6384 simply don't call WriteExtensions() if WEBP_EXPERIMENTAL_FEATURES is not defined 412447c661d5 rename swap -> swap_rb 412510d55bbb move chunk[] declaration out of the for() loop 4126517cec21 fix indentation 4127f7d9e261 fix merge problems 41288fd42b3a add a stride 'a_stride' for the alpha plane 4129b8dcbf2f fix alpha-plane copy and crop methods 4130cdef89de fix some 'unused variable' warning 4131fb29c262 SSE2 version of the fwd transform and the squared sum metric 41322ab4b72f EXPERIMENTAL: add support for alpha channel 4133cfbf88a6 add SSE2 functions. ~2x faster encoding on average. 4134e7ff3f9a merge two ITransforms together when applicable and change the TTransform to return the sum directly. 4135ca554137 fix WebPIDecGetRGB() to accept any RGB(A) mode, not just MODE_RGB 41368aa50efd fix some 'man' typos 4137d3f3bdda update ChangeLog (tag: v0.1.2) 4138d7e9a69c update contributor list 4139261abb8e add a 'superclean' section 4140276ae825 Remove files not mean to be in git, and update .gitignore 414124868455 build: prepare libwebp.pc 414214ceb6e8 add "-version" description to man pages 4143b247a3b2 Create the m4 directory, and also place .gitignore in there for libtool. 4144cdd734c9 Resolve automake warnings 4145c5fa726e build: add pkgconfig files 4146b20aaca2 build: just use autoreconf, avoid calling tools manually 41474b0b0d66 cwebp: use modern functions 4148efbc6c41 update Android.mk 41497777570b better version of ChangeLog 4150fa70d2b7 update version number in the DOC 4151f8db5d5d more C89-fixes 41520de013b3 fix typos 4153650ffa3b add version getters for decoder and encoder 4154be4867d2 doc for incremental decoding 415556732a1b add idec.obj in MSVC makefile 4156208afb5e add c++ guards 41578bf76fe0 add incremental decoding 41581f288328 'inline' isn't defined in strict ansi c89 41598b77c632 move the quantization function to dsp.c 4160b2c3575c add a 'last_y' field to WebPDecParams 41612654c3da correctly pass along the exact same status returned from ParsePartitions 41624704146a add missing precision in the man 41636d978a6c add error messages 41646463e6ab add some install instructions, and fix intel-mac flags 416505fb7bfc Merge ".gitignore: initial version" 4166c33f0195 .gitignore: initial version 4167e532b9ab Makefile: allow out of tree builds 41684c0da7aa enable sparse dc/ac transforms 416907dbb8d5 clarify the return logic 41705c69e1bb fix bigger-by-1 array 41717c5267e3 fix a (harmless) typo: non_zero_ -> non_zero_ac_ 4172bc752135 fix missing free() 4173af3e2aaa remove trailing spaces 417413e50da6 make the bitreader preload at least 8bits, instead of post-load them (this makes initialization easier and will be helpful for incremental decoding). Modify ParsePartitions() to accommodate for truncated input. 4175f4888f77 emit 9 - nb_bits trailing zeros instead of 8 41763db65255 separate block-parsing into a visible VP8DecodeMB() 4177a871de02 add missing extern "C" 4178b3ce8c52 remove a gcc warning about type pun by using a proper union'd type 4179e1863715 update after addition of webpi.h 41803e856e2d Extract some useful functions around decoding buffer WebPDecParams. 4181d5bc05a4 make the filtering process match libvpx and ffvp8 4182dd60138d add man pages for cwebp(1) and dwebp(1) 4183c4fa3644 fix header 41845b70b378 * add an option to bypass_filtering in VP8Io. 4185b97a4003 simplify QuantizeBlock code a bit 418684b58ebb add more checks around picture allocation 4187b65a3e10 remove absolute_delta_ field and syntax code 41880744e842 Dont' open output file until we're sure the input file is valid 4189d5bd54c7 fix typo and buggy line 4190f7a9549d Add a simple top-level makefile.unix for quick & easy build. 41915f36b944 update the doc for the -f option 4192f61d14aa a WebP encoder converts PNG & JPEG to WebP 419381c96621 oops: forgotten call to Initialize() + move the error message to a more useful place 419487ffa005 typo: fix a missing 'R', was confusing. 4195b04b857a * add decoding measurement using stopwatch.h (use -v option) * support PNG output through WIC on Win32 4196746a4820 * make (*put)() hook return a bool for abort request. * add an enum for VP8Status() to make things clearer 419773c973e6 * strengthen riff/chunk size checks * don't consider odd-sized chunks being an error 41981dc4611a add support for PNG output (default) regularize include guards 4199860641df fix a typo: sizeof(kYModeProbaInter0) => sizeof(kUVModeProbaInter0) 42003254fc52 fix some petty constness fix the ./configure file too 4201504d3393 fix eof_ mis-initialization 42022bc0778f leftover Makefile.* from previous commit 4203d2cf04e4 move Makefile.am one level below, to src/dec fix typos here and there dwebp is now an installed program 4204ade92de8 typo: vp8.h -> decode_vp8.h 4205d7241241 forgot to declare types.h to be installed 42066421a7a4 move the decoder sourcetree to a sub-location src/dec to make room for future libs sources 4207a9b3eab6 correct layout name is IMC4. 42082330522c handle corner case of zero-dimensions 4209280c3658 make VP8Init() handle short buffers (< 2 bytes) correctly 4210b1c9e8b4 handle error cases more robustly 42110e94935c Merge "table-less version of clip_8b()" 42121e0a2d25 table-less version of clip_8b() 4213e12109ee dwebp: change -yuv option to -raw change the layout to IMC2 4214d72180a4 speed-up fancy upscaler 42159145f3bc reset eof_ at construction time 4216a7ee0559 simplify the logic of GetCoeffs() 4217f67b5939 lot of cosmetics 4218ea27d7c6 fix endian problem on PowerPC 4219beb0a1ba fix signature of VP8StoreBlock 4220b128c5e2 Merge "fancy chroma upscaling" 42216a37a2aa fancy chroma upscaling 4222ff565edc fix two numeric typos 42235a936a0a use uintptr_t for casting pointers to ints 4224e14a0301 for cross_compiling=yes to prevent executing any binary 422583b545ee add vc9+ makefile 4226296f6914 fix output loop for small height 4227cbfbb5c3 convert to plain-C 4228f09f96ee Fix declaration after statement warning 42295981ee55 Fix UV plane ac/dc quantizer transposition 4230c8d15efa convert to ANSI-C 4231c3f41cb4 Initial commit 4232