161e372b7 update NEWS 27ae658a0 bump version to 1.0.2 351c4907d update AUTHORS 4666bd6c6 man/cwebp.1: refine near-lossless text 5561cdce5 Clarify the doc about GetFeatures. 6aec2cf02 near_lossless: fix fuzzing-detected integer overflow 7928a75de webp: Fix VP8LBitWriterClone() bug 85173d4ee neon IsFlat 95b081219 IsFlat: inline when possible 10381b7b54 IsFlat: use int for thresh 116ed15ea1 fix unprobable leak in webp_sdl.c 1222bbb24e Merge "IsFlat: return int" 138b3fb238 Merge tag 'v1.0.1' 14f435de95 IsFlat: return int 1541521aed utils.h: only define WEBP_NEED_LOG_TABLE_8BIT when needed 169f4d4a3f neon: GetResidualCost 170fd7514b neon: SetResidualCoeffs 18f95a996c Simpler histogram clustering. 19e85d3313 update ChangeLog (tag: v1.0.1-rc2, tag: v1.0.1, origin/1.0.1, 1.0.1) 20fa8210e4 Fix pair update in stochastic entropy merging. 21fd198f73 add codereview.settings 22825389ac README.mux: add a reference to the AnimDecoder API 233be698c3 CMake: fix webp_js compilation 24485ff86f Fix pair update in stochastic entropy merging. 254cd0582d CMake: fix webp_js compilation 264cbb4caf update NEWS 27f5a5918d bump version to 1.0.1 28d61385db Speed-up: Make sure we only initialize histograms when needed. 296752904b Speed-up: Make sure we only initialize histograms when needed. 300c570316 update AUTHORS 31301a2dda img2webp: add help note about arguments from a file 32f0abab92 Speedups for empty histograms. 33f2dfd925 Split HistogramAdd to only have the high level logic in C. 3406b7bc7d Fix compilation on windows and clang-cl+ninja. 35b6284d82 img2webp: add help note about arguments from a file 36decf6f6b Speedups for empty histograms. 37dea3e899 Split HistogramAdd to only have the high level logic in C. 38632798ae Merge "Fix compilation on windows and clang-cl+ninja." 39dc1a9518 Merge "libwebp: Unicode command tools on Windows" 409cf9841b libwebp: Unicode command tools on Windows 4198179495 remove some minor TODOs 42a376e7b9 Fix compilation on windows and clang-cl+ninja. 43cbf82cc0 Remove AVX2 files. 445030e902 Merge "TIFF decoder: remove unused KINV definition" 45ac543311 Remove a few more useless #defines 46123d3306 TIFF decoder: remove unused KINV definition 47ef1094b0 Merge "- install pkg-config files during the CMake build" 48b911fbc9 libwebp: Remove duplicate GIFDisplayError in anim_util 49eee00b66 - install pkg-config files during the CMake build 50ac3ec8c9 Merge "Clean-up the common sources in dsp." 513e13da7b Clean-up the common sources in dsp. 525c395f1d libwebp: cmake-format all 53e7a69729 libwebp: Add extras targets in CMakeLists.txt 54e52485d6 libwebp: Rename macros in webpmux.c 5592dc0f09 clean-up MakeInputImageCopy() 5639952de2 VP8IteratorImport: add missing 'const' 57382af7a2 clean-up WebPBlendAlpha 5814d020f6 libwebp: Use ExUtilGet*() in anim_diff 590d92ff25 libwebp: remove useless variable in gif2webp 60556cb1b4 Merge "CMake: Set WEBP_BUILD_GIF2WEBP to off" 61da26ee49 CMake: Set WEBP_BUILD_GIF2WEBP to off 62b2a867c0 cwebp: Don't premultiply during -resize if -exact 63637141bc pngdec: fix build w/libpng < 1.4.x 64bc5092b1 pngdec: set memory functions 6550d8345a Fix CMake math library. 666aa3e8aa Fix math library on Visual Studio. 67d71df4e2 Fix math library finding in CMake. 68de08d727 cosmetics: normalize include guard comment 69009562b4 vwebp: Fix bug when Dispose then NoBlend frames 70423f2579 Fix up CMake to create targets. 71907208f9 Wait for all threads to be done in DecodeRemaining. 724649b3c4 vwebp: Add background color display option 7378ad57a3 Fix bad glClearColor parameters 74da96d8d9 Allow for a non-initialized alpha decompressor in DoRemap. 752563db47 fix rescaling rounding inaccuracy 76211f37ee fix endian problems in pattern copy 775f0f5c07 Make sure partition #0 is read before VP8 data in IDecode. 78de98732b fix GetColorf() bug 794338cd36 misc fixes in libwebpmux 80e00af13e fix signatures after a9ceda7ff1 81a9ceda7f Speed-up chunk list operations. 822281bbf6 Merge "Better handling of bogus Huffman codes." 8339cb9aad Better handling of bogus Huffman codes. 8489cc9d37 Merge "fix read-overflow while parsing VP8X chunk" 8595fd6507 fix read-overflow while parsing VP8X chunk 869e729fe1 Fix VP8IoTeardownHook being called twice on worker sync failure 8729fb8562 Merge "muxread,anmf: fail on multiple image chunks" 88eb82ce76 muxread,anmf: fail on multiple image chunks 891344a2e9 fix alpha-filtering crash when image width is larger than radius 90be738c6d muxread,ChunkVerifyAndAssign: validate chunk_size 912c70ad76 muxread,CreateInternal: fix riff size checks 92569001f1 Fix for thread race heap-use-after-free 93c56a02d9 Android.mk: use LOCAL_EXPORT_C_INCLUDES w/public libs 9415795596 CMakeLists.txt,cosmetics: normalize if() formatting 951a44c233 Merge "cmake: add support for webpmux" 96e9569ad7 Merge "configure,*am,cosmetics: s/WANT_/BUILD_/" 9735c7de6f cmake: add support for webpmux 980f25e61c WebpToSDL(): fix the return value in case of error 995d8985de configure,*am,cosmetics: s/WANT_/BUILD_/ 100895fd28f Merge "man/Makefile.am: add img2webp.1" 1015cf3e2af man/Makefile.am: add img2webp.1 1022a9de5b9 Add build rules for anim_diff & anim_dump utils. 10371ed73cf fix invalid check for buffer size 104af0e4fbb gif2webp: fix transcode of loop count=65535 105dce5d764 Limit memory allocation when reading invalid Huffman codes. 106f9df0081 Merge "cmake: quiet glut deprecation warnings on OS X" 107dc39b16f webpmux.1: correct grammar 108c7aa1264 cwebp.c: fix a missing \n 10953aa51e9 Merge tag 'v1.0.0' 110698b8844 update ChangeLog (tag: v1.0.0) 1118d510751 webp-container-spec: correct frame duration=0 note 112e6b2164e vwebp: Copy Chrome's behavior w/frame duration == 0 113094b3b28 cmake: quiet glut deprecation warnings on OS X 11471c39a06 webp-container-spec: correct frame duration=0 note 115fd3d5756 vwebp: Copy Chrome's behavior w/frame duration == 0 116b0c966fb Build vwebp from CMake. 117d20b7707 update ChangeLog (tag: v1.0.0-rc3) 1180d5fad46 add WEBP_DSP_INIT / WEBP_DSP_INIT_FUNC 119d77bf512 add WEBP_DSP_INIT / WEBP_DSP_INIT_FUNC 120c1cb86af fix 16b overflow in SSE2 121e577feb7 makefile.unix: add DEBUG flag for compiling w/ debug-symbol 12299be34b3 cwebp,get_disto: fix bpp output 123e122e511 cwebp,get_disto: fix bpp output 124f5565ca8 cmake: Make sure we use near-lossless by default. 125d898dc14 fix bug in WebPImport565: alpha value was not set 1261c8f358d Fix CMake with WASM. 127a0215fb7 webp_js: fix webp_js demo html 128882784b0 update ChangeLog (tag: v1.0.0-rc2) 1292f930e08 Revert "Use proper targets for CMake." 1308165e8fb Use proper targets for CMake. 1313f157dd5 Remove some very hard TODOs. 132abb47760 Merge "Use proper targets for CMake." 133cd758a17 {de,}mux/Makefile.am: add missing headers 134e155dda0 Use proper targets for CMake. 135b892b8ba makefile.unix,dist: use ascii for text output 13664a57d05 add -version option to anim_dump,anim_diff and img2webp 137994be82d Merge "Remove some very hard TODOs." 1384033e1d7 Remove some very hard TODOs. 139fc1b8e3a webp_js: fix webp_js demo html 14015aa48d9 update ChangeLog (tag: v1.0.0-rc1) 141e607dabc update AUTHORS 14238410c08 [CFI] Remove function pointer casts 143978eec25 [CFI] Remove function pointer casts 144c57b2736 bump version to 1.0.0 145cba28853 update NEWS 146c909d531 Merge "remove some deprecation warning on MacOSX" 147217443c7 remove some deprecation warning on MacOSX 148b672bdfa configure: quiet glut deprecation warnings on OS X 149daa9fcaf configure: use sdl-config if available 150dd174cae Merge "imagedec: support metadata reading for WebP image decoding" 151641cedcc imagedec: support metadata reading for WebP image decoding 152065b2ce1 anim_diff: add a couple missing newlines in Help() 153c4cc1147 Merge "gif2webp: force low duration frames to 100ms" 15409333097 gif2webp: force low duration frames to 100ms 155e03f0ec3 sharp_yuv: use 14b fixed-point precision for gamma 156b2db361c image_enc,WebPWritePNG: move locals after setjmp 15774e82ec6 Merge "WebPPictureDistortion: fix big-endian results order" 158645d04ca Merge "cwebp,get_disto: report bpp" 159120f58c3 Merge "lossless*sse2: improve non-const 16-bit vector creation" 160a7fe9412 WebPPictureDistortion: fix big-endian results order 161e26fe066 cwebp,get_disto: report bpp 1629df64e28 Merge changes Id5b4a1a4,Ia20ce844 1638043504f lossless*sse2: improve non-const 16-bit vector creation 1641e3dfc48 Import: extract condition from loop 1653b07d327 Import,RGBA: fix for BigEndian import 166551948e4 Remove unused argument in VP8LBitsEntropy. 1673005237a ReadWebP: fix for big-endian 168499c395a Merge "anim_diff: expose the -max_diff option" 169f69dcd69 Merge "remove WEBP_EXPERIMENTAL_FEATURES" 17007d884d5 anim_diff: expose the -max_diff option 171f4dd9256 remove WEBP_EXPERIMENTAL_FEATURES 17294a8377b extract the command-line parsing helpers to example_util 173fc09e6e2 PNM decoder: prevent unsupported depth=2 PAM case. 1746de58603 MIPS64: Fix defined-but-not-used errors with WEBP_REDUCE_CSP 175cbde5728 gif2webp: add support for reading from stdin 176cf1c5054 Add an SSE4 version of some lossless color transforms. 17745a8b5eb Fix lint error with man page. 178cff38e8f Merge "PNG decoder: handle gAMA chunk" 17959cb1a48 Merge "enable dc error-diffusion always" 18078318b30 PNG decoder: handle gAMA chunk 181664c21dd Merge "remove some TODOs" 182815652de enable dc error-diffusion always 183aec45cec remove some TODOs 1845715dfce fix block-count[] increment in case of large image 185c2d04f3e enable DC error-diffusion always for multi-pass 18696bf07c5 use DC error diffusion for U/V at low-quality 1871c59020b fix missing sse41 targets in makefile.unix 1887a8e814b cosmetics: s/color_space/colorspace/ 18905f6fe24 upsampling: rm asserts w/REDUCE_CSP+OMIT_C_CODE 190b4cf5597 Merge "Upsampling SSE2/SSE4 speedup." 191ccbeb32c Makefile.vc: add missing sse41 files 19255403a9a Upsampling SSE2/SSE4 speedup. 193807b53c4 Implement the upsampling/yuv functions in SSE41 19484101a81 Fix wasm WebP compilation 1958bebd2a3 fix warning on MSVC 196a7f93fe3 webpmux: allow reading argument from a file 197b69f18a7 gif2webp.1: fix -loop_compatibility layout 19872d530c0 Merge "fix lossless decoding w/WEBP_REDUCE_SIZE" 199296c7dc4 fix lossless decoding w/WEBP_REDUCE_SIZE 2000d5d029c Merge "ImgIoUtilReadFile: fix file leak upon error" 201ae568ce7 ImgIoUtilReadFile: fix file leak upon error 202796b5a8a Merge tag 'v0.6.1' 2036b7a95fd update ChangeLog (tag: v0.6.1) 204f66955de WEBP_REDUCE_CSP: restrict colorspace support 2051af0df76 Merge "WEBP_REDUCE_CSP: restrict colorspace support" 2066de20df0 WEBP_REDUCE_CSP: restrict colorspace support 207a289d8e7 update ChangeLog (tag: v0.6.1-rc2) 208c10a493c vwebp: disable double buffering on windows & mac 2090d4466c2 webp_to_sdl.c: fix file mode 2101b27bf8b WEBP_REDUCE_SIZE: disable all rescaler code 211126be109 webpinfo: add -version option 2120df22b9e WEBP_REDUCE_SIZE: disable all rescaler code 2139add62b5 bump version to 0.6.1 214d3e26144 update NEWS 2152edda639 README: add webpinfo section 2169ca568ef Merge "right-size some tables" 21731f1995c Merge "SSE2 implementation of HasAlphaXXX" 218a80c46bd SSE2 implementation of HasAlphaXXX 219083507f2 right-size some tables 2202e5785b2 anim_utils.c: remove warning when !defined(WEBP_HAVE_GIF) 221b299c47e add WEBP_REDUCE_SIZE 222f593d71a enc: disable pic->stats/extra_info w/WEBP_DISABLE_STATS 223541179a9 Merge "predictor_enc: fix build w/--disable-near-lossless" 2245755a7ec predictor_enc: fix build w/--disable-near-lossless 225eab5bab7 add WEBP_DISABLE_STATS 2268052c585 remove some petty TODOs from vwebp. 227c245343d move LOAD8x4 and STORE8x2 closer to their use location 228b9e734fd dec,cosmetics: normalize function naming style 229c188d546 dec: harmonize function suffixes 23028c5ac81 dec_sse41: harmonize function suffixes 231e65b72a3 Merge "introduce WebPHasAlpha8b and WebPHasAlpha32b" 232b94cee98 dec_sse2: remove HE8uv_SSE2 23344a0ee3f introduce WebPHasAlpha8b and WebPHasAlpha32b 234aebf59ac Merge "WebPPictureAllocARGB: align argb allocation" 235c184665e WebPPictureAllocARGB: align argb allocation 2363daf7509 WebPParseHeaders: remove obsolete animation TODO 23780285d97 cmake: avoid security warnings under msvc 238650eac55 cmake: don't set -Wall with MSVC 239c462cd00 Remove useless code. 24001a98217 Merge "remove WebPWorkerImpl declaration from the header" 2413c49fc47 Merge "thread_utils: fix potentially bad call to Execute" 242fde2782e thread_utils: fix potentially bad call to Execute 2432a270c1d remove WebPWorkerImpl declaration from the header 244f1f437cc remove mention of 'lossy-only parameters' from the doc 2453879074d Merge "WebPMemToUint32: remove ptr cast to int" 24604b029d2 WebPMemToUint32: remove ptr cast to int 247b7971d0e dsp: avoid defining _C functions w/NEON builds 2486ba98764 webpdec: correct alloc size check w/use_argb 2495cfb3b0f normalize include guards 250f433205e Merge changes Ia17c7dfc,I75423abb,Ia2f716b4,I161caa14,I4210081a, ... 2518d033b14 {dec,enc}_neon: harmonize function suffixes x2 2520295e981 upsampling_neon: harmonize function suffixes 253d572c4e5 yuv_neon: harmonize function suffixes 254ab9c2500 rescaler_neon: harmonize function suffixes 25593e0ce27 lossless_neon: harmonize function suffixes 25622fbc50e lossless_enc_neon: harmonize function suffixes 257447875b4 filters_neon,cosmetics: fix indent 258e51bdd43 remove unused VP8TokenToStats() function 259785da7ea enc_neon: harmonize function suffixes 260bc1a251f dec_neon: harmonize function suffixes 26161e535f1 dsp/lossless: workaround gcc-4.8 bug on arm 26268b2eab7 cwebp: fix alpha reporting w/lossless & metadata 26330042faa WebPDemuxGetI: add doc details around WebPFormatFeature 2640a17f471 Merge "WIP: list includes as descendants of the project dir" 265a4399721 WIP: list includes as descendants of the project dir 26608275708 Merge "Make sure we reach the full range for alpha blending." 267d361a6a7 yuv_sse2: harmonize function suffixes 2686921aa6f upsampling_sse2: harmonize function suffixes 26908c67d3e ssim_sse2: harmonize function suffixes 270582a1b57 rescaler_sse2: harmonize function suffixes 2712c1b18ba lossless_sse2: harmonize function suffixes 2720ac46e81 lossless_enc_sse2: harmonize function suffixes 273bc634d57 enc_sse2: harmonize function suffixes 274bcb7347c dec_sse2: harmonize function suffixes 275e14ad93c Make sure we reach the full range for alpha blending. 2767038ca8d demux,StoreFrame: restore hdr size check to min req 277fb3daad6 cpu: fix ssse3 check 278be590e06 Merge "Fix CMake redefinition for HAVE_CPU_FEATURES_H" 27935f736e1 Fix CMake redefinition for HAVE_CPU_FEATURES_H 280a5216efc Fix integer overflow warning. 281a9c8916b decode.h,WebPIDecGetRGB: clarify output ptr validity 2823c74c645 gif2webp: handle 1-frame case properly + fix anim_diff 283c7f295d3 Merge "gif2webp: introduce -loop_compatibility option" 284b4e04677 gif2webp: introduce -loop_compatibility option 285f78da3de add LOCAL_CLANG_PREREQ and avoid WORK_AROUND_GCC w/3.8+ 28601c426f1 define WEBP_USE_INTRINSICS w/gcc-4.9+ 2878635973d use sdl-config (if available) to determine the link flags 288e9459382 use CPPFLAGS before CFLAGS 2894a9d788e Merge "Android.mk,mips: fix clang build with r15" 2904fbdc9fb Android.mk,mips: fix clang build with r15 291a80fcc4a ifdef code not used by Chrome/Android. 2923993af12 Fix signed integer overflows. 293f66f94ef anim_dump: small tool to dump frames from animated WebP 2946eba857b Merge "rationalize the Makefile.am" 295c5e34fba function definition cleanup 2963822762a rationalize the Makefile.am 297501ef6e4 configure style fix: animdiff -> anim_diff 298f8bdc268 Merge "protect against NULL dump_folder[] value in ReadAnimatedImage()" 29923bfc652 protect against NULL dump_folder[] value in ReadAnimatedImage() 3008dc3d71b cosmetics,ReadAnimatedWebP: correct function comment 3015bd40066 Merge changes I66a64a0a,I4d2e520f 3027945575c cosmetics,webpinfo: remove an else after a return 3038729fa11 cosmetics,cwebp: remove an else after a return 304f324b7f9 cosmetics: normalize fn proto & decl param names 305869eb369 CMake cleanups. 306289e62a3 Remove declaration of unimplemented VP8ApplyNearLosslessPredict 30720a94186 pnmdec,PAM: validate depth before calculating bytes_per_px 30834130afe anim_encode: fix integer overflow 30942c79aa6 Merge "Encoder: harmonize function suffixes" 310b09307dc Encoder: harmonize function suffixes 311bed0456d Merge "SSIM: harmonize the function suffix" 31254f6a3cf lossless_sse2.c: fix some missed suffix changes 313088f1dcc SSIM: harmonize the function suffix 31486fc4dd9 webpdec: use ImgIoUtilCheckSizeArgumentsOverflow 31508ea9ecd imageio: add ability restrict max image size 3166f9daa4a jpegdec,ReadError: fix leaks on error 317a0f72a4f VP8LTransformColorFunc: drop an non-respected 'const' from the signature. 3188c934902 Merge "Lossess dec: harmonize the function suffixes" 319622242aa Lossess dec: harmonize the function suffixes 3201411f027 Lossless Enc: harmonize the function suffixes 32124ad2e3c add const to two variables 32246efe062 Merge "Allow the lossless cruncher to work for alpha." 3238c3f9a47 Speed-up LZ77. 3241aef4c71 Allow the lossless cruncher to work for alpha. 325b8821dbd Improve the box LZ77 speed. 3267beed280 add missing ()s to macro parameters 3276473d20b Merge "fix Android standalone toolchain build" 328dcefed95 Merge "build.gradle: fix arm64 build" 3290c83a8bc Merge "yuv: harmonize suffix naming" 330c6d1db4b fix Android standalone toolchain build 331663a6d9d unify the ALTERNATE_CODE flag usage 33273ea9f27 yuv: harmonize suffix naming 333c71b68ac build.gradle: fix arm64 build 334c4568b47 Rescaler: harmonize the suffix naming 3356cb13b05 Merge "alpha_processing: harmonize the naming suffixes to be _C()" 33683a3e69a Merge "simplify WEBP_EXTERN macro" 3377295fde2 Merge "filters: harmonize the suffixes naming to _SSE2(), _C(), etc." 3388e42ba4c simplify WEBP_EXTERN macro 339331ab34b cost*.c: harmonize the suffix namings 340b161f670 filters: harmonize the suffixes naming to _SSE2(), _C(), etc. 341dec5e4d3 alpha_processing: harmonize the naming suffixes to be _C() 3426878d427 fix memory leak in SDL_Init() 343461ae555 Merge "configure: fix warnings in sdl check" 34462486a22 configure: test for -Wundef 34592982609 dsp.h: fix -Wundef w/__mips_dsp_rev 3460265cede configure: fix warnings in sdl check 34788c73d8a backward_references_enc.h: fix WINDOW_SIZE_BITS check 3484ea49f6b rescaler_sse2.c: fix WEBP_RESCALER_FIX -> _RFIX typo 3491b526638 Clean-up some CMake 35087f57a4b Merge "cmake: fix gif lib detection when cross compiling" 351b34a9db1 cosmetics,dec_sse2: remove some redundant comments 352471c5755 cmake: fix gif lib detection when cross compiling 353c793417a cmake: disable gif2webp if gif lib isn't found 354dcbc1c88 cmake: split gif detection from IMG deps 35566ad84f0 Merge "muxread: remove unreachable code" 35650ec3ab7 muxread: remove unreachable code 3577d67a164 Lossy encoding: smoothen transparent areas to improve compression 358e50650c7 Merge "fix signature for DISABLE_TOKEN_BUFFER compilation" 359671d2567 fix signature for DISABLE_TOKEN_BUFFER compilation 360d6755580 cpu.cmake: use unique flag to test simd disable flags 36128914528 Merge "Remove the argb* files." 3628acb4942 Remove the argb* files. 3633b62347b README: correct cmake invocation note 3647ca0df13 Have the SSE2 version of PackARGB use common code. 3657b250459 Merge "Re-use the transformed image when trying several LZ77 in lossless." 366e132072f Re-use the transformed image when trying several LZ77 in lossless. 3675d7a50ef Get code to compile in C++. 3687b012987 configure: test for -Wparentheses-equality 369f0569adb Fix man pages for multi-threading. 370f1d5a397 multithread cruncher: only copy stats when picture->stats != NULL 371f8c2ac15 Multi-thread the lossless cruncher. 372a88c6522 Merge "Integrate a new LZ77 looking for matches in the neighborhood of a pixel only." 3738f6df1d0 Unroll Predictors 10, 11 and 12. 374355c3d1b Integrate a new LZ77 looking for matches in the neighborhood of a pixel only. 375a1779a01 Refactor LZ77 handling in preparation for a new method. 37667de68b5 Android.mk/build.gradle: fix mips build with clang from r14b 377f209a548 Use the plane code and not the distance when computing statistics. 378b903b80c Split cost-based backward references in its own file. 379498cad34 Cosmetic changes in backward reference. 380e4eb4587 lossless, VP8LTransformColor_C: make sure no overflow happens with colors. 381af6deaff webpinfo: handle alpha flag mismatch 3827caef29b Fix typo that creeped in. 38339e19f92 Merge "near lossless: fix unsigned int overflow warnings." 3849bbc0891 near lossless: fix unsigned int overflow warnings. 385e1118d62 Merge "cosmetics,FindClosestDiscretized: use uint in mask creation" 386186bc9b7 Merge "webpinfo: tolerate ALPH+VP8L" 387b5887297 cosmetics,FindClosestDiscretized: use uint in mask creation 388f1784aee near_lossless,FindClosestDiscretized: use unsigned ops 3890d20abb3 webpinfo: tolerate ALPH+VP8L 390972104b3 webpmux: tolerate false positive Alpha flag 391dd7e83cc tiffdec,ReadTIFF: ensure data_size is < tsize_t max 392d988eb7b tiffdec,MyRead: quiet -Wshorten-64-to-32 warning 393dabda707 webpinfo: add support to parse Alpha bitstream 3944c117643 webpinfo: correct background color output, BGRA->ARGB 395defc98d7 Doc: clarify the role of quality in WebPConfig. 396d78ff780 Merge "Fix code to compile with C++." 397c8f14093 Fix code to compile with C++. 398497dc6a7 pnmdec: sanitize invalid header output 399d78e5867 Merge "configure: test for -Wconstant-conversion" 400481e91eb Merge "pnmdec,PAM: set bytes_per_px based on depth when missing" 40193b12753 configure: test for -Wconstant-conversion 402645f0c53 pnmdec,PAM: set bytes_per_px based on depth when missing 403e9154605 Merge "vwebp: activate GLUT double-buffering" 404818d795b vwebp: activate GLUT double-buffering 405d63e6f4b Add a man page for webpinfo 4064d708435 Merge "NEON: implement ConvertRGB24ToY/BGR24/ARGB/RGBA32ToUV/ARGBToUV" 407faf42213 NEON: implement ConvertRGB24ToY/BGR24/ARGB/RGBA32ToUV/ARGBToUV 408b4d576fa Install man pages with CMake. 409cbc1b921 webpinfo: add features to parse bitstream header 410e644c556 Fix bad bit writer initialization. 411b62cdad2 Merge "Implement a cruncher for lossless at method 6." 412da3e4dfb use the exact constant for the gamma transfer function 413a9c701e0 Merge "tiffdec: fix EXTRASAMPLES check" 414adab8ce0 Implement a cruncher for lossless at method 6. 4151b92b237 Merge "Fix VP8ApplyNearLossless to respect const and stride." 4161923ff02 tiffdec: fix EXTRASAMPLES check 41797cce5ba tiffdec: only request EXTRASAMPLES w/> 3 samples/px 4180dcd85b6 Fix VP8ApplyNearLossless to respect const and stride. 419f7682189 yuv: rationalize the C/SSE2 function naming 42052245424 NEON implementation of some Sharp-YUV420 functions 421690efd82 Avoid several backward reference copies. 4224bb1f607 src/dec/vp8_dec.h, cosmetics: fix comments 423285748be cmake: build/install webpinfo 42478fd199c backward_references_enc.c: clear -Wshadow warnings 425ae836410 WebPLog2FloorC: clear -Wshadow warning 426d0b7404e Merge "WASM support" 427134e314f WASM support 428c08adb6f Merge "VP8LEnc: remove use of BitsLog2Ceiling()" 42928c37ebd VP8LEnc: remove use of BitsLog2Ceiling() 4302cb58ab2 webpinfo: output format as a human readable string 431bb175a93 Merge "rename some symbols clashing with MSVC headers" 43239eda658 Remove a duplicated pixel hash implementation. 43336b8274d rename some symbols clashing with MSVC headers 434274daf54 Add webpinfo tool. 435ec5036e4 add explicit reference to /usr/local/{lib,inc} 43618f0dfac Merge "fix TIFF encoder regarding rgbA/RGBA" 4374e2b0b50 Merge "webpdec.h: fix a doc typo" 438e2eeabff Merge "Install binaries, libraries and headers in CMake." 439836607e6 webpdec.h: fix a doc typo 4409273e441 fix TIFF encoder regarding rgbA/RGBA 44117e3c11f Add limited PAM decoding support 4425f624871 Install binaries, libraries and headers in CMake. 443976adac1 Merge "lossless incremental decoding: fix missing eos_ test" 444f8fad4fa lossless incremental decoding: fix missing eos_ test 44527415d41 Merge "vwebp_sdl: fix the makefile.unix" 44649566182 Merge "ImgIoUtilWriteFile(): use ImgIoUtilSetBinaryMode" 4476f75a51b Analyze the transform entropy on the whole image. 448a5e4e3af Use palette only if we can in entropy analysis. 44975a9c3c4 Improve compression by better entropy analysis. 45039cf6f4f vwebp_sdl: fix the makefile.unix 451699b0416 ImgIoUtilWriteFile(): use ImgIoUtilSetBinaryMode 4527d985bd1 Fix small entropy analysis bug. 4536e7caf06 Optimize the color cache size. 454833c9219 More efficient stochastic histogram merge. 4555183326b Refactor the greedy histogram merge. 45699f6f462 Merge "histogram_enc.c,MyRand: s/ul/u/ for unsigned constants" 45780a22186 ssim.c: remove dead include 458a128dfff histogram_enc.c,MyRand: s/ul/u/ for unsigned constants 459693bf74e move the SSIM calculation code in ssim.c / ssim_sse2.c 46010d791ca Merge "Fix the random generator in HistogramCombineStochastic." 461fa63a966 Fix the random generator in HistogramCombineStochastic. 46216be192f VP8LSetBitPos: remove the eos_ setting 463027151ca don't erase the surface before blitting. 4644105d565 disable WEBP_USE_XXX optimisations when EMSCRIPTEN is defined 4659ee32a75 Merge "WebP-JS: emscripten-based Javascript decoder" 466ca9f7b7d WebP-JS: emscripten-based Javascript decoder 467868aa690 Perform greedy histogram merge in a unified way. 4685b393f2d Merge "fix path typo for vwebp_sdl in Makefile.vc" 469e0012bea CMake: only use libwebpdecoder for building dwebp 47084c2a7b0 fix path typo for vwebp_sdl in Makefile.vc 4711b0e4abf Merge "Add a flag to disable SIMD optimizations." 47232263250 Add a flag to disable SIMD optimizations. 473b494fdec optimize the ARGB->ARGB Import to use memcpy 474f1536039 Merge "ReadWebP: decode directly into a pre-allocated buffer" 475e69ed291 ReadWebP: decode directly into a pre-allocated buffer 47657d8de8a Merge "vwebp_sdl: simple viewer based on SDL" 4775cfd4ebc LZ77 interval speedups. Faster, smaller, simpler. 4781e7ad88b PNM header decoder: add some basic numerical validation 47917c7890c Merge "Add a decoder only library for WebP in CMake." 480be733786 Merge "Add clang build fix for MSA" 48103cda0e4 Add a decoder only library for WebP in CMake. 482aa893914 Add clang build fix for MSA 48331a92e97 Merge "imageio: add limited PNM support for reading" 484dcf9d82a imageio: add limited PNM support for reading 4856524fcd6 vwebp_sdl: simple viewer based on SDL 4866cf24a24 get_disto: fix reference file read 48743d472aa Merge tag 'v0.6.0' 48850d1a848 update ChangeLog (tag: v0.6.0, origin/0.6.0, 0.6.0) 48920a7fea0 extras/Makefile.am: fix libwebpextras.la reference 490415f3ffe update ChangeLog (tag: v0.6.0-rc3) 4913c6d1224 update NEWS 492ee4a4141 update AUTHORS 49332ed856f Fix "all|no frames are keyframes" settings. 4941c3190b6 Merge "Fix "all|no frames are keyframes" settings." 495f4dc56fd disable GradientUnfilter_NEON 4964f3e3bbd disable GradientUnfilter_NEON 4972dc0bdca Fix "all|no frames are keyframes" settings. 4980d8e0588 img2webp: treat -loop as a no-op w/single images 499b0450139 ReadImage(): restore size reporting 5000ad3b4ef update ChangeLog (tag: v0.6.0-rc2) 5016451709e img2webp,get_disto: fix image decode w/WIC builds 50292504d21 get_disto: make ReadPicture() return a bool 503c3e4b3a9 update NEWS 5043363eb6d man/img2webp.1: fix formatting warning 5054d1312f2 update NEWS 50636c42ea4 bump version to 0.6.0 507bb498a51 update AUTHORS 50884cef16f Makefile.vc: fix CFG=debug-dynamic build 509919f9e2f Merge "add .rc files for windows dll versioning" 510f1ae8af4 Merge ".gitignore: add img2webp" 5114689ce16 cwebp: add a -sharp_yuv option for 'sharp' RGB->YUV conversion 51279bf46f1 rename the pretentious SmartYUV into SharpYUV 513eb1dc89a silently expose use_delta_palette in the WebPConfig API 514c85b0dde .gitignore: add img2webp 51543d3f01a add .rc files for windows dll versioning 516668e1dd4 src/{dec,enc,utils}: give filenames a unique suffix 5170e6b7f33 Merge "iosbuild.sh: only add required headers to framework" 51829ed6f9a iosbuild.sh: only add required headers to framework 51971c53f1a NEON: speed-up strong filtering 52073f567ea Merge "get_disto: remove redundant reader check" 5219e14276f Merge "makefiles: prune get_disto & webp_quality deps" 52299965bac Merge "Makefile.vc: add get_disto.exe, webp_quality.exe" 523d4912238 get_disto: remove redundant reader check 524ea482409 makefiles: prune get_disto & webp_quality deps 5252ede5a19 Makefile.vc: add get_disto.exe, webp_quality.exe 526a345068a ARM: speed up bitreader by avoiding tables 5271dc82a6b Merge "introduce a generic GetCoeffs() function pointer" 5288074b89e introduce a generic GetCoeffs() function pointer 529749a45a5 Merge "NEON: implement alpha-filters (horizontal/vertical/gradient)" 53074c053b5 Merge "NEON: fix overflow in SSE NxN calculation" 5310a3aeff7 Merge "dsp: WebPExtractGreen function for alpha decompression" 5321de931c6 NEON: implement alpha-filters (horizontal/vertical/gradient) 5339b3aca40 NEON: fix overflow in SSE NxN calculation 5341c07a3c6 dsp: WebPExtractGreen function for alpha decompression 5359ed5e3e5 use pointers for WebPRescaler's in WebPDecParams 536db013a8d Merge "ARM: don't use USE_GENERIC_TREE" 537fcd4784d use a 8b table for C-version for clz() 538fbb5c473 ARM: don't use USE_GENERIC_TREE 5398fda5612 Merge "add a kSlowSSSE3 feature for CPUInfo" 54086bbd245 add a kSlowSSSE3 feature for CPUInfo 5417c2779e9 Get code to fully compile in C++. 542250c3586 Merge "When compiling as C++, avoid narrowing warnings." 543c0648ac2 When compiling as C++, avoid narrowing warnings. 5440d55f60c 40% faster ApplyAlphaMultiply_SSE2 54549d0280d NEON: implement several alpha-processing functions 54648b1e85f SSE2: 15% faster alpha-processing functions 547e3b8abbc fix warning from static analysis. 54828fe054e SSE2: 30% faster ApplyAlphaMultiply() 549f44acd25 Merge "Properly compute the optimal color cache size." 550527844fe Properly compute the optimal color cache size. 551be0ef639 fix a comment typo 5528874b162 Fix a non-deterministic color cache size computation. 553d712e20d Do not allow a color cache size bigger than the number of colors. 554ecff04f6 re-introduce some comments in Huffman Cost. 555259e9828 replace 'ptr + y * stride' by 'ptr += stride' 55600b08c88 Merge "NEON: 5% faster conversion to RGB565 and RGBA4444" 5570e7f4447 Merge "NEON: faster fancy upsampling" 558b016cb91 NEON: faster fancy upsampling 5591cb63801 Call the C function to finish off lossless SSE loops only when necessary. 560875fafc1 Implement BundleColorMap in SSE2. 5613674d49e Merge "remove Clang warnings with unused arch arguments." 562f04eb376 Merge tag 'v0.5.2' 563341d711c NEON: 5% faster conversion to RGB565 and RGBA4444 564abb54827 remove Clang warnings with unused arch arguments. 565ece9684f update ChangeLog (tag: v0.5.2-rc2, tag: v0.5.2, origin/0.5.2, 0.5.2) 566aa7744ca anim_util: quiet implicit conv warnings in 32-bit 567d9120271 jpegdec: correct ContextFill signature 56824eb3940 Remove some errors when compiling the code as C++. 569a4a8e5f3 vwebp: clear canvas during resize w/o animation 57067c25ad5 vwebp: clear canvas during resize w/o animation 571a4bbe4b3 fix indentation 57231ca2a80 tiffdec: restore libtiff 3.9.x compatibility 573b2f77b57 update NEWS 5745ab6d9de AnimEncoder: avoid freeing uninitialized memory pointer. 575f29bf582 WebPAnimEncoder: If 'minimize_size' and 'allow_mixed' on, try lossy + lossless. 5763ebe1c00 AnimEncoder: avoid freeing uninitialized memory pointer. 577df780e0e fix a potential overflow with MALLOC_LIMIT 57858fc5078 Merge "PredictorSub: implement fully-SSE2 version" 5799cc42167 PredictorSub: implement fully-SSE2 version 5800aa1f35c remove dependency of imageio/ to stopwatch.h 581cb9ec84b Merge "remove the dependency to stop_watch.[ch] in imageio" 582dc0c01fb Merge "anim_util: quiet implicit conv warnings in 32-bit" 583827d3c50 Merge "fix a potential overflow with MALLOC_LIMIT" 5841e2e25b0 anim_util: quiet implicit conv warnings in 32-bit 585218460cd bump version to 0.5.2 586de7d654d update AUTHORS & .mailmap 587273367c1 Merge "dsp/lossless.c,cosmetics: fix indent" 58876bbcf2e fix a potential overflow with MALLOC_LIMIT 5898ac1abfe Merge "jpegdec: correct ContextFill signature" 590cb215aed remove the dependency to stop_watch.[ch] in imageio 5912423017a dsp/lossless.c,cosmetics: fix indent 59274a12b10 iosbuild.sh: add WebPDecoder.framework + encoder 593a9cc7621 Merge "iosbuild.sh: add WebPDecoder.framework + encoder" 594fbba5bc2 optimize predictor #1 in plain-C For some reason, gcc has hard time inlining this one... 5959ae0b3f6 Merge "SSE2: slightly (~2%) faster Predictor #1" 596c1f97bd7 SSE2: slightly (~2%) faster Predictor #1 597ea664b89 SSE2: 10% faster Predictor #11 598be7dcc08 AnimEncoder: Correctly skip a frame when sub-rectangle is empty. 59940885830 Fix assertions in WebPRescalerExportRow() 6001d5046d1 iosbuild.sh: add WebPDecoder.framework + encoder 601cec72014 jpegdec: correct ContextFill signature 6028f38c72e fix a typo in WebPPictureYUVAToARGB's doc 60333ca93f9 systematically call WebPDemuxReleaseIterator() on dec->prev_iter_ 60476e19073 doc: use two's complement explicitly for uint8->int8 conversion 605f91ba963 Anim_encoder: correctly handle enc->prev_candidate_undecided_ 60625d74e65 WebPPictureDistortion(): free() -> WebPSafeFree() 60703f1c008 mux/Makefile.am: add missing -lm 60858410cd6 fix bug in RefineUsingDistortion() 609e168af8c fix filtering auto-adjustment 610ed9dec41 fix doc and code snippet for WebPINewDecoder() doc 6113c49178f prevent 32b overflow for very large canvas_width / height 6129595f290 fix anim_util.c compilation when HAVE_GIF is not defined. 6137ec9552c Make gif transparent color to be transparent black 614b3fb8bb6 slightly faster Predictor #11 in NEON 6159871335f Add a CMake option for WEBP_SWAP_16BIT_CSP. 6160ae32226 Fix missing cpu-features for Android. 617ab4c8056 cpu.cmake: improve webp_check_compiler_flag output 618eec5fa3a Provide support for CMake on Android studio 2.2. 619004d5690 Split the main CMake file. 6204fe5d588 Android.mk: use -fvisibility=hidden 621bd63a31a vwebp: ensure setenv() is available in stdlib.h 622363a5681 vwebp: handle window resizing properly 623a0d2753f lower WEBP_MAX_ALLOCABLE_MEMORY default 62431fe11a5 fix infinite loop in case of PARTITION0 overflow 625532215dd Change the rule of picking UV mode in MBAnalyzeBestUVMode() 6269c75dbd3 cwebp.1: improve some grammar 627af2e05cb vwebp: Clear previous frame when a key triggers a redraw 62826ffa296 Add descriptions of default configuration in help info. 6297416280d Fix an unsigned integer overflow error in enc/cost.h 63013cf1d2e Do token recording and counting in a single loop 631eb9a4b97 Reset segment id if we decide not to update segment map 63242ebe3b7 configure: fix NEON flag detection under gcc 6 63376ebbfff NEON: implement predictor #13 63495b12a08 Merge "Revert Average3 and Average4" 63554ab2e75 Revert Average3 and Average4 636fe12330c 3-5% faster Predictor #5, #6, #7 and #10 for NEON 637fbfb3bef ~2% faster predictor #10 for NEON 638d4b7d801 lossless_sse2: use the local functions 639a5e3b225 Lossless decoder SSE2 improvements. 64058a1f124 ~2% faster predictor #12 in NEON. 641906c3b63 Merge "Implement lossless transforms in NEON." 642d23abe4e Implement lossless transforms in NEON. 6432e6cb6f3 Give more flexibility to the predictor generating macro. 64428e0bb70 Merge "Fix race condition in multi-threading initialization." 64564704530 Fix race condition in multi-threading initialization. 646bded7848 img2webp: fix default -lossless value and use pic.argb=1 6470e61a513 Merge "img2webp: convert a sequence of images to an animated webp" 6481cc79e92 AnimEncoder: Correctly skip a frame when sub-rectangle is empty. 64903f40955 img2webp: convert a sequence of images to an animated webp 650ea72cd60 add missing 'extern' keyword for predictor dcl 65167879e6d SSE implementation of decoding predictors. 65234aee990 Merge "vwebp: make 'd' key toggle the debugging of fragments" 653a41296ae Fix potentially uninitialized value. 654c85adb33 vwebp: make 'd' key toggle the debugging of fragments 6554239a148 Make the lossless predictors work on a batch of pixels. 656bc18ebad fix extra 'const's in signatures 65771e2f5ca Remove memcpy in lossless decoding. 6587474d46e Do not use a register array in SSE. 65967748b41 Improve latency of FTransform2. 66016951b19 Merge "Provide an SSE implementation of ConvertBGRAToRGB" 6616540cd0e Provide an SSE implementation of ConvertBGRAToRGB 662de568abf Android.mk: use -fvisibility=hidden 6633c2a61b0 remove some unneeded casts 6649ac063c3 add dsp functions for SmartYUV 66522efabdd Merge "smart_yuv: switch to planar instead of packed r/g/b processing" 6661d6e7bf3 smart_yuv: switch to planar instead of packed r/g/b processing 6670a3838ca fix bug in RefineUsingDistortion() 668c0699515 webpmux -duration: set default 'end' value equal to 'start' 66983cbfa09 Import: use relative pointer offsets 670a1ade40e PreprocessARGB: use relative pointer offsets 671fd4d090f ConvertWRGBToYUV: use relative pointer offsets 6729daad459 ImportYUVAFromRGBA: use relative pointer offsets 673f90c60d1 Merge "add a "-duration duration,start,end" option to webpmux" 6743f182d36 add a "-duration duration,start,end" option to webpmux 675342e15f0 Import: use relative pointer offsets 6761147ab4e PreprocessARGB: use relative pointer offsets 677e4cd4daf fix filtering auto-adjustment 678e7152856 fix doc and code snippet for WebPINewDecoder() doc 679de9fa507 ConvertWRGBToYUV: use relative pointer offsets 680deb1b831 ImportYUVAFromRGBA: use relative pointer offsets 681c284780f imageio_util: add ImgIoUtilCheckSizeArgumentsOverflow 682e375080d gifdec,Remap: avoid out of bounds colormap read 683c222a053 additional fix for stride type as size_t 684bb233617 fix potential overflow when width * height * 4 >= (1<<32) 685883d41fb gif2webp: fix crash with NULL extension data 686cac9a36a gifdec,Remap: avoid out of bounds colormap read 6874595e01f Revert "gifdec,Remap: avoid out of bounds colormap read" 688fb52d443 gifdec: make some constants unsigned 689f048d38d gifdec,Remap: avoid out of bounds colormap read 69031b1e343 fix SSIM metric ... by ignoring too-dark area 6912f51b614 introduce WebPPlaneDistortion to compute plane distortion 6920104d730 configure: fix NEON flag detection under gcc 6 693265abbe9 Merge "additional fix for stride type as size_t" 694f7601aa6 Merge "Introduce a generic WebPGetImageReader(type) function" 695ce873320 Introduce a generic WebPGetImageReader(type) function 6962a2773ea imageio/*dec,Read*: add input parameter checks 6979f5c8eca additional fix for stride type as size_t 6984eb5df28 remove unused stride fields from VP8Iterator 69911bc423a MIN_LENGTH cleanups. 700273d035a Merge "fix a typo in WebPPictureYUVAToARGB's doc" 7014db82a17 Merge "fix potential overflow when width * height * 4 >= (1<<32)" 702e2affacc fix potential overflow when width * height * 4 >= (1<<32) 703dc789ada fix a typo in WebPPictureYUVAToARGB's doc 704539f5a68 Fix non-included header in config.c. 705aaf2a6a6 systematically call WebPDemuxReleaseIterator() on dec->prev_iter_ 70620ef9915 Merge "imageio_util: add ImgIoUtilCheckSizeArgumentsOverflow" 707bc86b7a8 imageio_util: add ImgIoUtilCheckSizeArgumentsOverflow 708806f6279 gif2webp: fix crash with NULL extension data 70968ae5b67 Add libwebp/src/mux/animi.h 71028ce3043 Remove some errors when compiling the code as C++. 711b34abcb8 Favor keeping the areas locally similar in spatial prediction mode selection 712ba843a92 fix some SSIM calculations 71351b71fd2 Merge "vwebp: ensure setenv() is available in stdlib.h" 714fb01743a get_disto: fix the r/g/b order for luma calculation 715bfab8947 vwebp: ensure setenv() is available in stdlib.h 7169310d192 vwebp: handle window resizing properly 717f79450ca Speedup ApplyMap. 718cfdda7c6 Merge "prevent 32b overflow for very large canvas_width / height" 719e36396ba Merge "get_disto: new option to compute SSIM map and convert to gray" 72018a9a0ab Add an API to import a color-mapped image. 72130d43706 Speed-up Combined entropy for palettized histograms. 72236aa087b get_disto: new option to compute SSIM map and convert to gray 72386a84b35 2x faster SSE2 implementation of SSIMGet 724b8384b53 lower WEBP_MAX_ALLOCABLE_MEMORY default 7251c364400 prevent 32b overflow for very large canvas_width / height 726eee0cce1 Merge "Small LZ77 speedups." 7275f1caf29 Small LZ77 speedups. 7281effde7b fix anim_util.c compilation when HAVE_GIF is not defined. 729a2fe9bf4 Speedup TrellisQuantizeBlock(). 730573cce27 smartYUV improvements 73121e7537a fix infinite loop in case of PARTITION0 overflow 732053a1565 Merge "Change the rule of picking UV mode in MBAnalyzeBestUVMode()" 7331377ac2e Change the rule of picking UV mode in MBAnalyzeBestUVMode() 7347c1fb7d0 fix uint32_t initialization (0. -> 0) 735bfff0bf3 speed-up SSIM calculation 73664577de8 De-VP8L-ize GetEntropUnrefinedHelper. 737a7be7328 Merge "refactor the PSNR / SSIM calculation code" 73850c3d7da refactor the PSNR / SSIM calculation code 739d6228aed indentation fix after I7055d3ee3bd7ed5e78e94ae82cb858fa7db3ddc0 740dd538b19 Remove unused declaration. 7416cc48b17 Move some lossless logic out of dsp. 74278363e9e Merge "Remove a redundant call to InitLeft() in VP8IteratorReset()" 743ffd01929 Refactor VP8IteratorNext(). 744c4f6d9c9 Remove a redundant call to InitLeft() in VP8IteratorReset() 745c27d8210 Merge "smartYUV: simplify main loop" 74607795296 smartYUV: simplify main loop 747c9b45863 Split off common lossless dsp inline functions. 748490ae5b1 smartYUV: improve initial state for faster convergence 749894232be smartYUV: fix and simplify the over-zealous stop criterion 7508de08483 Remove unused code in webpi.h 75141cab7fe imageio/Android.mk: correct imagedec dependencies 75282c91c70 Merge "libimageenc.a: extract image-saving code from dwebp" 753af1ad3e2 libimageenc.a: extract image-saving code from dwebp 754dd7309e3 Merge "doc: use two's complement explicitly for uint8->int8 conversion" 7556105777e Merge "add gif2webp to CMake" 75613ae011e doc: use two's complement explicitly for uint8->int8 conversion 7574bda0cfb add gif2webp to CMake 7586029c7fe Merge "remove mention of fragment, frgm, FRGM, etc." 759545c147f remove mention of fragment, frgm, FRGM, etc. 7605b46f7fc cwebp.1: improve some grammar 7619e478f80 dec/vp8l.c: add assertions in EmitRescaledRowsRGBA/YUVA 76243bd8958 Make gif transparent color to be transparent black 7630887fc2d Merge "get_disto: add a '-o file' option to save a diff map" 7640de48e18 get_disto: add a '-o file' option to save a diff map 7650a57ad0d cosmetics: WebPSafeAlloc -> WebPSafeMalloc 7660a4699bc Merge "WebPPictureDistortion(): free() -> WebPSafeFree()" 76729fedbf5 Anim_encoder: correctly handle enc->prev_candidate_undecided_ 76832dead4e WebPPictureDistortion(): free() -> WebPSafeFree() 76985cd5d06 Smarter LZ77 for uniform regions. 7706585075f Change PixelsAreSimilar() to handle black pixels correctly. 771c0a27fd2 vwebp: Clear previous frame when a key triggers a redraw 77257a5e3b6 webp_quality should return '0' in case of success. 7737f1b897b Faster stochastic histogram merging. 77448c810b8 Merge "remove WEBP_FORCE_ALIGNED and use memcpy() instead." 7753884972e remove WEBP_FORCE_ALIGNED and use memcpy() instead. 776485cac1a switch libimagedec.a and libimageio_util.a to avoid undefined symbol 777005e15b1 Merge "{extras,mux}/Makefile.am: add missing -lm" 7786ab496ed fix some 'unsigned integer overflow' warnings in ubsan 7798a4ebc6a Revert "fix 'unsigned integer overflow' warnings in ubsan" 7809d4f209f Merge changes I25711dd5,I43188fab 781e44f5248 fix 'unsigned integer overflow' warnings in ubsan 78227b5d991 Fix assertions in WebPRescalerExportRow() 78374f6f9e7 Add descriptions of default configuration in help info. 784aaf2530c {extras,mux}/Makefile.am: add missing -lm 7851269dc7c Refactor VP8LColorCacheContains() 78640872fb2 dec_neon,NeedsHev: micro optimization 7877b54e26b Add a CMake option for WEBP_SWAP_16BIT_CSP. 788d2223d8d Fix missing cpu-features for Android. 789bf16a4b4 Merge "cpu.cmake: improve webp_check_compiler_flag output" 790ee1057e3 cpu.cmake: improve webp_check_compiler_flag output 791b551e587 cosmetics: add {}s on continued control statements 792d2e4484e dsp/Makefile.am: put msa source in correct lib 793c7f66c82 Merge "utils/thread.c,cosmetics: join a few lines" 79498d8f295 Merge "examples/Makefile.am,cosmetics: sort binary targets" 79539f4ffbc utils/thread.c,cosmetics: join a few lines 796a86ce2b1 Merge "extras/Makefile.am: don't install libwebpextras" 7976fa9fe24 extras/Makefile.am: don't install libwebpextras 7980b2c58a9 Fix an unsigned integer overflow error in enc/cost.h 799d7ce4a2e examples/Makefile.am,cosmetics: sort binary targets 800386e4ba2 Reset segment id if we decide not to update segment map 8017b87e848 Merge "Add MSA optimized YUV to RGB upsampling functions" 802d3ddacb6 Add MSA optimized YUV to RGB upsampling functions 803eb98d8d8 webp_quality: detect lossless format and features 804ebee57f4 move imageio/example_util.[hc] (back to) examples/ 80599542bbf webpdec: s/ExUtil// 806da573cf4 imageio_util: s/ExUtil/ImgIoUtil/ 807bdda5bd4 split example_util.h 80815ed462b .gitignore: add extras/{get_disto,webp_quality} 8097be57489 Merge "VP8EstimateQuality(): roughty estimate webp bitstream quality factor" 81057020525 Makefile.vc: add missing imageio target 811e8ab6a82 VP8EstimateQuality(): roughty estimate webp bitstream quality factor 812fee7b3d6 Merge "'extras/get_disto' example: compute PSNR between two files" 8131e7d4401 'extras/get_disto' example: compute PSNR between two files 8144cecab63 pngdec.c,jpegdec.[hc]: remove unnecessary includes 815259f0434 makefile.unix: normalize image decode lib name 816ed34c39b fix: examples/libexample_dec.a => imageio/libexample_dec.a 81733d8d0d4 Merge "move examples/{example_util,image_dec} to imageio/" 818c960b82e Merge "extras.h: correct include guard" 819fe3cd28a Merge ".gitignore: add .gradle, /build" 82045fbeba5 Merge "Do token recording and counting in a single loop" 8214f33c820 .gitignore: add .gradle, /build 822c379b55a move examples/{example_util,image_dec} to imageio/ 8235108d9aa extras.h: correct include guard 824ad497fbc move src/extras to the top-level 8250c0fb832 Do token recording and counting in a single loop 8269ac74f92 Add MSA optimized rescaling functions 827cb19dbc1 Add MSA optimized color transform functions 8283f4042b5 WebPAnimEncoder: If 'minimize_size' and 'allow_mixed' on, try lossy + lossless. 8295e2eb89e cosmetics,dsp/*msa.c: associate '*' with the type 8305b60db5c FastMBAnalyze() for quick i16/i4 decision 831567e6977 Add MSA optimized CollectHistogram function 832c54ab8dd Add MSA optimized quantization functions 833ec6f68c5 Merge "Remove QuantizeBlockWHT() in enc.c" 8342a5c417c Apply the RLE heuristic to LZ77. 83591b59e88 Remove QuantizeBlockWHT() in enc.c 836fe572737 Add MSA optimized SSE functions 8376b53ca87 cosmetics,(dec|enc)_sse2.c: fix indent 838b15d00d9 Merge "Add MSA optimized encoder IntraChromaPreds function" 839afe3cec8 Add MSA optimized encoder IntraChromaPreds function 840fc8cad9f reduce the number of malloc/free cycles in huffman.c 8417b4b05e0 Add MSA optimized encoder Intra16Preds function 842c18787a0 Add MSA optimized encoder Intra4Preds function 843479d1908 webpmux: Also print compression info per frame. 844a80e8cfd Provide support for CMake on Android studio 2.2. 8456c628410 Split the main CMake file. 846bbb6ecd9 Merge "Add MSA optimized distortion functions" 8477915396f Add MSA optimized distortion functions 848652e944f Merge "build.gradle: remove tab" 849c0991a14 io,EmitRescaledAlphaYUV: factor out a common expr 85048bf5ed1 build.gradle: remove tab 851bfef6c9f Merge tag 'v0.5.1' 8523d97bb75 update ChangeLog (tag: v0.5.1, origin/0.5.1, 0.5.1) 853deb54d91 Clarify the expected 'config' lifespan in WebPIDecode() 854435308e0 Add MSA optimized encoder transform functions 855dce64bfa Add MSA optimized alpha filter functions 856429120d0 Add MSA optimized color transform functions 857c7e2d245 update ChangeLog (tag: v0.5.1-rc5) 85855b2fede normalize the macros' "do {...} while (0)" constructs 859701c772e Add MSA optimized colorspace conversion functions 860c7eb06f7 Fix corner case in CostManagerInit. 861f918cb10 fix rescaling bug: alpha plane wasn't filled with 0xff 862ab7937a5 gif2webp: normalize the number of .'s in the help message 8633cdec847 vwebp: normalize the number of .'s in the help message 864bdf6241e cwebp: normalize the number of .'s in the help message 86506a38c7b fix rescaling bug: alpha plane wasn't filled with 0xff 866319e37be Improve lossless compression. 8676a197937 Add MSA optimized intra pred chroma functions 868447adbce 'our bug tracker' -> 'the bug tracker' 86997b9e644 normalize the number of .'s in the help message 870293d786f Added MSA optimized intra prediction 16x16 functions 8710afa0ce2 Added MSA optimized intra prediction 4x4 functions 872a6621bac Added MSA optimized simple edge filtering functions 873bb50bf42 pngdec,ReadFunc: throw an error on invalid read 87438063af1 decode.h,WebPGetInfo: normalize function comment 8751ebf193c Added MSA optimized chroma edge filtering functions 8769ad2352d Merge "Added MSA optimized edge filtering functions" 87760751096 Added MSA optimized edge filtering functions 8789e8e1b7b Inline GetResidual for speed. 8797d58d1b7 Speed-up uniform-region processing. 8808ec7032b simplify HistogramCombineEntropyBin() 88123e29cb1 Merge "Fix a boundary case in BackwardReferencesHashChainDistanceOnly." into 0.5.1 882472a049b remove bin_map[] allocation altogether 8830bb23b2c free -> WebPSafeFree() 884a977b4b5 Merge "rewrite the bin_map clustering to use less memory" 8853591ba66 rewrite the bin_map clustering to use less memory 886e6ac450c utils.[hc]: s/MAX_COLOR_COUNT/MAX_PALETTE_SIZE/ 887e7b91772 Merge "DecodeImageData(): change the incorrect assert" into 0.5.1 8882abfa54f DecodeImageData(): change the incorrect assert 8895a48fcd8 Merge "configure: test for -Wfloat-conversion" 8900174d18d Fix a boundary case in BackwardReferencesHashChainDistanceOnly. 8916a9c262a Merge "Added MSA optimized transform functions" 892cfbcc5ec Make sure to consider small distances in LZ77. 8935e60c42a Added MSA optimized transform functions 8943dc28d76 configure: test for -Wfloat-conversion 895f2a0946a add some asserts to delimit the perimeter of CostManager's operation 8969a583c66 fix invalid-write bug for alpha-decoding 897f66512db make gradlew executable 8986fda58f1 backward_references: quiet double->int warning 899a48cc9d2 Merge "Fix a compression regression for images with long uniform regions." into 0.5.1 900cc2720c1 Merge "Revert an LZ77 boundary constant." into 0.5.1 901059aab4f Fix a compression regression for images with long uniform regions. 902b0c7e49e Check more backward matches with higher quality. 903a3611513 Revert an LZ77 boundary constant. 9048190374c README: fix typo 9057551db44 update NEWS 9060fb2269c bump version to 0.5.1 907f4537610 update AUTHORS & .mailmap 9083259571e Refactor GetColorPalette method. 9091df5e260 avoid using tmp histogram in PreparePair() 9107685123a fix comment typos 911a246b921 Speedup backward references. 91276d73f18 Merge "CostManager: introduce a free-list of ~10 intervals" 913eab39d81 CostManager: introduce a free-list of ~10 intervals 9144c59aac0 Merge "mips msa webp configuration" 915043c33f1 Merge "Improve speed and compression in backward reference for lossless." 91671be9b8c Merge "clarify variable names in HistogramRemap()" 9170ba7fd70 Improve speed and compression in backward reference for lossless. 9180481d42a CostManager: cache one interval and re-use it when possible 91941b7e6b5 Merge "histogram: fix bin calculation" 92096c3d624 histogram: fix bin calculation 921fe9e31ef clarify variable names in HistogramRemap() 922ce3c8247 disable near-lossless quantization if palette is used 923e11da081 mips msa webp configuration 9245f8f998d mux: Presence of unknown chunks should trigger VP8X chunk output. 925cadec0b1 Merge "Sync mips32 and dsp_r2 YUV->RGB code with C verison" 926d9637758 Compute the hash chain once and for all for lossless compression. 92750a48665 Sync mips32 and dsp_r2 YUV->RGB code with C verison 928eee788e2 Merge "introduce a common signature for all image reader function" 929d77b877c introduce a common signature for all image reader function 930ca8d9519 remove some obsolete TODOs 931ae2a7222 collect all decoding utilities from examples/ in libexampledec.a 9320b8ae852 Merge "Move DitherCombine8x8 to dsp/dec.c" 93377cad885 Merge "ReadWebP: avoid conversion to ARGB if final format is YUVA" 934ab8d6698 ReadWebP: avoid conversion to ARGB if final format is YUVA 935f8b7ce9e Merge "test pointer to NULL explicitly" 9365df6f214 test pointer to NULL explicitly 93777f21c9c Move DitherCombine8x8 to dsp/dec.c 938c9e6d865 Add gradle support 939c65f41e8 Revert "Add gradle support" 940bf731ede Add gradle support 94108333b85 WebPAnimEncoder: Detect when canvas is modified, restore only when needed. 9420209d7e6 Merge "speed-up MapToPalette() with binary search" 943fdd29a3d speed-up MapToPalette() with binary search 944cf4a651b Revert "Refactor GetColorPalette method." 9450a27aca3 Merge changes Idfa8ce83,I19adc9c4 946f25c4406 WebPAnimEncoder: Restore original canvas between multiple encodes. 947169004b1 Refactor GetColorPalette method. 948576362ab VP8LDoFillBitWindow: support big-endian in fast path 949ac49e4e4 bit_reader.c: s/VP8L_USE_UNALIGNED_LOAD/VP8L_USE_FAST_LOAD/ 950d39ceb58 VP8LDoFillBitWindow: remove stale TODO 9512ec2de14 Merge "Speed-up BackwardReferencesHashChainDistanceOnly." 9523e023c17 Speed-up BackwardReferencesHashChainDistanceOnly. 953f2e1efbe Improve near lossless compression when a prediction filter is used. 954e15afbce dsp.h: fix ubsan macro name 955e53c9ccb dsp.h: add WEBP_UBSAN_IGNORE_UNSIGNED_OVERFLOW 956af81fdb7 utils.h: quiet -fsanitize=undefined warnings 957ea0be354 dsp.h: remove utils.h include 958cd276aec utils/*.c: ../utils/utils.h -> ./utils.h 959c8927131 utils/Makefile.am: add some missing headers 960ea24e026 Merge "dsp.h: add WEBP_UBSAN_IGNORE_UNDEF" 961369e264e dsp.h: add WEBP_UBSAN_IGNORE_UNDEF 9620d020a78 Merge "add runtime NEON detection" 9635ee2136a Merge "add VP8LAddPixels() to lossless.h" 96447435a61 add VP8LAddPixels() to lossless.h 9658fa6ac68 remove two ubsan warnings 96674fb56fb add runtime NEON detection 9674154a839 MIPS update to new Unfilter API 968c80b9fc8 Merge "cherry-pick decoder fix for 64-bit android devices" 9696235147e cherry-pick decoder fix for 64-bit android devices 970d41b8c43 configure: test for -Wformat-* w/-Wformat present 9715f95589f Fix WEBP_ALIGN in case the argument is a pointer to a type larger than a byte. 9722309fd5c replace num_parts_ by num_parts_minus_one_ (unsigned) 9739629f4bc SimplifySegments: quiet -Warray-bounds warning 974de47492e Merge "update the Unfilter API in dsp to process one row independently" 9752102ccd0 update the Unfilter API in dsp to process one row independently 976e3912d56 WebPAnimEncoder: Restore canvas before evaluating blending possibility. 9776e12e1e3 WebPAnimEncoder: Fix for single-frame optimization. 978602f344a Merge changes I1d03acac,Ifcb64219 97995ecccf6 only apply color-mapping for alpha on the cropped area 98047dd0708 anim_diff: Add an experimental option for max inter-frame diff. 981aa809cfe only allocate alpha_plane_ up to crop_bottom row 98231f2b8d8 WebPAnimEncoder: FlattenSimilarPixels(): look for similar 983774dfbdc perform alpha filtering within the decoding loop 984a4cae68d lossless decoding: only process decoded row up to last_row 985238cdcdb Only call WebPDequantizeLevels() on cropped area 986cf6c713a alpha: preparatory cleanup 987b95ac0a2 Merge "VP8GetHeaders(): initialize VP8Io with sane value for crop/scale dimensions" 98889231394 VP8GetHeaders(): initialize VP8Io with sane value for crop/scale dimensions 9895828e199 use_8b_decode -> use_8b_decode_ 9908dca0247 fix bug in alpha.c that was triggering a memory error in incremental mode 9919a950c53 WebPAnimEncoder: Disable filtering when blending is used with lossy encoding. 992eb423903 WebPAnimEncoder: choose max diff for framerect based on quality. 993ff0a94be WebPAnimEncoder lossy: ignore small pixel differences for frame rectangles. 994f8040084 gif2webp: Remove the 'prev_to_prev_canvas' buffer. 9956d8c07d3 Merge "WebPDequantizeLevels(): use stride in CountLevels()" 996d96fe5e0 WebPDequantizeLevels(): use stride in CountLevels() 997ec1b2407 WebPPictureImport*: check output pointer 998c0768769 Merge "Revert "Re-enable encoding of alpha plane with color cache for next release."" 99941f14bcb WebPPictureImport*: check src pointer 100064eed387 Pass stride parameter to WebPDequantizeLevels() 100197934e24 Revert "Re-enable encoding of alpha plane with color cache for next release." 1002e88c4ca0 fix -m 2 mode-cost evaluation (causing partition0 overflow) 10034562e83d Merge "add extra meaning to WebPDecBuffer::is_external_memory" 1004abdb109f add extra meaning to WebPDecBuffer::is_external_memory 1005875aec70 enc_neon,cosmetics: break long comment 100671e856cf GetMBSSIM,cosmetics: fix alignment 1007a90edffb fix missing 'extern' for SSIM function in dsp/ 1008423ecaf4 move some SSIM-accumulation function for dsp/ 1009f08e6624 Merge "Fix FindClosestDiscretized in near lossless:" 10100d40cc5e enc_neon,Disto4x4: remove an unnecessary transpose 1011e8feb20e Fix FindClosestDiscretized in near lossless: 101282006430 anim_util: quiet static analysis warning 1013a6f23c49 Merge "AnimEncoder: Support progress hook and user data." 1014a5193774 Merge "Near lossless feature: fix some comments." 1015da98d31c AnimEncoder: Support progress hook and user data. 101633357131 Near lossless feature: fix some comments. 10170beed01a cosmetics: fix indent after 2f5e898 10186753f35c Merge "FTransformWHT optimization." 10196583bb1a Improve SSE4.1 implementation of TTransform. 10207561d0c3 FTransformWHT optimization. 10217ccdb734 fix indentation after patch #328220 10226ec0d2a9 clarify the logic of the error path when decoding fails. 10238aa352b2 Merge "Remove an unnecessary transposition in TTransform." 1024db860884 Merge "remove useless #include" 10259960c316 Remove an unnecessary transposition in TTransform. 10266e36b511 Small speedup in FTransform. 10279dbd4aad Merge "fix C and SIMD flags completion." 1028e60853ea Add missing common_sse2.h file to makefile.unix 1029696eb2b0 fix C and SIMD flags completion. 10302b4fe33e Merge "fix multiple allocation for transform buffer" 10312f5e8986 fix multiple allocation for transform buffer 1032bf2b4f11 Regroup common SSE code + optimization. 10334ed650a1 force "-pass 6" if -psnr or -size is used but -pass isn't. 10343ef1ce98 yuv_sse2: fix -Wconstant-conversion warning 1035a7a03e9f Merge changes I4852d18f,I51ccb85d 10365e122bd6 gif2webp: set enc_options.verbose = 0 w/-quiet 1037ab3c2583 anim_encode,DefaultEncoderOptions: init verbose 10388f0dee77 Merge "configure: fix builtin detection w/-Werror" 10394a7b85a9 cmake: fix builtin detection w/-Werror 1040b74657fb configure: fix builtin detection w/-Werror 10413661b980 Add a CMakeLists.txt 104275f4af4d remove useless #include 10436c1d7631 avoid Yoda style for comparison 10448ce975ac SSE optimization for vector mismatch. 10457db53831 Merge tag 'v0.5.0' 104637f04949 update ChangeLog (tag: v0.5.0-rc1, tag: v0.5.0, origin/0.5.0, 0.5.0) 10477e7b6ccc faster rgb565/rgb4444/argb output 10484c7f565f update NEWS 10491f62b6b2 update AUTHORS 1050e224fdc8 update mailmap 105171100500 bump version to 0.5.0 1052230a685e README: update help text, repo link 1053d48e427b Merge "demux: accept raw bitstreams" 105499a01f4f Merge "Unify some entropy functions." 10554b025f10 Merge "configure: disable asserts by default" 105692cbddf8 Merge "fix PrintBlockInfo()" 1057ca509a33 Unify some entropy functions. 1058367bf903 fix PrintBlockInfo() 1059b0547ff0 move back common constants for lossless_enc*.c into the .h 1060fb4c7832 lossless: simpler alpha cleanup preprocessing 1061ba7f4b68 Merge "anim_diff: add brief description of options" 106247ddd5a4 Move some codec logic out of ./dsp . 1063b4106c44 anim_diff: add brief description of options 1064357f455d yuv_sse2: fix 32-bit visual studio build 1065b9d80fa4 configure: disable asserts by default 10667badd3da cosmetic fix: sizeof(type) -> sizeof(*var) 106780ce27d3 Speed up 24-bit packing / unpacking in YUV / RGB conversions. 106868eebcb0 remove a TODO about rotation 10692dee2966 remove few obsolete TODO about aligned loads in SSE2 1070e0c0bb34 remove TODO about unused ref_lf_delta[] 10719cf1cc2b remove few TODO: * 256 -> RD_DISTO_MULT * don't use TDisto for UV mode picking 107279189645 Merge changes from topic 'demux-fragment-cleanup' 107347399f92 demux: remove GetFragment() 1074d3cfb79a demux: remove dead fragment related TODO 1075ab714b8a demux, Frame: remove is_fragment_ field 1076b105921c yuv_sse2, cosmetics: fix indent 1077466c92e8 demux,WebPIterator: remove fragment_num/num_fragments 107811714ff1 demux: remove WebPDemuxSelectFragment 1079c0f7cc47 fix for bug #280: UMR in next->bits 1080578beeb8 Merge "enc/Makefile.am: add missing headers" 10811a819f00 makefile.unix: make visibility=hidden the default 1082d4f9c2ef enc/Makefile.am: add missing headers 1083846caff4 configure: check for -fvisibility=hidden 10843f3ea2c5 demux: accept raw bitstreams 1085d6dad5d0 man cwebp: add precision about exactness of the 'lossless' mode 108646bb1e34 Merge "gifdec: remove utils.h include" 10872b882e94 Merge "Makefile.vc: define WEBP_HAVE_GIF for gifdec.c" 1088892b9238 Merge "man/*, AUTHORS: clarify origin of the tool" 1089e5687a18 Merge "fix optimized build with -mcmodel=medium" 1090e56e6859 Makefile.vc: define WEBP_HAVE_GIF for gifdec.c 10914077d944 gifdec: remove utils.h include 1092b5e30dac man/*, AUTHORS: clarify origin of the tool 1093b275e598 fix optimized build with -mcmodel=medium 109464da45a9 cosmetics, cwebp: fix indent 1095038a060d Merge "add disto-based refinement for UV mode (if method = 1 or 2)" 10962835089d Provide an SSE2 implementation of CombinedShannonEntropy. 1097e6c93519 add disto-based refinement for UV mode (if method = 1 or 2) 109804507dc9 Merge "fix undefined behaviour during shift, using a cast" 1099793c5261 Merge "wicdec: add support for reading from stdin" 1100d3d16397 Optimize the heap usage in HistogramCombineGreedy. 1101202a710b fix undefined behaviour during shift, using a cast 110214d27a46 improve method #2 by merging DistoRefine() and SimpleQuantize() 1103cb1ce996 Merge "10% faster table-less SSE2/NEON version of YUV->RGB conversion" 1104ac761a37 10% faster table-less SSE2/NEON version of YUV->RGB conversion 110579fcf29a wicdec: add support for reading from stdin 1106015f173f Merge "cwebp: add support for stdin input" 1107a9947c32 cwebp: add support for stdin input 11087eb01ff3 Merge "Improved alpha cleanup for the webp encoder when prediction transform is used." 1109fb8c9106 Merge "introduce WebPMemToUint32 and WebPUint32ToMem for memory access" 1110bd91af20 Merge "bit_reader: remove aarch64 BITS TODO" 11116c702b81 Speed up hash chain initialization using memset. 11124c60f63c make ReadPNG and ReadJPEG take a filename instead of a FILE 1113464ed10f bit_reader: remove aarch64 BITS TODO 1114d478e589 Merge "configure: update issue tracker" 111569381113 Improved alpha cleanup for the webp encoder when prediction transform is used. 11162c08aac8 introduce WebPMemToUint32 and WebPUint32ToMem for memory access 1117010ca3d1 Fix FindMatchLength with non-aligned buffers. 1118a90e1e3f README: add prerequisites for an autoconf build 1119458f0866 configure: update issue tracker 112033914595 vwebp: work around the transparent background with GLUT bug 1121e4a7eed4 cosmetics: fix indent 112208375129 Merge "Make a separate case for low_effort in CopyImageWithPrediction" 1123aa2eb2d4 Merge "cosmetics: fix indent" 1124b7551e90 cosmetics: fix indent 11255bda52d4 Make a separate case for low_effort in CopyImageWithPrediction 112666fa598a Merge "configure: fix intrinsics build w/older gcc" 11275ae220be backward_references.c: Fixed compiler warning 11281556da09 Merge "configure: restore 2 warnings" 112971a17e58 configure: restore 2 warnings 11309eeabc07 configure: fix intrinsics build w/older gcc 1131363babe2 Merge "fix some warning about unaligned 32b reads" 1132a1411782 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. 1133829bd141 Combine Huffman cost and bit entropy into one loop 1134a7a954c8 Merge "lossless: make prediction in encoder work per scanline" 113561b605b4 Merge "fix of undefined multiply (int32 overflow)" 1136239421c5 lossless: make prediction in encoder work per scanline 1137f5ca40e0 fix of undefined multiply (int32 overflow) 11385cd2ef4c Merge changes from topic 'win-threading-compat' 113976ce9187 Makefile.vc: enable WEBP_USE_THREAD for windows phone 1140d2afe974 thread: use CreateThread for windows phone 11410fd0e12b thread: use WaitForSingleObjectEx if available 114263fadc9f thread: use InitializeCriticalSectionEx if available 1143110ad583 thread: use native windows cond var if available 1144912c9fdf dec/webp: use GetLE(24|32) from utils 1145f1694481 utils/GetLE32: correct uint32 promotion 1146158763de Merge "always call WebPInitSamplers(), don't try to be smart" 11473770f3bb Merge "cleanup the YFIX/TFIX difference by removing some code and #define" 1148a40f60a9 Merge "3% speed improvement for lossless webp encoder for low effort mode:" 1149ed1c2bc6 always call WebPInitSamplers(), don't try to be smart 1150b8c44f1a 3% speed improvement for lossless webp encoder for low effort mode: 1151997e1038 cleanup the YFIX/TFIX difference by removing some code and #define 1152d73d1c8b Merge "Make discarding invisible RGB values (cleanup alpha) the default." 11531f9be97c Make discarding invisible RGB values (cleanup alpha) the default. 1154f240117b Make dwebp listen more to the -quiet flag 1155b37b0179 fix for issue #275: don't compare to out-of-bound pointers 115621735e06 speed-up trivial one-symbol decoding case for lossless 1157397863bd Refactor CopyPlane() and CopyPixels() methods: put them in utils. 11586ecd72f8 Re-enable encoding of alpha plane with color cache for next release. 11591f7148a4 Merge "remove unused fields from WebPDecoderOptions and WebPBitstreamFeatures" 11606ae395fa Merge "use ExReadFile() for ReadYUV()" 11618076a00e gitignore list: add anim_diff. 11621c1702d8 use ExReadFile() for ReadYUV() 1163775d3a37 remove unused fields from WebPDecoderOptions and WebPBitstreamFeatures 1164c13245c7 AnimEncoder: Add a GetError() method. 1165688b265d AnimDecoder API: Add a GetDemuxer() method. 11661aa4e3d6 WebPAnimDecoder: add an option to enable multi-threaded decoding. 11673584abca AnimDecoder: option to decode to common color modes. 1168afd5a62c Merge "mux.h does NOT need to include encode.h" 11698550d443 Merge "migrate anim_diff tool from C++ to C89" 117096201e50 migrate anim_diff tool from C++ to C89 1171945cfa3b mux.h does NOT need to include encode.h 11728da07e8d Merge "~2x faster SSE2 RGB24toY, BGR24toY, ARGBToY|UV" 1173bfd3fc02 ~2x faster SSE2 RGB24toY, BGR24toY, ARGBToY|UV 117402432427 man/cwebp.1, cosmetics: escape '-'s 117596f5b423 man/cwebp: group lossy-only options 117652fdbdfe extract some RGB24 to Luma conversion function from enc/ to dsp/ 1177ab8c2300 add missing \n 11788304179a sync NEWS with 0.4.4 11795bd04a08 sync versions with 0.4.4 11808f1fcc15 Merge "Move ARGB->YUV functions from dec/vp8l.c to dsp/yuv.c" 118125bf2ce5 fix some warning about unaligned 32b reads 1182922268fd s/TIFF/WebP 1183fa8927ef Move ARGB->YUV functions from dec/vp8l.c to dsp/yuv.c 11849b373598 Merge "for ReadXXXX() image-readers, use the value of pic->use_argb" 1185f7c507a5 Merge "remove unnecessary #include "yuv.h"" 11867861578b for ReadXXXX() image-readers, use the value of pic->use_argb 118714e4043b remove unnecessary #include "yuv.h" 1188469ba2cd vwebp: fix incorrect clipping w/NO_BLEND 11894b9186b2 update issue tracker url 1190d64d376c change WEBP_ALIGN_CST value to 31 1191f717b828 vp8l.c, cosmetics: fix indent after 95509f9 1192927ccdc4 Merge "fix alignment of allocated memory in AllocateTransformBuffer" 1193fea94b2b fix alignment of allocated memory in AllocateTransformBuffer 11945aa8d61f Merge "MIPS: rescaler code synced with C implementation" 1195e7fb267d MIPS: rescaler code synced with C implementation 119693c86ed5 Merge "format_constants.h: MKFOURCC, correct cast" 11975d791d26 format_constants.h: MKFOURCC, correct cast 119865726cd3 dsp/lossless: Average2, make a constant unsigned 1199d26d9def Use __has_builtin to check clang support 120012ec204e moved ALIGN_CST into util/utils.h and renamed WEBP_ALIGN_xxx 1201a2640838 Merge "rescaler: ~20% faster SSE2 implementation for lossless ImportRowExpand" 12023fb600d5 Merge "wicdec: fix alpha detection w/64bpp BGRA/RGBA" 120367c547fd rescaler: ~20% faster SSE2 implementation for lossless ImportRowExpand 120499e3f812 Merge "large re-organization of the delta-palettization code" 120595509f99 large re-organization of the delta-palettization code 120674fb458b fix for weird msvc warning message 1207ae49ad86 Merge "SSE2 implementation of ImportRowShrink" 1208932fd4df SSE2 implementation of ImportRowShrink 1209badfcbaa wicdec: fix alpha detection w/64bpp BGRA/RGBA 121035cafa6c Merge "iosbuild: fix linking with Xcode 7 / iOS SDK 9" 1211b0c9d8af label rename: NO_CHANGE -> NoChange 1212b4e731cd neon-implementation for rescaler code 1213db1321a6 iosbuild: fix linking with Xcode 7 / iOS SDK 9 12146dfa5e3e rescaler: better handling of the fxy_scale=0 special case. 121555c05293 Revert "rescaler: better handling of the fxy_scale=0 special case." 12169f226bf8 rescaler: better handling of the fxy_scale=0 special case. 1217f7b8f907 delta_palettization.*: add copyright 1218c1e1b710 Changed delta palette to compress better 12190dd28267 Merge "Add delta_palettization feature to WebP" 122048f66b66 Add delta_palettization feature to WebP 122127933e2a anim_encoder: drop a frame if it has same pixels as the prev frame. 1222df9f6ec8 Merge "webpmux/DisplayInfo: send non-error output to stdout" 12238af4993b Merge "rescaler_mips_dsp_r2: cosmetics, fix indent" 12242b9d2495 Merge "rescaler: cosmetics, join two lines" 1225cc020a8c webpmux/DisplayInfo: send non-error output to stdout 1226a288e746 configure: add -Wshorten-64-to-32 1227c4c3cf2d pngdec: fix type conversion warnings 1228bef8e97d webpmux: fix type conversion warning 12295a84460d rescaler_mips_dsp_r2: cosmetics, fix indent 1230acde0aae rescaler: cosmetics, join two lines 1231306ce4fd rescaler: move the 1x1 or 2x1 handling one level up 1232cced974b remove _mm_set_epi64x(), which is too specific 123356668c9f fix warnings about uint64_t -> uint32_t conversion 123476a7dc39 rescaler: add some SSE2 code 12351df1d0ee rescaler: harmonize function protos 12369ba1894b rescaler: simplify ImportRow logic 12375ff0079e fix rescaler vertical interpolation 1238cd82440e VP8LAllocateHistogramSet: align histogram[] entries 1239a406b1dd Merge "fix memory over-allocation in lossless rescaler init" 12400fde33e3 add missing const in VP8InitFrame signature 1241ac7d5e8d fix memory over-allocation in lossless rescaler init 1242017f8ccc Loosen the buffer size checks for Y/U/V/A too. 124315ca5014 loosen the padding check on buffer size 1244d623a870 dec_neon: add whitespace around stringizing operator 124529377d55 dsp/mips: cosmetics: add whitespace around XSTR macro 1246eebaf97f dsp/mips: add whitespace around stringizing operator 1247d39dc8f3 Create a WebPAnimDecoder API. 124803fb7522 gif2webp: print output file size 124914efabbf Android: limit use of cpufeatures 12507b83adbe preparatory cosmetics for Rescaler code fix and clean-up 125177fb41c2 dec/vp8l/DecodeAlphaData: remove redundant cast 125290fcfcd9 Insert less hash chain entries from the beginnings of long copies. 1253bd55604d SSE2: add yuv444 converters, re-using yuv_sse2.c 125441a5d99d add a -quiet option to 'dwebp' 125580ab3edb Merge "README: update dwebp help output after 1e595fe" 125632b71b2e README: update dwebp help output after 1e595fe 12573ec11827 use the DispatchAlpha() call from dsp 1258c5f00621 incorporate bzero() into WebPRescalerInit() instead of call site 12593ebcdd41 remove duplicate "#include <stdlib.h>" 12601e595fe1 dwebp: add -resize as a synonym for -scale 126124a96932 dec: allow 0 as a scaling dimension 1262b9187242 utils/rescaler: add WebPRescalerGetScaledDimensions 1263923e8eda Merge "update NEWS" 1264020fd099 Merge "WebPPictureDistortion: support ARGB format for 'pic' when computing distortion." 12656a5292f6 update NEWS 126656a2e9f5 WebPPictureDistortion: support ARGB format for 'pic' when computing distortion. 12670ae582e4 configure: test and add -Wunreachable-code 1268c2f9dc06 bit_writer: convert VP8L macro values to immediates 1269b969f888 Reduce magic in palette reordering 1270acb297e9 anim_diff: add a -raw_comparison flag 1271155c1b22 Merge changes I76f4d6fe,I45434639 1272717e4d5a mips32/mipsDSPr2: function ImportRow rebased 12737df93893 fix rescaling bug (uninitialized read, see bug #254). 12745cdcd561 lossless_enc_neon: add VP8LTransformColor 1275a53c3369 lossless_neon: add VP8LTransformColorInverse 127699131e7f Merge changes I9fb25a89,Ibc648e9e 1277c4556766 simplify the main loop for downscaling 12782a010f99 lossless_neon: remove predictors 5-13 1279ca221bbc ll_enc_neon: enable VP8LSubtractGreenFromBlueAndRed 1280585d93db Container spec: clarify ordering of ALPH chunk. 128101d61fd9 lossless: ~20 % speedup 1282f722c8f0 lossless: Speed up ComputeCacheEntropy by 40 % 12831ceecdc8 add a VP8LColorCacheSet() method for color cache 128417eb6099 lossless: Allow copying from prev row in rle-mode. 1285f3a7a5bf lossless: bit writer optimization 1286d97b9ff7 Merge changes from topic 'lossless-enc-improvements' 12870250dfcc msvc: fix pointer type warning in BitsLog2Floor 128852931fd5 lossless: combine the Huffman code with extra bits 1289c4855ca2 lossless: Inlining add literal 12908e9c94de lossless: simplify HashChainFindCopy heuristics 1291888429f4 lossless: 0.5 % compression density improvement 12927b23b198 lossless: Add zeroes into the predicted histograms. 129385b44d8a lossless: encoding, don't compute unnecessary histo 1294d92453f3 lossless: Remove about 25 % of the speed degradation 12952cce0317 Faster alpha coding for webp 12965e75642e lossless: rle mode not to accept lengths smaller than 4. 129784326e4a lossless: Less code for the entropy selection 129816ab951a lossless: 0.37 % compression density improvement 1299822f113e add WebPFree() to the API 13000ae2c2e4 SSE2/SSE41: optimize SSE_16xN loops 130139216e59 cosmetics: fix indent after 32462a07 1302559e54ca Merge "SSE2: slightly faster FTransformWHT" 13038ef9a63b SSE2: slightly faster FTransformWHT 1304f27f7735 lossless_neon: enable VP8LAddGreenToBlueAndRed 130536e9c4bc SSE2: minor cosmetrics on in-loop filter code 13064741fac4 dsp/lossless_*sse2: remove some unnecessary inlines 13071819965e fix warning ("left shift of negative value") using a cast 130870170014 SSE2: speed-up some lossless-encoding functions 1309abcb0128 Merge "SSE2: slightly faster (~5%) AddGreenToBlueAndRed()" 13102df5bd30 Merge "Speedup to HuffmanCostCombinedCount" 13119e356d6b SSE2: slightly faster (~5%) AddGreenToBlueAndRed() 1312fc6c75a2 SSE2: 53% faster TransformColor[Inverse] 131349073da6 SSE2: 46% speed-up of TransformColor[Inverse] 131432462a07 Speedup to HuffmanCostCombinedCount 1315f3d687e3 SSE4.1 implementation of some lossless encoding functions 1316bfc300c7 SSE4.1 implementation of some alpha-processing functions 13177f9c98f2 Merge "sse2 in-loop: simplify SignedShift8b() a bit" 1318ef314a5d dec_sse2/GetNotHEV: micro optimization 1319a729cff9 sse2 in-loop: simplify SignedShift8b() a bit 1320422ec9fb simplify Load8x4() a bit 13218df238ec Merge "remove some duplicate FlipSign()" 1322751506c4 remove some duplicate FlipSign() 132365ef5afc Merge "lossless: 0.13% compression density gain" 13242beef2f2 lossless: 0.13% compression density gain 13253033f24c lossless: 0.06 % compression density improvement 132664960da9 dec_neon: add VE8uv / VE16 132714dbd87b dec_neon: add HE8uv / HE16 1328ac768011 introduce FTransform2 to perform two transforms at a time. 1329aa6065ae dec_neon: use vld1_dup(mem) rather than vdup(mem[0]) 13308b63ac78 Merge "dec_neon: add TM16" 1331f51be09e Merge "dec_neon/TrueMotion: simply left border load" 1332dc48196b dec_neon: add TM16 1333ea95b305 dec_neon/TrueMotion: simply left border load 1334f262d612 speed-up SetResidualSSE2 1335bf46d0ac fix mips2 build target 1336929a0fdc enc_sse2/TTransform: simplify abs calculation 133717dbd058 enc_sse2/CollectHistogram: simplify abs calculation 1338a6c15936 dec_neon: add DC16 intra predictors 133903b4f50d Makefile.vc: add anim_diff build support. 13401b989874 Merge changes I9cd84125,Iee7e387f,I7548be72 1341acd7b5af Introduce a test tool anim_diff. 1342f274a96c dsp/enc_sse2: add luma4 intra predictors 1343040b11bd dsp/enc_sse2: add chroma intra predictors 1344aee021bb dsp/enc_sse2: add luma16 intra predictors 13459e00a499 makefile.unix: remove superclean target 1346cefc9c09 makefile.unix: clean up after extras target 13474c9af023 dec_neon: add DC8uvNoTopLeft 1348dd55b873 Merge "doc/webp-container-spec: update repo browser link" 1349f0486968 doc/webp-container-spec: update repo browser link 13509287761d Merge "GetResidualCostSSE2: simplify abs calculation" 13510e009366 dsp/cpu.c(x86): check maximum supported cpuid feature 1352b243a4bc GetResidualCostSSE2: simplify abs calculation 13536d4602b8 Merge "fix typo: constitutes -> constitute" 13545fe1fe37 fix typo: constitutes -> constitute 1355b83bd7c4 Merge "populate 'libwebpextras' with: import gray, rgb565 and rgb4444 functions" 1356b0114a32 Merge "histogram.h: cosmetics: remove unnecessary includes" 1357feab45ef gifdec: Move inclusion of webp/config.h to header. 1358dbba67d1 histogram.h: cosmetics: remove unnecessary includes 1359e978fec6 Merge "VP8LBitReader: fix remaining ubsan error with large shifts" 1360d6fe5884 Merge "ReconstructRow: move some one-time inits out of the main loop" 1361a21d647c ReconstructRow: move some one-time inits out of the main loop 13627a01c3c3 VP8LBitReader: fix remaining ubsan error with large shifts 13637fa67c9b change GetPixPairHash64() return type to uint32_t 1364ec1fb9f8 Merge "dsp/enc.c: cosmetics: move DST() def closer to use" 13657073bfb3 Merge "split 64-mult hashing into two 32-bit multiplies" 13660768b252 dsp/enc.c: cosmetics: move DST() def closer to use 13676a48b8f0 Merge "fix MSVC size_t->int conversion warning" 13681db07cde Merge "anim_encode: cosmetics: fix alignment" 1369e28271a3 anim_encode: cosmetics: fix alignment 13707fe357b8 split 64-mult hashing into two 32-bit multiplies 1371af74c145 populate 'libwebpextras' with: import gray, rgb565 and rgb4444 functions 137261214134 remove VP8Residual::cost unused field 1373e2544823 fix MSVC size_t->int conversion warning 1374b69a6c35 vwebp: don't redefine snprintf with VS2015+ 13750ac29c51 AnimEncoder API: Consistent use of trailing underscores in struct. 1376d4845550 AnimEncoder API: Use timestamp instead of duration as input to Add(). 13779904e365 dsp/dec_sse2: DC8uv / DC8uvNoLeft speedup 13787df20497 dsp/dec_sse2: DC16 / DC16NoLeft speedup 13798e515dfe Merge "makefile.unix: add some missing headers" 1380db12250f cosmetics: vp8enci.h: break long line 1381bf516a87 makefile.unix: add some missing headers 1382b44eda3f dsp: add DSP_INIT_STUB 138303e76e96 clarify the comment about double-setting the status in SetError() 13849fecdd71 remove unused EmitRGB() 138543f010dd move ReconstructRow to top 138682d98020 add a dec/common.h header to collect common enc/dec #defines 13875d4744a2 Merge "enc_sse41: add Disto4x4 / Disto16x16" 1388e38886a7 mux.h: Bump up ABI version 138946305ca6 configure: add --disable-<avx2|sse4.1|sse2> 13902fc8b658 CPPFLAGS->CFLAGS for detecting sse4.1 in preprocessor 13911a338fb3 enc_sse41: add Disto4x4 / Disto16x16 139294055503 encoding SSE4.1 stub for StoreHistogram + Quantize + SSE_16xN 1393c64659e1 remove duplicate variables after the lossless{_enc}.c split 139467ba7c7a enc_sse2: call local FTransform in CollectHistogram 139518249799 dsp: s/VP8LSetHistogramData/VP8SetHistogramData/ 1396ede5e158 cosmetics: dsp/lossless.h: reorder prototypes 1397553051f7 dsp/lossless: split enc/dec functions 13989064adc8 Merge "conditionally add -msse4.1 in Makefile.unix" 1399cecf5096 dsp/yuv*.c: rework WEBP_USE_<arch> ifdef 14006584d398 dsp/upsampling*.c: rework WEBP_USE_<arch> ifdef 140180809422 dsp/rescaler*.c: rework WEBP_USE_<arch> ifdef 14021d93ddec dsp/lossless*.c: rework WEBP_USE_<arch> ifdef 140373805ff2 dsp/filters*.c: rework WEBP_USE_<arch> ifdef 1404fbdcef24 dsp/enc*.c: rework WEBP_USE_<arch> ifdef 140566de69c1 dsp/dec*.c: rework WEBP_USE_<arch> ifdef 140648e4ffd1 dsp/cost*.c: rework WEBP_USE_<arch> ifdef 140729fd6f90 dsp/argb*.c: rework WEBP_USE_<arch> ifdef 140880ff3813 dsp/alpha*.c: rework WEBP_USE_<arch> ifdef 1409bf09cf1e conditionally add -msse4.1 in Makefile.unix 1410e9570dd9 stub for SSE4.1 support. 14114a95384b Merge "dsp: add sse4.1 detection" 1412cabf4bd2 dsp: add sse4.1 detection 14134ecba1ab thread.h: rename interface param 1414b8d706c8 Merge "sync versions with 0.4.3" 1415ae64a711 Merge "add shell for libwebpextras" 141692a5da9c sync versions with 0.4.3 14179d4e2d16 Merge "~30% faster smart-yuv (-pre 4) with early-out criterion" 1418b1bdbbab ~30% faster smart-yuv (-pre 4) with early-out criterion 14197efb9748 Merge "Disable NEON code on Native Client" 1420ac4f5784 Disable NEON code on Native Client 14210873f85b AnimEncoder API: Support input frames in YUV(A) format. 14225c176d2d add shell for libwebpextras 142344bd9561 fix signature for VP8RecordCoeffTokens() 1424c9b8ea0e small cosmetics on TokenBuffer. 142576394c09 Merge "MIPS: dspr2: added optimization for TrueMotion" 14260f773693 WebPPictureRescale: add a note about 0 width/height 1427241bb5d9 MIPS: dspr2: added optimization for TrueMotion 14286cef0e4f examples/Android.mk: add webpmux_example target 142953c16ff0 Android.mk: add webpmux target 143021852a00 Android.mk: add webpdemux target 14318697a3bc Android.mk: add webpdecoder{,_static} targets 14324a670491 Android.mk: split source lists per-directory 1433b5e79422 MIPS: dspr2: Added optimization for some convert functions 14340f595db6 MIPS: dspr2: Added optimization for some convert functions 14358a218b4a MIPS: [mips32|dspr2]: GetResidualCost rebased 1436ef987500 Speedup method StoreImageToBitMask by 5%. 1437602a00f9 fix iOS arm64 build with Xcode 6.3 143823820507 1-2% faster encoding by removing an indirection in GetResidualCost() 1439eddb7e70 MIPS: dspr2: added otpimization for DC8uv, DC8uvNoTop and DC8uvNoLeft 144073ba2915 MIPS: dspr2: added optimization for functions RD4 and LD4 1441c7129da5 Merge "4-5% faster encoding using SSE2 for GetResidualCost" 144294380d00 MIPS: dspr2: added optimizaton for functions VE4 and DC4 14432a407092 4-5% faster encoding using SSE2 for GetResidualCost 144417e19862 Merge "MIPS: dspr2: added optimization for simple filtering functions" 14453ec404c4 Merge "dsp: normalize WEBP_TSAN_IGNORE_FUNCTION usage" 1446b969f5df dsp: normalize WEBP_TSAN_IGNORE_FUNCTION usage 1447d7b8e711 MIPS: dspr2: added optimization for simple filtering functions 1448235f774e Merge "MIPS: dspr2: Added optimization for function VP8LTransformColorInverse_C" 144942a8a628 MIPS: dspr2: Added optimization for function VP8LTransformColorInverse_C 1450b442bef3 Merge "ApplyFiltersAndEncode: only copy lossless stats" 1451b510fbfe doc/webp-container-spec: note MSB order for chunk diagrams 14529bc0f922 ApplyFiltersAndEncode: only copy lossless stats 14533030f115 Merge "dsp/mips: add some missing TSan annotations" 1454dfcf4593 Merge "MIPS: dspr2: Added optimization for function VP8LAddGreenToBlueAndRed_C" 145555c75a25 dsp/mips: add some missing TSan annotations 14562cb879f0 MIPS: dspr2: Added optimization for function VP8LAddGreenToBlueAndRed_C 1457e1556010 move some cost tables from enc/ to dsp/ 1458c3a03168 Merge "picture_csp: fix build w/USE_GAMMA_COMPRESSION undefined" 145939537d7c Merge "VP8LDspInitMIPSdspR2: add missing TSan annotation" 14601dd419ce picture_csp: fix build w/USE_GAMMA_COMPRESSION undefined 146143fd3543 VP8LDspInitMIPSdspR2: add missing TSan annotation 1462c7233dfc Merge "VP8LDspInit: remove memcpy" 14630ec4da96 picture_csp::InitGammaTables*: add missing TSan annotations 146435579a49 VP8LDspInit: remove memcpy 146597f6aff8 VP8YUVInit: add missing TSan annotation 1466f9016d66 dsp/enc::InitTables: add missing TSan annotation 1467e3d9771a VP8EncDspCostInit*: add missing TSan annotations 1468d97c143d Merge "doc/webp-container-spec: cosmetics" 1469309b7908 MIPS: mips32: Added optimization for function SetResidualCoeffs 1470a987faed MIPS: dspr2: added optimization for function GetResidualCost 1471e7d3df23 doc/webp-container-spec: cosmetics 1472be6635e9 Merge "VP8TBufferClear: remove some misleading const's" 147302971e72 Merge "VP8EmitTokens: remove unnecessary param void cast" 14743b77e5a7 VP8TBufferClear: remove some misleading const's 1475aa139c8f VP8EmitTokens: remove unnecessary param void cast 1476c24d8f14 cosmetics: upsampling_sse2: add const to some casts 14771829c42c cosmetics: lossless_sse2: add const to some casts 1478183168f3 cosmetics: enc_sse2: add const to some casts 1479860badca cosmetics: dec_sse2: add const to some casts 14800254db97 cosmetics: argb_sse2: add const to some casts 14811aadf856 cosmetics: alpha_processing_sse2: add const to some casts 14821579de3c vwebp: clear canvas at the beginning of each loop 14834b9fa5d0 Merge "webp-container-spec: clarify background clear on loop" 14844c82284d Updated the near-lossless level mapping. 148556039479 webp-container-spec: clarify background clear on loop 148619f0ba0e Implement true-motion prediction in SSE2 1487774d4cb7 make VP8PredLuma16[] array non-const 1488d7eabb80 Merge "MIPS: dspr2: Added optimization for function CollectHistogram" 1489fe42739c Use integers for kmin/kmax for simplicity. 1490b9df35f7 AnimEncode API: kmax=0 should imply all keyframes. 14916ce296da MIPS: dspr2: Added optimization for function CollectHistogram 14922c906c40 vwebp: remove unnecessary static Help() prototype 1493be0fd1d5 Merge "dec/vp8: clear 'dither_' on skipped blocks" 1494e96170fe Merge "vwebp/animation: display last frame on end-of-loop" 14950f017b56 vwebp/animation: display last frame on end-of-loop 1496c86b40cc enc/near_lossless.c: fix alignment 149766935fb9 dec/vp8: clear 'dither_' on skipped blocks 1498b7de7946 Merge "lossless_neon: enable subtract green for aarch64" 149977724f70 SSE2 version of GradientUnfilter 1500416e1cea lossless_neon: enable subtract green for aarch64 150172831f6b Speedup AnalyzeAndInit for low effort compression. 1502a6597483 Speedup Analyze methods for lossless compression. 150398c81386 Enable Near-lossless feature. 1504c6b24543 AnimEncoder API: Fix for kmax=1 and default kmin case. 1505022d2f88 add SSE2 variants for alpha filtering functions 15062db15a95 Temporarily disable encoding of alpha plane with color cache. 15071d575ccd Merge "Lossless decoding: Remove an unnecessary if condition." 1508cafa1d88 Merge "Simplify backward refs calculation for low-effort." 15097afdaf84 Alpha coding: reorganize the filter/unfiltering code 15104d6d7285 Simplify backward refs calculation for low-effort. 1511ec0d1be5 Cleaup Near-lossless code. 15129814ddb6 Remove the post-transform near-lossless heuristic. 15134509e32e Lossless decoding: Remove an unnecessary if condition. 1514f2ebc4a8 Merge "Regression fix for lossless decoding" 1515783a8cda Regression fix for lossless decoding 15169a062b8e AnimEncoder: Bugfix for kmin = 1 and kmax = 2. 15170f027a72 simplify smart RGB->YUV conversion code 15180d5b334e BackwardReferencesHashChainFollowChosenPath: remove unused variable 1519f480d1a7 Fix to near lossless artefacts on palettized images. 1520d4615d08 Merge changes Ia1686828,I399fda40 1521cb4a18a7 rename HashChainInit into HashChainReset 1522f079e487 use uint16_t for chosen_path[] 1523da091212 MIPS: dspr2: Added optimization for function FTransformWHT 1524b8c20135 Merge "wicdec: (msvs) quiet some /analyze warnings" 15259b228b54 wicdec: (msvs) quiet some /analyze warnings 1526daeb276a Merge "MIPS: dspr2: Added optimization for MultARGBRow function" 1527cc087424 Merge "dsp/cpu: (msvs) add include for __cpuidex" 15284a82aab5 Merge changes I87544e92,I0bb6cda5 15297a191398 dwebp/WritePNG: mark png variables volatile 1530775dfad2 dwebp: include setjmp.h w/WEBP_HAVE_PNG 153147d26be7 dwebp: correct sign in format strings 1532f0e0677b VP8LEncodeStream: add an assert 1533c5f7747f VP8LColorCacheCopy: promote an int before shifting 15340de5f33e dsp/cpu: (msvs) add include for __cpuidex 15357d850f7b MIPS: dspr2: Added optimization for MultARGBRow function 153654875293 MIPS: dspr2: added optimization for function QuantizeBlock 15374fbe9cf2 dsp/cpu: (msvs) avoid immintrin.h on _M_ARM 15383fd59039 simplify/reorganize arguments for CollectColorBlueTransforms 1539b9e356b9 Disable costly TraceBackwards for method=0. 1540a7e7caa4 MIPS: dspr2: added optimization for function TransformColorRed 15412cb39180 Merge "MIPS: dspr2: added optimization for function TransformColorBlue" 1542279e6613 Merge "dsp/cpu: add include for _xgetbv() w/MSVS" 1543b6c0428e dsp/cpu: add include for _xgetbv() w/MSVS 1544d1c4ffae gif2webp: Move GIF decoding related code to a support library. 154507c39559 Merge "AnimEncoder API: Add info in README.mux" 15467b161973 MIPS: dspr2: added optimization for function TransformColorBlue 1547d7c4b02a cpu: fix AVX2 detection for gcc/clang targets 15489d299469 AnimEncoder API: Add info in README.mux 1549d581ba40 follow-up: clean up WebPRescalerXXX dsp function 1550f8740f0d dsp: s/USE_INTRINSICS/WEBP_USE_INTRINSICS/ 1551ce73abe0 Merge "introduce a separate WebPRescalerDspInit to initialize pointers" 1552ab66beca introduce a separate WebPRescalerDspInit to initialize pointers 1553205c7f26 fix handling of zero-sized partition #0 corner case 1554cbcdd5ff Merge "move rescaler functions to rescaler* files in src/dsp/" 1555bf586e88 Merge changes I230b3532,Idf3057a7 15566dc79dc2 Merge "anim_encode: fix type conversion warnings" 155711fce25a Merge "dec_neon: remove returns from void functions" 1558c4e63f99 Makefile.vc: add gif2webp target 15594f43d38c enable NEON for Windows ARM builds 15603f6615ac Makefile.vc: add rudimentary Windows ARM support 1561e7c5954c dec_neon: remove returns from void functions 1562f79c163b anim_encode: fix type conversion warnings 15630f54f1ec Remove gif2webp_util which is no longer needed. 1564cbcbedd0 move rescaler functions to rescaler* files in src/dsp/ 1565ac79ed19 webpmux: remove experimental fragment handling 1566e8694d4d mux: remove experimental FRGM parsing 15679e92b6ea AnimEncoder API: Optimize single-frame animated images 1568abbae279 Merge "Move over gif2webp to the new AnimEncoder API." 1569a28c4b36 MIPS: move WORK_AROUND_GCC define to appropriate place 1570012d2c60 MIPS: dspr2: added optimization for functions SSEAxB 157167720c8b Move over gif2webp to the new AnimEncoder API. 15729241ecf4 MIPS: dspr2: added optimization for function Average 15739422211d Merge "Tune BackwardReferencesLz77 for low_effort (m=0)." 1574df40057b Merge "Speedup VP8LGetHistoImageSymbols for low effort (m=0) mode." 1575ea08466d Tune BackwardReferencesLz77 for low_effort (m=0). 1576b0b973c3 Speedup VP8LGetHistoImageSymbols for low effort (m=0) mode. 1577c6d32927 argb_sse2: cosmetics 157867f601cd make the 'last_cpuinfo_used' variable names unique 1579b9489861 AnimEncoder API: Init method for default options. 1580856f8ec1 Merge "AnimEncoder API: Remove AnimEncoderFrameOptions." 1581c537514d Merge "AnimEncoder API: GenerateCandidates bugfix." 1582dc0ce039 Merge "AnimEncoder API: Compute change rectangle for first frame too." 1583f00b639b Merge "AnimEncoder API: In Assemble(), always set animation parameters." 158429ed796c Merge "AnimEncoder lib cleanup: prev to prev canvas not needed." 15859f0dd6e5 Merge "WebPAnimEncoder API: Header and implementation" 15865e56bbe0 AnimEncoder API: Remove AnimEncoderFrameOptions. 1587b902c3ea AnimEncoder API: GenerateCandidates bugfix. 1588ef3c39bb AnimEncoder API: Compute change rectangle for first frame too. 1589eec423ab AnimEncoder API: In Assemble(), always set animation parameters. 1590ae1c046e AnimEncoder lib cleanup: prev to prev canvas not needed. 15914b997ae4 WebPAnimEncoder API: Header and implementation 159272208bec move argb_*.o build target to encoder list 159395920538 Merge "multi-thread fix: lock each entry points with a static var" 15944c1b300a Merge "SSE2 implementation of VP8PackARGB" 1595fbcc2004 Merge "add -Wformat-nonliteral and -Wformat-security" 159680d950d9 add -Wformat-nonliteral and -Wformat-security 159704c20e75 Merge "MIPS: dspr2: added optimization for function Intra4Preds" 1598a437694a multi-thread fix: lock each entry points with a static var 1599ca7f60db SSE2 implementation of VP8PackARGB 160072d573f6 simplify the PackARGB signature 16014e2589ff demux: restore strict fragment flag check 16024ba8e074 Merge "webp-container-spec: remove references to fragments" 1603e752f0a6 Merge "demux: remove experimental FRGM parsing" 1604f8abb112 Merge changes I109ec4d9,I73fe7743 1605ae2188a4 MIPS: dspr2: added optimization for function Intra4Preds 16061f4b8642 move VP8EncDspARGBInit() call closer to where it's needed 160714108d78 dec_neon: add DC8uvNoTop / DC8uvNoLeft 1608d8340da7 dec_neon: add DC8uv 1609a66e66c7 webp-container-spec: remove references to fragments 16107ce8788b MIPS: dspr2: added optimization for function MakeARGB32 1611012e623d demux: remove experimental FRGM parsing 161287c3d531 method=0: Don't evaluate any predictor 16136f4fcb98 Merge "MIPS: dspr2: added optimization for function ImportRow" 161424284459 replace unneeded calls to HistogramCopy() by swaps 1615bdf7b40c MIPS: dspr2: added optimization for function ImportRow 1616e66a9225 Merge "MIPS: dspr2: added optimization for function ExportRowC" 1617c279fec1 MIPS: dspr2: added optimization for function ExportRowC 161831a9cf64 Speedup WebP lossless compression for low effort (m=0) mode with following: - Disable Cross-Color transform. - Evaluate predictors #11 (paeth), #12 and #13 only. 16199275d91c MIPS: dspr2: added optimization for function TrueMotion 162026106d66 Merge "enc_neon: fix building with non-Xcode clang (iOS)" 16211c4e3efe unroll the kBands[] indirection to remove a dereference in GetCoeffs() 1622a3946b89 enc_neon: fix building with non-Xcode clang (iOS) 16238ed9c00d Merge "simplify the Histogram struct, to only store max_value and last_nz" 1624bad77571 simplify the Histogram struct, to only store max_value and last_nz 16253cca0dc7 MIPS: dspr2: Added optimization for DCMode function 162637e395fd MIPS: fix functions to use generic BPS istead of hardcoded value 16279475bef4 PickBestUV: fix VP8Copy16x8 invocation 1628441f273f Merge changes I55f8da52,Id73a1e96 16294a279a68 cosmetics: add some missing != NULL comparisons 163066ad3725 factorize BPS definition in dsp.h and add VP8Copy16x8 1631432e5b55 make ALIGN_xxx naming consistent 163257606047 encoder: switch BPS to 32 instead of 16 16331b66bbe9 MIPS: dspr2: added optimization for function TransformColor_C 1634c6d0f9e7 histogram: cosmetics 1635f399d307 Merge changes I6eac17e5,I32d2b514 16369de9074c dec_neon: add TM8uv 16378e517eca bit_reader/kVP8NewRange: range_t -> uint8_t 1638e1857139 dsp: initialize VP8PredChroma8 in VP8DspInit() 1639e0c809ad Move Entropy methods to lossless.c 1640a96ccf8f iosbuild: add x64_64 simulator support 1641a0df5510 Remove handling for WEBP_HINT_GRAPH 1642413dfc0c Move static method definition before its usage. 16430f235665 Update BackwardRefsWithLocalCache. 1644d69e36ec Remove TODOs from lossless encoder code. 1645fdaac8e0 Optmize VP8LGetBackwardReferences LZ77 references. 16462f0e2ba8 MIPS: dspr2: added optimization for function Select 1647a3e79a46 Merge "WebPEncode: Support encoding same pic twice (even if modified)" 1648e4f4dddb WebPEncode: Support encoding same pic twice (even if modified) 1649cbc3fbb4 Merge "Updated VP8LGetBackwardReferences and color cache." 165095a9bd85 Updated VP8LGetBackwardReferences and color cache. 165154f2c14c MIPS: dspr2: added optimization for function FTransform 1652aa42f423 MIPS: dspr2: Added optimization for function VP8LSubtractGreenFromBlueAndRed 165311a25f75 Merge "FlattenSimilarBlocks should only be tried when blending is possible." 16545cccdadf FlattenSimilarBlocks should only be tried when blending is possible. 165595ca44a7 MIPS: dspr2: added optimization for Disto4x4 16564171b672 backward_references.c: reindent after c8581b0 1657c8581b06 Optimize BackwardReferences for RLE encoding. 16585798eee6 MIPS: dspr2: unfilters bugfix (Ie7b7387478a6b5c3f08691628ae00f059cf6d899) 16594167a3f5 Optimize backwardreferences 1660d18554c3 Merge "webp/types.h: use inline for clang++/-std=c++11" 16617489b0e7 gif2webp: Add '-min-size' option to get best compression. 166277bdddf0 Speed up BackwardReferences 16636638710b webp/types.h: use inline for clang++/-std=c++11 1664abf04205 Enable entropy based merge histo for (q<100) 1665572022a3 filters_mips_dsp_r2.c: disable unfilters 1666a28e21b1 MIPS: dspr2: Added optimization for function ClampedAddSubtractFull 166718d5a1ef MIPS: dspr2: added optimization for function ClampedAddSubtractHalf 1668829a8c19 MIPS: dspr2: added optimization for ITransform 1669c94ed49e gif2webp: Use the default hint instead of WEBP_HINT_GRAPH. 1670653ace55 Increase the MAX_COLOR_CACHE_BITS from 9 to 10. 1671919220c7 Change the logic adjusting the Histogram bits. 167253b096c0 Merge "Fix bug in VP8LCalculateEstimateForCacheSize." 1673e912bd55 Fix bug in VP8LCalculateEstimateForCacheSize. 1674541d7839 Merge "dec_neon: add RD4 intra predictor" 1675f8cd0672 Merge "Makefile.vc: add a 'legacy' RTLIBCFG option" 167622881c99 dec_neon: add RD4 intra predictor 1677613d281e update NEWS 16781304eb34 Merge "dec_neon: DC4: use pair-wise adds for top row" 167934c20c06 Makefile.vc: add a 'legacy' RTLIBCFG option 16807083006b Merge "dsp/dec_{neon,sse2}: VE4: normalize variable names" 16810db9031c dsp/dec_{neon,sse2}: VE4: normalize variable names 1682b5bc1530 dec_neon: DC4: use pair-wise adds for top row 16835b90d8fe Unify the API between VP8BitWriter and VP8LBitWriter 1684f7ada560 Merge changes I2e06907b,Ia9ed4ca6,I782282ff 16855beb6bf0 Merge "dec_neon: add VE4 intra predictor" 1686eba6ce06 dec_neon: add DC4 intra predictor 168779abfbd9 dec_neon: add TM4 intra predictor 1688fe395f0e dec_neon: add LD4 intra predictor 168932de385e dec_neon: add VE4 intra predictor 169072395ba9 Merge "Modify CostModel to allocate optimal memory." 169165e5eb8a gif2webp: Support GIF_DISPOSE_RESTORE_PREVIOUS 1692e4c829ef gif2webp: Handle frames with odd offsets + disposal to background. 1693c2b5a039 Modify CostModel to allocate optimal memory. 1694b7a33d7e implement VE4/HE4/RD4/... in SSE2 169597c76f1f make VP8PredLuma4[] non-const and initialize array in VP8DspInit() 16960ea8c6c2 Merge "PrintReg: output to stderr" 1697d7ff2f97 Merge "stopwatch.h: fix includes" 1698f85ec712 PrintReg: output to stderr 169954edbf65 stopwatch.h: fix includes 1700139142e4 Optimize BackwardReferenceHashChainFollowPath. 17015f36b68d enc/backward_references.c: fix indent 1702e0e9960d Merge "sync version numbers to 0.4.2 release" 170364ac5144 sync version numbers to 0.4.2 release 1704c24f8954 Simplify and speedup Backward refs computation. 1705d1c359ef fix shared object build with -fvisibility=hidden 1706a4c3a31b WEBP_TSAN_IGNORE_FUNCTION: fix gcc compat warning 1707f358eeb8 add code for testing random incremental decoding in dwebp 170880247291 mark some init function as being safe for thread_sanitizer. 170979b5bdbf bit_reader.h: cosmetics: fix a typo 17106c673681 Improved near-lossless mode. 17110ce27e71 enc_mips32: workaround gcc-4.9 bug 1712aca1b98f enc/vp8l.c: fix indent 1713ca005027 Evaluate non-palette compression for palette image 1714c8a87bb6 AssignSegments: quiet -Warray-bounds warning 171532f67e30 Merge "enc_neon: initialize vectors w/vdup_n_u32" 1716fabc65da 1-3% faster encoding optimizing SSE_NxN functions 17177534d716 enc_neon: initialize vectors w/vdup_n_u32 17185f813912 Merge "Fix return code of EncodeImageInternal()" 1719e321abe4 Fix return code of EncodeImageInternal() 1720f82cb06a optimize palette ordering 1721f545feee don't set the alpha value for histogram index image 17222d9b0a44 add WebPDispatchAlphaToGreen() to dsp 17231bd4c2ad Merge "Change Entropy based Histogram Combine heuristic." 1724e295b8f1 Merge "iosbuild: cleanup" 17251be4e760 Merge "iosbuild: output autoconf req. on failure" 1726d5e498d4 Change Entropy based Histogram Combine heuristic. 172747a2d8e1 fix MSVC float->int conversion warning 1728041956f6 iosbuild: cleanup 1729767eb402 iosbuild: output autoconf req. on failure 173035ad48b8 HistoHeapInit: correct positions allocation size 173145d9635f lossless: entropy clustering for high qualities. 1732dc37df8c fix type warning for VS9_x64 17339f7d9e6d iosbuild: make iOS 6 the minimum requirement 1734fdd6528b Remove unused VP8LDecoder member variable 1735ea3bba5a Merge "rewrite Disto4x4 in enc_neon.c with intrinsic" 1736f060dfc4 add lossless incremental decoding support 1737ab70794d rewrite Disto4x4 in enc_neon.c with intrinsic 1738d4471637 MIPS: dspr2: added optimization for function FilterLoop24 17392aef54d4 Merge "prepare VP8LDecodeImage for incremental decode" 1740aed0f5a2 Merge "MIPS: dspr2: added optimization for function FilterLoop26" 174128630685 prepare VP8LDecodeImage for incremental decode 1742248f3aed remove br->error_ field 174349e15044 MIPS: dspr2: added optimization for function FilterLoop26 174438128cb9 iobuild.sh: only install .h files in Headers 1745c792d412 Premultiply with alpha during U/V downsampling 17460cc811d7 gif2webp: Background color correction 1747d7167ff7 Amend the lossless spec according to issue #205, #206 and #224 1748b901416b Record the lossless size stats. 1749cddd3340 Add a WebPExtractAlpha function to dsp 17500716a98e fix indent after I0204949917836f74c0eb4ba5a7f4052a4797833b 1751f9ced95a Optimize lossless decoding for trivial(ARB) codes. 1752924fcfd9 Merge "webpmux: simplify InitializeConfig()" 1753c0a462ca webpmux: simplify InitializeConfig() 17546986bb5e webpmux: fix indent 1755f89e1690 webpmux: fix exit status on numeric value parse error 17562172cb62 Merge "webpmux: fix loop_count range check" 1757e3b343ec Merge "examples: warn on invalid numeric parameters" 17580e23c487 webpmux: fix loop_count range check 17596208338a Merge "fix loop bug in DispatchAlpha()" 1760d51f3e40 gif2webp: Handle frames with missing graphic control extension 1761690b491a fix loop bug in DispatchAlpha() 176296d43a87 examples: warn on invalid numeric parameters 17633101f537 MIPS: dspr2: added optimization for TransformOne 1764a6bb9b17 SSE2 for inverse Mult(ARGB)Row and ApplyAlphaMultiply 1765d84a8ffd Remove default initialization of decoder status. 1766be70b86c configure: simplify libpng-config invocation 1767e0a99321 Rectify bug in lossless incremental decoding. 1768e2502a97 MIPS: dspr2: added optimization for TransformAC3 176924e1072a MIPS: dspr2: added optimization for TransformDC 1770c0e84df8 Merge "Slightly faster lossless decoding (1%)" 17718dd28bb5 Slightly faster lossless decoding (1%) 1772f0103595 MIPS: dspr2: added optimization for ColorIndexInverseTransforms 1773d3242aee make VP8LSetBitPos() set br->eos_ flag 1774a9decb55 Lossless decoding: fix eos_ flag condition 17753fea6a28 fix erroneous dec->status_ setting 177680b8099f MIPS: dspr2: add some specific mips code to commit I2c3f2b12f8df15b785fad5a9c56316e954ae0c53 1777e5640625 Merge "further refine the COPY_PATTERN optim for DecodeAlpha" 1778854509fe enc/histogram.c: reindent after f4059d0 177934421964 Merge "~3-5% faster encoding optimizing PickBestIntra*()" 1780865069c1 further refine the COPY_PATTERN optim for DecodeAlpha 1781a5956228 added C-level optimization for DecodeAlphaData function 1782187d379d add a fallback to ALPHA_NO_COMPRESSION 1783a48a2d76 ~3-5% faster encoding optimizing PickBestIntra*() 1784a6140194 ExUtilReadFromStdin: (windows) open stdin in bin mode 1785e80eab1f webpmux: (windows) open stdout in binary mode 1786e9bfb116 cwebp: (windows) open stdout in binary mode 17875927e15b example_util: add ExUtilSetBinaryMode 178830f3b75b webpmux man page: Clarify some title, descriptions and examples 178977d4c7e3 address cosmetic comments from patch #71380 1790f75dfbf2 Speed up Huffman decoding for lossless 1791637b3888 dsp/lossless: workaround gcc-4.9 bug on arm 17928323a903 dsp.h: collect gcc/clang version test macros 1793e6c4b52f move static initialization of WebPYUV444Converters[] to the Init function. 179449911d4d Merge "fix indentation" 1795f4059d0c Code cleanup for HistogramRemap. 1796e632b092 fix indentation 1797f5c04d64 Merge "add a DispatchAlpha() for SSE2 that handles 8 pixels at a time" 1798fc98edd9 add a DispatchAlpha() for SSE2 that handles 8 pixels at a time 179973d361dd introduce VP8EncQuantize2Blocks to quantize two blocks at a time 18000b21c30b MIPS: dspr2: added optimization for EmitAlphaRGB 1801953acd56 enc_neon: enable QuantizeBlock for aarch64 1802f4ae1437 MIPS: mips32: code rebase 180356977154 MIPS: dspr2: added optimizations for VP8YuvTo* 18042523aa73 SmartRGBYUV: fix odd-width problem with pixel replication 1805ee52dc4e fix some MSVC64 warning about float conversion 18063fca851a cpu: check for _MSC_VER before using msvc inline asm 1807e2a83d71 faster RGB->YUV conversion function (~7% speedup) 1808de2d03e1 Merge "Add smart RGB->YUV conversion option -pre 4" 18093fc4c539 Add smart RGB->YUV conversion option -pre 4 1810b4dc4069 MIPS: dspr2: added optimization for (un)filters 1811137e6090 Merge "configure: add work around for gcc-4.9 aarch64 bug" 1812b61c9cec MIPS: dspr2: Optimization of some simple point-sampling functions 1813e2b8cec0 configure: add work around for gcc-4.9 aarch64 bug 181498c54107 MIPS: mips32r2: added optimization for BSwap32 1815dab702b3 Update PATENTS to reflect s/VP8/WebM/g 1816b564f7c7 Merge "MIPS: detect mips32r6 and disable mips32r1 code" 1817b7e5a5c4 MIPS: detect mips32r6 and disable mips32r1 code 181863c2fc02 Correctly use the AC_CANONICAL_* macros 1819bb07022b Merge "cosmetics" 1820e300c9d8 cosmetics 18210e519eea Merge "cosmetics: remove some extraneous 'extern's" 18223ef0f08a Merge "vp8enci.h: cosmetics: fix '*' placement" 18234c6dde37 bit_writer: cosmetics: rename kFlush() -> Flush() 1824f7b4c48b cosmetics: remove some extraneous 'extern's 1825b47fb00a vp8enci.h: cosmetics: fix '*' placement 1826b5a36cc9 add -near_lossless [0..100] experimental option 18270524d9e5 dsp: detect mips64 & disable mips32 code 1828d3485d96 cwebp.1: fix quality description placement 182929a9fe22 Merge tag 'v0.4.1' 18308af27718 update ChangeLog (tag: v0.4.1, origin/0.4.1, 0.4.1) 1831e09e9ff6 Record & log the image pre-processing time. 1832f59c0b4b iosbuild.sh: specify optimization flags 18338d34ea3e update ChangeLog (tag: v0.4.1-rc1) 1834dbc3da66 makefile.unix: add vwebp.1 to the dist target 183589a7c83c update ChangeLog 1836ffe67ee9 Merge "update NEWS for the next release" into 0.4.1 18372def1fe6 gif2webp: dust up the help message 1838fb668d78 remove -noalphadither option from README/vwebp.1 1839e49f693b update NEWS for the next release 1840cd013580 Merge "update AUTHORS" into 0.4.1 1841268d01eb update AUTHORS 184285213b9b bump version to 0.4.1 1843695f80ae Merge "restore mux API compatibility" into 0.4.1 1844862d296c restore mux API compatibility 18458f6f8c5d remove the !WEBP_REFERENCE_IMPLEMENTATION tweak in Put8x8uv 1846d713a696 Merge changes If4debc15,I437a5d5f into 0.4.1 1847c2fc52e4 restore encode API compatibility 1848793368e8 restore decode API compatibility 1849b8984f31 gif2webp: fix compile with giflib 5.1.0 1850222f9b1a gif2webp: simplify giflib version checking 1851d2cc61b7 Extend MakeARGB32() to accept Alpha channel. 18524595b62b Merge "use explicit size of kErrorMessages[] arrays" 1853157de015 Merge "Actuate memory stats for PRINT_MEMORY_INFO" 1854fbda2f49 JPEG decoder: delay conversion to YUV to WebPEncode() call 18550b747b1b use explicit size of kErrorMessages[] arrays 18563398d81a Actuate memory stats for PRINT_MEMORY_INFO 18576f3202be Merge "move WebPPictureInit to picture.c" 18586c347bbb move WebPPictureInit to picture.c 1859fb3acf19 fix configure message for multi-thread 186040b086f7 configure: check for _beginthreadex 18611549d620 reorder the YUVA->ARGB and ARGB->YUVA functions correctly 1862c6461bfd Merge "extract colorspace code from picture.c into picture_csp.c" 1863736f2a17 extract colorspace code from picture.c into picture_csp.c 1864645daa03 Merge "configure: check for -Wformat-security" 1865abafed86 configure: check for -Wformat-security 1866fbadb480 split monolithic picture.c into picture_{tools,psnr,rescale}.c 1867c76f07ec dec_neon/TransformAC3: initialize vector w/vcreate 1868bb4fc051 gif2webp: Allow single-frame animations 186946fd44c1 thread: remove harmless race on status_ in End() 18705a1a7264 Merge "configure: check for __builtin_bswapXX()" 18716781423b configure: check for __builtin_bswapXX() 18726450c48d configure: fix iOS builds 18736422e683 VP8LFillBitWindow: enable fast path for 32-bit builds 18744f7f52b2 VP8LFillBitWindow: respect WEBP_FORCE_ALIGNED 1875e458badc endian_inl.h: implement htoleXX with BSwapXX 1876f2664d1a endian_inl.h: add BSwap16 18776fbf5345 Merge "configure: add --enable-aligned" 1878dc0f479d configure: add --enable-aligned 18799cc69e2b Merge "configure: support WIC + OpenGL under mingw64" 1880257adfb0 remove experimental YUV444 YUV422 and YUV400 code 188110f4257c configure: support WIC + OpenGL under mingw64 1882380cca4f configure.ac: add AC_C_BIGENDIAN 1883ee70a901 endian_inl.h: add BSwap64 188447779d46 endian_inl.h: add BSwap32 1885d5104b1f utils: add endian_inl.h 188658ab6224 Merge "make alpha-detection loop in IsKeyFrame() in good x/y order" 18879d562902 make alpha-detection loop in IsKeyFrame() in good x/y order 1888516971b1 lossless: Remove unaligned read warning 1889b8b596f6 Merge "configure.ac: add an autoconf version prerequisite" 189034b02f8c configure.ac: add an autoconf version prerequisite 1891e59f5360 neon: normalize vdup_n_* usage 18926ee7160d Merge changes I0da7b3d3,Idad2f278,I4accc305 1893abc02f24 Merge "fix (uncompiled) typo" 1894bc03670f neon: add INIT_VECTOR4 18956c1c632b neon: add INIT_VECTOR3 1896dc7687e5 neon: add INIT_VECTOR2 18974536e7c4 add WebPMuxSetCanvasSize() to the mux API 1898824eab10 fix (uncompiled) typo 18991f3e5f1e remove unused 'shift' argument and QFIX2 define 19008e867051 Merge "VP8LoadNewBytes: use __builtin_bswap32 if available" 19011b6a2635 Merge "Fix handling of weird GIF with canvas dimension 0x0" 19021da3d461 VP8LoadNewBytes: use __builtin_bswap32 if available 19031582e402 Fix handling of weird GIF with canvas dimension 0x0 1904b8811dac Merge "rename interface -> winterface" 1905db8b8b5f Fix logic in the GIF LOOP-detection parsing 190625aaddc8 rename interface -> winterface 19075584d9d2 make WebPSetWorkerInterface() check its arguments 1908a9ef7ef9 Merge "cosmetics: update thread.h comments" 1909c6af9991 Merge "dust up the help message" 19100a8b8863 dust up the help message 1911a9cf3191 cosmetics: update thread.h comments 191227bfeee4 QuantizeBlock SSE2 Optimization: 19132bc0dc3e Merge "webpmux: warn when odd frame offsets are used" 19143114ebe4 Merge changes Id8edd3c1,Id418eb96,Ide05e3be 1915c0726634 webpmux: warn when odd frame offsets are used 1916c5c6b408 Merge "add alpha dithering for lossy" 1917d5146784 examples/Android.mk: add cwebp 1918ca0fa7c7 Android.mk: move dwebp to examples/Android.mk 191973d8fca0 Android.mk: add ENABLE_SHARED flag 19206e93317f muxread: fix out of bounds read 19218b0f6a48 Makefile.vc: fix CFLAGS assignment w/HAVE_AVX2=1 1922bbe32df1 add alpha dithering for lossy 192379020767 Merge "make error-code reporting consistent upon malloc failure" 192477bf4410 make error-code reporting consistent upon malloc failure 19257a93c000 **/Makefile.am: remove unused AM_CPPFLAGS 192624e30805 Add an interface abstraction to the WebP worker thread implementation 1927d6cd6358 Merge "fix orig_rect==NULL case" 19282bfd1ffa fix orig_rect==NULL case 1929059e21c1 Merge "configure: move config.h to src/webp/config.h" 1930f05fe006 properly report back encoding error code in WebPFrameCacheAddFrame() 193132b31379 configure: move config.h to src/webp/config.h 193290090d99 Merge changes I7c675e51,I84f7d785 1933ae7661b3 makefiles: define WEBP_HAVE_AVX2 when appropriate 193469fce2ea remove the special casing for res->first in VP8SetResidualCoeffs 19356e61a3a9 configure: test for -msse2 1936b9d2efc6 rename upsampling_mips32.c to yuv_mips32.c 1937bdfeebaa dsp/yuv: move sse2 functions to yuv_sse2.c 193846b32e86 Merge "configure: set WEBP_HAVE_AVX2 when available" 193988305db4 Merge "VP8RandomBits2: prevent signed int overflow" 194073fee88c VP8RandomBits2: prevent signed int overflow 1941db4860b3 enc_sse2: prevent signed int overflow 19423fdaf4d2 Merge "real fix for longjmp warning" 1943385e3340 real fix for longjmp warning 1944230a0555 configure: set WEBP_HAVE_AVX2 when available 1945a2ac8a42 restore original value_/range_ field order 19465e2ee56f Merge "remove libwebpdspdecode dep on libwebpdsp_avx2" 194761362db5 remove libwebpdspdecode dep on libwebpdsp_avx2 194842c447ae Merge "lossy bit-reader clean-up:" 1949479ffd8b Merge "remove unused #include's" 19509754d39a Merge "strong filtering speed-up (~2-3% x86, ~1-2% for NEON)" 1951158aff9b remove unused #include's 195209545eea lossy bit-reader clean-up: 1953ea8b0a17 strong filtering speed-up (~2-3% x86, ~1-2% for NEON) 19546679f899 Optimize VP8SetResidualCoeffs. 1955ac591cf2 fix for gcc-4.9 warnings about longjmp + local variables 19564dfa86b2 dsp/cpu: NaCl has no support for xgetbv 19574c398699 Merge "cwebp: fallback to native webp decode in WIC builds" 195833aa497e Merge "cwebp: add some missing newlines in longhelp output" 1959c9b340a2 fix missing WebPInitAlphaProcessing call for premultiplied colorspace output 196057897bae Merge "lossless_neon: use vcreate_*() where appropriate" 19616aa4777b Merge "(enc|dec)_neon: use vcreate_*() where appropriate" 19620d346e41 Always reinit VP8TransformWHT instead of hard-coding 19637d039fc3 cwebp: fallback to native webp decode in WIC builds 1964d471f424 cwebp: add some missing newlines in longhelp output 1965bf0e0030 lossless_neon: use vcreate_*() where appropriate 19669251c2f6 (enc|dec)_neon: use vcreate_*() where appropriate 1967399b916d lossy decoding: correct alpha-rescaling for YUVA format 196878c12ed8 Merge "Makefile.vc: add rudimentary avx2 support" 1969dc5b122f try to remove the spurious warning for static analysis 1970ddfefd62 Makefile.vc: add rudimentary avx2 support 1971a8911643 Merge "simplify VP8LInitBitReader()" 1972fdbcd44d simplify VP8LInitBitReader() 19737c004287 makefile.unix: add rudimentary avx2 support 1974515e35cf Merge "add stub dsp/enc_avx2.c" 1975a05dc140 SSE2: yuv->rgb speed-up for point-sampling 1976178e9a69 add stub dsp/enc_avx2.c 19771b99c09c Merge "configure: add a test for -mavx2" 1978fe728071 configure: add a test for -mavx2 1979e46a247c cpu: fix check for __cpuidex availability 1980176fda26 fix the bit-writer for lossless in 32bit mode 1981541784c7 dsp.h: add a check for AVX2 / define WEBP_USE_AVX2 1982bdb151ee dsp/cpu: add AVX2 detection 1983ab9f2f86 Merge "revamp the point-sampling functions by processing a full plane" 1984a2f8b289 revamp the point-sampling functions by processing a full plane 1985ef076026 use decoder's DSP functions for autofilter 19862b5cb326 Merge "dsp/cpu: add AVX detection" 1987df08e67e dsp/cpu: add AVX detection 1988e2f405c9 Merge "clean-up and slight speed-up in-loop filtering SSE2" 1989f60957bf clean-up and slight speed-up in-loop filtering SSE2 19909fc3ae46 .gitattributes: treat .ppm as binary 19913da924b5 Merge "dsp/WEBP_USE_NEON: test for __aarch64__" 1992c7164490 Android.mk: always include *_neon.c in the build 1993a577b23a dsp/WEBP_USE_NEON: test for __aarch64__ 199454bfffca move RemapBitReader() from idec.c to bit_reader code 199534168ecb Merge "remove all unused layer code" 1996f1e77173 remove all unused layer code 1997b0757db7 Code cleanup for VP8LGetHistoImageSymbols. 19985fe628d3 make the token page size be variable instead of fixed 8192 1999f948d08c memory debug: allow setting pre-defined malloc failure points 2000ca3d746e use block-based allocation for backward refs storage, and free-lists 20011ba61b09 enable NEON intrinsics in aarch64 builds 2002b9d2bb67 dsp/neon.h: coalesce intrinsics-related defines 2003b5c75258 iosbuild: add support for iOSv7/aarch64 20049383afd5 Reduce number of memory allocations while decoding lossless. 2005888e63ed Merge "dsp/lossless: prevent signed int overflow in left shift ops" 20068137f3ed Merge "instrument memory allocation routines for debugging" 20072aa18736 instrument memory allocation routines for debugging 2008d3bcf72b Don't allocate VP8LHashChain, but treat like automatic object 2009bd6b8619 dsp/lossless: prevent signed int overflow in left shift ops 2010b7f19b83 Merge "dec/vp8l: prevent signed int overflow in left shift ops" 201129059d51 Merge "remove some uint64_t casts and use." 2012e69a1df4 dec/vp8l: prevent signed int overflow in left shift ops 2013cf5eb8ad remove some uint64_t casts and use. 201438e2db3e MIPS: MIPS32r1: Added optimization for HistogramAdd. 2015e0609ade dwebp: fix exit code on webp load failure 2016bbd358a8 Merge "example_util.h: avoid forward declaring enums" 20178955da21 example_util.h: avoid forward declaring enums 20186d6865f0 Added SSE2 variants for Average2/3/4 2019b3a616b3 make HistogramAdd() a pointer in dsp 2020c8bbb636 dec_neon: relocate some inline-asm defines 20214e393bb9 dec_neon: enable intrinsics-only functions 2022ba99a922 dec_neon: use positive tests for USE_INTRINSICS 202369058ff8 Merge "example_util: add ExUtilDecodeWebPIncremental" 2024a7828e8b dec_neon: make WORK_AROUND_GCC conditional on version 20253f3d717a Merge "enc_neon: enable intrinsics-only functions" 2026de3cb6c8 Merge "move LOCAL_GCC_VERSION def to dsp.h" 20271b2fe14d example_util: add ExUtilDecodeWebPIncremental 2028ca49e7ad Merge "enc_neon: move Transpose4x4 to dsp/neon.h" 2029ad900abd Merge "fix warning about size_t -> int conversion" 20304825b436 fix warning about size_t -> int conversion 203142b35e08 enc_neon: enable intrinsics-only functions 2032f937e012 move LOCAL_GCC_VERSION def to dsp.h 20335e1a17ef enc_neon: move Transpose4x4 to dsp/neon.h 2034c7b92a5a dec_neon: (WORK_AROUND_GCC) delete unused Load4x8 20358e5f90b0 Merge "make ExUtilLoadWebP() accept NULL bitstream param." 203605d4c1b7 Merge "cwebp: add webpdec" 2037ddeb6ac8 cwebp: add webpdec 203835d7d095 Merge "Reduce memory footprint for encoding WebP lossless." 20390b896101 Reduce memory footprint for encoding WebP lossless. 2040f0b65c9a make ExUtilLoadWebP() accept NULL bitstream param. 20419c0a60cc Merge "dwebp: move webp decoding to example_util" 20421d62acf6 MIPS: MIPS32r1: Added optimization for HuffmanCost functions. 20434a0e7390 dwebp: move webp decoding to example_util 2044c0220460 Merge "Bugfix: Incremental decode of lossy-alpha" 20458c7cd722 Bugfix: Incremental decode of lossy-alpha 20467955152d MIPS: fix error with number of registers. 2047b1dabe37 Merge "Move the HuffmanCost() function to dsp lib" 204875b12006 Move the HuffmanCost() function to dsp lib 20492772b8bd MIPS: fix assembler error revealed by clang's debug build 20506653b601 enc_mips32: fix unused symbol warning in debug 20518dec1209 enc_mips32: disable ITransform(One) in debug builds 205298519dd5 enc_neon: convert Disto4x4 to intrinsics 2053fe9317c9 cosmetics: 2054953b0746 enc_neon: cosmetics 2055a9fc697c Merge "WIP: extract the float-calculation of HuffmanCost from loop" 20563f84b521 Merge "replace some mult-long (vmull_u8) with mult-long-accumulate (vmlal_u8)" 20574ae0533f MIPS: MIPS32r1: Added optimizations for ExtraCost functions. 2058b30a04cf WIP: extract the float-calculation of HuffmanCost from loop 2059a8fe8ce2 Merge "NEON intrinsics version of CollectHistogram" 206095203d2d NEON intrinsics version of CollectHistogram 20617ca2e74b replace some mult-long (vmull_u8) with mult-long-accumulate (vmlal_u8) 206241c6efbd fix lossless_neon.c 20638ff96a02 NEON intrinsics version of FTransform 20640214f4a9 Merge "MIPS: MIPS32r1: Added optimizations for FastLog2" 2065baabf1ea MIPS: MIPS32r1: Added optimizations for FastLog2 20663d49871d NEON functions for lossless coding 20673fe02915 MIPS: MIPS32r1: Added optimizations for SSE functions. 2068c503b485 Merge "fix the gcc-4.6.0 bug by implementing alternative method" 2069abe6f487 fix the gcc-4.6.0 bug by implementing alternative method 20705598bdec enc_mips32.c: fix file mode 20712b1b4d5a MIPS: MIPS32r1: Add optimization for GetResidualCost 2072f0a1f3cd Merge "MIPS: MIPS32r1: Added optimization for FTransform" 20737231f610 MIPS: MIPS32r1: Added optimization for FTransform 2074869eaf6c ~30% encoding speedup: use NEON for QuantizeBlock() 2075f758af6b enc_neon: convert FTransformWHT to intrinsics 20767dad095b MIPS: MIPS32r1: Added optimization for Disto4x4 (TTransform) 20772298d5f3 MIPS: MIPS32r1: Added optimization for QuantizeBlock 2078e88150c9 Merge "MIPS: MIPS32r1: Add optimization for ITransform" 2079de693f25 lossless_neon: disable VP8LConvert* functions 20804143332b NEON intrinsics for encoding 20810ca2914b MIPS: MIPS32r1: Add optimization for ITransform 208271bca5ec dec_neon: use vst_lane instead of vget_lane 2083bf061052 Intrinsics NEON version of TransformOne 208419c6f1ba Merge "dec_neon: use vld?_lane instead of vset?_lane" 20857a94c0cf upsampling_neon: drop NEON suffix from local functions 2086d14669c8 upsampling_sse2: drop SSE2 suffix from local functions 20872ca42a4f enc_sse2: drop SSE2 suffix from local functions 2088d038e619 dec_sse2: drop SSE2 suffix from local functions 2089fa52d752 dec_neon: use vld?_lane instead of vset?_lane 2090c520e77d cosmetic: fix long line 20914b0f2dae Merge "add intrinsics NEON code for chroma strong-filtering" 2092e351ec07 add intrinsics NEON code for chroma strong-filtering 2093aaf734b8 Merge "Add SSE2 version of forward cross-color transform" 2094c90a902e Add SSE2 version of forward cross-color transform 2095bc374ff3 Use histogram_bits to initalize transform_bits. 20962132992d Merge "Add strong filtering intrinsics (inner and outer edges)" 20975fbff3a6 Add strong filtering intrinsics (inner and outer edges) 2098d4813f0c Add SSE2 function for Inverse Cross-color Transform 209926029568 dec_neon: add strong loopfilter intrinsics 2100cca7d7ef Merge "add intrinsics version of SimpleHFilter16NEON()" 21011a05dfa7 windows: fix dll builds 2102d6c50d8a Merge "add some colorspace conversion functions in NEON" 21034fd7c82e SSE2 variants of Subtract-Green: Rectify loop condition 210497e5fac3 add some colorspace conversion functions in NEON 2105b9a7a45f add intrinsics version of SimpleHFilter16NEON() 2106daccbf40 add light filtering NEON intrinsics 2107af444608 fix typo in STORE_WHT 21086af6b8e1 Tune HistogramCombineBin for large images. 2109af93bdd6 use WebPSafe[CM]alloc/WebPSafeFree instead of [cm]alloc/free 211051f406a5 lossless_sse2: relocate VP8LDspInitSSE2 proto 21110f4f721b separate SSE2 lossless functions into its own file 2112514fc251 VP8LConvertFromBGRA: use conversion function pointers 21136d2f3527 dsp/dec: TransformDCUV: use VP8TransformDC 2114defc8e1b Merge "fix out-of-bound read during alpha-plane decoding" 2115fbed3643 Merge "dsp: reuse wht transform from dec in encoder" 2116d8467084 Merge "Add SSE2 version of ARGB -> BGR/RGB/... conversion functions" 2117207d03b4 fix out-of-bound read during alpha-plane decoding 2118d1b33ad5 2-5% faster trellis with clang/MacOS (and ~2-3% on ARM) 2119369c26dd Add SSE2 version of ARGB -> BGR/RGB/... conversion functions 2120df230f27 dsp: reuse wht transform from dec in encoder 212180e218d4 Android.mk: fix build with APP_ABI=armeabi-v7a-hard 212259daf083 Merge "cosmetics:" 212353622008 cosmetics: 21243e7f34a3 AssignSegments: quiet array-bounds warning 21253c2ebf58 Merge "UpdateHistogramCost: avoid implicit double->float" 2126cf821c82 UpdateHistogramCost: avoid implicit double->float 2127312e638f Extend the search space for GetBestGreenRedToBlue 21281c58526f Fix few nits 2129fef22704 Optimize and re-structure VP8LGetHistoImageSymbols 2130068b14ac Optimize lossless decoding. 21315f0cfa80 Do a binary search to get the optimum cache bits. 213224ca3678 Merge "allow 'cwebp -o -' to emit output to stdout" 2133e12f874e allow 'cwebp -o -' to emit output to stdout 21342bcad89b allow some more stdin/stout I/O 213584ed4b3a fix cwebp.1 typos after patch #69199 213665b99f1c add a -z option to cwebp, and WebPConfigLosslessPreset() function 213730176619 4-5% faster trellis by removing some unneeded calculations. 2138687a58ec histogram.c: reindent after b33e8a0 213906d456f6 Merge "~3-4% faster lossless encoding" 2140c60de260 ~3-4% faster lossless encoding 214142eb06fc Merge "few cosmetics after patch #69079" 214282af8264 few cosmetics after patch #69079 2143b33e8a05 Refactor code for HistogramCombine. 2144ca1bfff5 Merge "5-10% encoding speedup with faster trellis (-m 6)" 21455aeeb087 5-10% encoding speedup with faster trellis (-m 6) 214682ae1bf2 cosmetics: normalize VP8GetCPUInfo checks 2147e3dd9243 Merge "Refactor GetBestPredictorForTile for future tuning." 2148206cc1be Refactor GetBestPredictorForTile for future tuning. 21493cb84062 Merge "speed-up trellis quant (~5-10% overall speed-up)" 2150b66f2227 Merge "lossy encoding: ~3% speed-up" 21514287d0d4 speed-up trellis quant (~5-10% overall speed-up) 2152390c8b31 lossy encoding: ~3% speed-up 21539a463c4a Merge "dec_neon: convert TransformWHT to intrinsics" 2154e8605e96 Merge "dec_neon: add ConvertU8ToS16" 21554aa3e412 MIPS: MIPS32r1: rescaler bugfix 2156c16cd99a Speed up lossless encoder. 21579d6b5ff1 dec_neon: convert TransformWHT to intrinsics 21582ff0aae2 dec_neon: add ConvertU8ToS16 215977a8f919 fix compilation with USE_YUVj flag 21604acbec1b Merge changes I3b240ffb,Ia9370283,Ia2d28728 21612719bb7e dec_neon: TransformAC3: work on packed vectors 2162b7b60ca1 dec_neon: add SaturateAndStore4x4 2163b7685d73 Rescale: let ImportRow / ExportRow be pointer-to-function 2164e02f16ef dec_neon.c: convert TransformDC to intrinsics 21659cba963f add missing file 21668992ddb7 use static clipping tables 21670235d5e4 1-2% faster quantization in SSE2 2168b2fbc36c fix VC12-x64 warning 21696e37cb94 Merge "cosmetics: backward_references.c: reindent after a7d2ee3" 2170a42ea974 cosmetics: backward_references.c: reindent after a7d2ee3 21716c327442 Merge "fix missing __BIG_ENDIAN__ definition on some platform" 2172a8b6aad1 fix missing __BIG_ENDIAN__ definition on some platform 2173fde2904b Increase initial buffer size for VP8L Bit Writer. 2174a7d2ee39 Optimize cache estimate logic. 21757fb6095b Merge "dec_neon.c: add TransformAC3" 2176bf182e83 VP8LBitWriter: use a bit-accumulator 21773f40b4a5 Merge "MIPS: MIPS32r1: clang macro warning resolved" 21781684f4ee WebP Decoder: Mark some truncated bitstreams as invalid 2179acbedac4 MIPS: MIPS32r1: clang macro warning resolved 2180228e4877 dec_neon.c: add TransformAC3 2181393f89b7 Android.mk: avoid gcc-specific flags with clang 218232aeaf11 revamp VP8LColorSpaceTransform() a bit 21830c7cc4ca Merge "Don't dereference NULL, ensure HashChain fully initialized" 2184391316fe Don't dereference NULL, ensure HashChain fully initialized 2185926ff402 WEBP_SWAP_16BIT_CSP: remove code dup 21861d1cd3bb Fix decode bug for rgbA_4444/RGBA_4444 color-modes. 2187939e70e7 update AUTHORS file 21888934a622 cosmetics: *_mips32.c 2189dd438c9a MIPS: MIPS32r1: Optimization of some simple point-sampling functions. PATCH [6/6] 219053520911 Added support for calling sampling functions via pointers. 2191d16c6974 MIPS: MIPS32r1: Optimization of filter functions. PATCH [5/6] 219204336fc7 MIPS: MIPS32r1: Optimization of function TransformOne. PATCH [4/6] 219392d8fc7d MIPS: MIPS32r1: Optimization of function WebPRescalerImportRow. PATCH [3/6] 2194bbc23ff3 parse one row of intra modes altogether 2195a2f608f9 Merge "MIPS: MIPS32r1: Optimization of function WebPRescalerExportRow. [2/6]" 219688230854 MIPS: MIPS32r1: Optimization of function WebPRescalerExportRow. [2/6] 2197c5a5b028 decode mt+incremental: fix segfault in debug builds 21989882b2f9 always use fast-analysis for all methods. 2199000adac0 Merge "autoconf: update ax_pthread.m4" 22002d2fc37d update .gitignore 22015bf4255a Merge "Make it possible to avoid automagic dependencies" 2202c1cb1933 disable NEON for arm64 platform 220373a304e9 Make it possible to avoid automagic dependencies 22044d493f8d MIPS: MIPS32r1: Decoder bit reader function optimized. PATCH [1/6] 2205c741183c make WebPCleanupTransparentArea work with argb picture 22065da18552 add a decoding option to flip image vertically 220700c3c4e1 Merge "add man/vwebp.1" 22082c6bb428 add man/vwebp.1 2209ea59a8e9 Merge "Merge tag 'v0.4.0'" 22107574bed4 fix comments related to array sizes 22110b5a90fd dwebp.1: fix option formatting 2212effcb0fd Merge tag 'v0.4.0' 22137c76255d autoconf: update ax_pthread.m4 2214fff2a11b make -short work with -print_ssim, -print_psnr, etc. 221568e7901d update ChangeLog (tag: v0.4.0-rc1, tag: v0.4.0, origin/0.4.0, 0.4.0) 2216256e4333 update NEWS description with new general features 221729625340 Merge "gif2webp: don't use C99 %zu" into 0.4.0 22183b9f9dd0 gif2webp: don't use C99 %zu 2219b5b2e3c7 cwebp: fix metadata output w/lossy+alpha 2220ad26df1a makefile.unix: clean up libgif2webp_util.a 2221c3b45570 update Changelog 2222ca841121 Merge "bump version to 0.4.0" into 0.4.0 22238c524db8 bump version to 0.4.0 2224eec2398c update AUTHORS & .mailmap 2225b9bbf6a1 update NEWS for 0.4.0 2226c72e0811 Merge "dec/webp.c: don't wait for data before reporting w/h" 22275ad65314 dec/frame.c: fix formatting 2228f7fc4bc8 dec/webp.c: don't wait for data before reporting w/h 222966a32af5 Merge "NEON speed up" 223026d842eb NEON speed up 2231f307f98b Merge "webpmux: let -- stop parameter parsing" 2232fe051da7 Merge "README: add a section on gif2webp" 22336fd2bd62 Merge "manpage pedantry" 22344af19007 README: add a section on gif2webp 22356f36ade9 manpage pedantry 2236f9016cb9 README: update dwebp options 2237b4fa0a47 webpmux: let -- stop parameter parsing 2238a9a20acf gif2webp: Add a multi-threaded encode option 2239495bef41 fix bug in TrellisQuantize 2240605a7127 simplify __cplusplus ifdef 224133109f99 Merge "drop: ifdef __cplusplus checks from C files" 22427f9de0b9 Merge changes I994a5587,I8467bb71,I13b50688,I1e2c9c7b 22435459030b gif2webp: let -- stop parameter parsing 2244a4b0aa06 vwebp: let -- stop parameter parsing 224598af68fe cwebp: let -- stop parameter parsing 2246a33831e2 dwebp: let -- stop parameter parsing 224736301249 add some checks on error paths 2248ce4c7139 Merge "autoconf: add --disable-wic" 22495227d991 drop: ifdef __cplusplus checks from C files 2250f6453559 dwebp.1: fix typo 2251f91034f2 Merge "cwebp: print metadata stats when no output file is given" 2252d4934553 gif2webp: Backward compatibility for giflib version <= 4.1.3 22534c617d32 gif2webp: Disable output of ICC profile by default 225473b731fb introduce a special quantization function for WHT 225541c0cc4b Make Forward WHT transform use 32bit fixed-point calculation 2256a3359f5d Only compute quantization params once 225770490437 cwebp: print metadata stats when no output file is given 2258d513bb62 * fix off-by-one zthresh calculation * remove the sharpening for non luma-AC coeffs * adjust the bias a little bit to compensate for this 2259ad9dec0c Merge "cosmetics: dwebp: fix local function name format" 2260f737f037 Merge "dwebp: remove a dead store" 22613c3a70da Merge "makefile.unix: install binaries in $(DESTDIR)/bin/" 2262150b655f Merge "Android.mk: add some release compile flags" 2263dbebd33b cosmetics: dwebp: fix local function name format 226427749951 dwebp: remove a dead store 2265a01e04fe autoconf: add --disable-wic 22665009b227 makefile.unix: install binaries in $(DESTDIR)/bin/ 2267bab30fca Merge "fix -print_psnr / ssim options" 2268ebef7fb3 fix -print_psnr / ssim options 2269cb637855 Merge "fix bug due to overzealous check in WebPPictureYUVAToARGB()" 22708189885b Merge "EstimateBestFilter: use an int to iterate WEBP_FILTER_TYPE" 22714ad7d335 Android.mk: add some release compile flags 2272c12e2369 cosmetics: fix a few typos 22736f104034 fix bug due to overzealous check in WebPPictureYUVAToARGB() 22743f6c35c6 EstimateBestFilter: use an int to iterate WEBP_FILTER_TYPE 2275cc55790e Merge changes I8bb7a4dc,I2c180051,I021a014f,I8a224a62 2276c536afb5 Merge "cosmetics: fix some typos" 2277cbdd3e6e add a -dither dithering option to the decoder 2278e8124012 Updated iosbuild.sh for XCode 5.x 22794931c329 cosmetics: fix some typos 228005aacf77 mux: add some missing casts 2281617d9348 enc/vp8l: add a missing cast 228246db2865 idec: add some missing casts 2283b524e336 ErrorStatusLossless: correct return type 2284cb261f79 fix a descaling bug for vertical/horizontal U/V interpolation 2285bcb3955c Merge changes I48968468,I181bc736 228673f52133 gif2webp: Add a mixed compression mode 22876198715e demux: split chunk parsing from ParseVP8X 2288d2e3f4e6 demux: add a tail pointer for chunks 228987cffcc3 demux: cosmetics: s/has_frames/is_animation/ 2290e18e6677 demux: strictly enforce the animation flag 2291c4f39f4a demux: cosmetics: remove a useless break 229261cb884d demux: (non-exp) fail if the fragmented flag is set 2293ff379db3 few % speedup of lossless encoding 2294df3649a2 remove all disabled code related to P-frames 22956d0cb3de Merge "gif2webp: kmin = 0 should suppress key-frame addition." 229636555983 gif2webp: kmin = 0 should suppress key-frame addition. 22977708e609 Merge "detect flatness in blocks and favor DC prediction" 229806b1503e Merge "add comment about the kLevelsFromDelta[][] LUT generation" 22995935259c add comment about the kLevelsFromDelta[][] LUT generation 2300e3312ea6 detect flatness in blocks and favor DC prediction 2301ebc9b1ee Merge "VPLBitReader bugfix: Catch error if bit_pos > LBITS too." 230296ad0e0a VPLBitReader bugfix: Catch error if bit_pos > LBITS too. 2303a014e9c9 tune quantization biases toward higher precision 23041e898619 add helpful PrintBlockInfo() function 2305596a6d73 make use of 'extern' consistent in function declarations 2306c8d48c6e Merge "extract random utils to their own file util/random.[ch]" 230798aa33cf extract random utils to their own file util/random.[ch] 2308432a723e Merge "swig: add basic go bindings" 2309fab618b5 Merge "rename libwebp.i -> libwebp.swig" 2310e4e7fcd6 swig: add basic go bindings 2311d3408720 Merge "fast auto-determined filtering strength" 2312f8bfd5cd fast auto-determined filtering strength 2313ac0bf951 small clean-up in ExpandMatrix() 23141939607e rename libwebp.i -> libwebp.swig 231543148b6c filtering: precompute ilimit and hev_threshold 231618f992ec simplify f_inner calculation a little 2317241d11f1 add missing const 231886c0031e add a 'format' field to WebPBitstreamFeatures 2319dde91fde Demux: Correct the extended format validation 23205d6c5bd2 add entry for '-resize' option in cwebp's man 23217c098d18 Use some gamma-curve range compression when computing U/V average 23220b2b0504 Use deterministic random-dithering during RGB->YUV conversion 23238a2fa099 Add a second multi-thread method 23247d6f2da0 Merge "up to 20% faster multi-threaded decoding" 2325266f63ea Merge "libwebp.jar: build w/Java 1.6 for Android compat" 23260532149c up to 20% faster multi-threaded decoding 232738efdc2e Simplify the gif2webp tool: move the optimization details to util 2328de899516 libwebp.jar: build w/Java 1.6 for Android compat 2329cb221552 Decode a full row of bitstream before reconstructing 2330dca8a4d3 Merge "NEON/simple loopfilter: avoid q4-q7 registers" 23319e84d901 Merge "NEON/TransformWHT: avoid q4-q7 registers" 2332fc10249b NEON/simple loopfilter: avoid q4-q7 registers 23332f09d63e NEON/TransformWHT: avoid q4-q7 registers 233477585a2b Merge "use a macrofunc for setting NzCoeffs bits" 2335d155507c Merge "use HINT_GRAPH as image_hint for gif source" 23369c561646 Merge "only print GIF_DISPOSE_WARNING once" 233705879865 use HINT_GRAPH as image_hint for gif source 23380b28d7ab use a macrofunc for setting NzCoeffs bits 2339f9bbc2a0 Special-case sparse transform 234000125196 gif2webp: detect and flatten uniformly similar blocks 23410deaf0fa only print GIF_DISPOSE_WARNING once 23426a8c0eb7 Merge "small optimization in segment-smoothing loop" 2343f7146bc1 small optimization in segment-smoothing loop 23445a7533ce small gif2webp fix 23454df0c89e Merge changes Ic697660c,I27285521 23465b2e6bd3 Android.mk: add a dwebp target 2347f910a84e Android.mk: update build flags 234863f9aba4 special-case WHT transform when there's only DC 234980911aef Merge "7-8% faster decoding by rewriting GetCoeffs()" 2350606c4304 gif2webp: Improved compression for lossy animated WebP 2351fb887f7f gif2webp: Different kmin/kmax defaults for lossy and lossless 23522a981366 7-8% faster decoding by rewriting GetCoeffs() 235392d47e4c improve VP8L signature detection by checking the version bits too 23545cd43e43 Add -incremental option to dwebp 235554b8e3f6 webpmux: DisplayInfo(): remove unnecessary error checks. 235640ae3520 fix memleak in WebPIDelete() 2357d9662658 mux.h doc: WebPMuxGetFrame() can return WEBP_MUX_MEMORY_ERROR too. 23580e6747f8 webpmux -info: display dimensions and has_alpha per frame 2359d78a82c4 Sanity check for underflow 23608498f4bf Merge "remove -Wshadow warnings" 2361e89c6fc8 Avoid a potential memleak 23623ebe1757 Merge "break down the proba 4D-array into some handy structs" 23636a44550a break down the proba 4D-array into some handy structs 23642f5e8934 remove -Wshadow warnings 2365bf3a29b3 Merge "add proper WEBP_HAVE_GIF and WEBP_HAVE_GL flags" 23662b0a7593 Merge "fix some warnings from static analysis" 236722dd07ce mux.h: Some doc corrections 236879ff0346 add proper WEBP_HAVE_GIF and WEBP_HAVE_GL flags 2369d51f45f0 fix some warnings from static analysis 2370d134307b fix conversion warning on MSVC 2371d538cea8 gif2webp: Support a 'min' and 'max' key frame interval 237280b54e1c allow search with token buffer loop and fix PARTITION0 problem 2373b7d4e042 add VP8EstimateTokenSize() 237410fddf53 enc/quant.c: silence a warning 2375399cd456 Merge "fix compile error on ARM/gcc" 23769f24519e encoder: misc rate-related fixes 2377c663bb21 Merge "simplify VP8IteratorSaveBoundary() arg passing" 2378fa46b312 Demux.h: Correct a method name reference 2379f8398c9d fix compile error on ARM/gcc 2380f691f0e4 simplify VP8IteratorSaveBoundary() arg passing 238142542be8 up to 6% faster encoding with clang compiler 238293402f02 multi-threaded segment analysis 23837e2d6595 Merge "remove the PACK() bit-packing tricks" 2384c13fecf9 remove the PACK() bit-packing tricks 23852fd091c9 Merge "use NULL for lf_stats_ testing, not bool" 2386b11c9d62 dwebp: use default dct_method 23874bb8465f Merge "(de)mux.h: wrap pseudo-code in /* */" 2388cfb56b17 make -pass option work with token buffers 23895416aab4 (de)mux.h: wrap pseudo-code in /* */ 239035dba337 use NULL for lf_stats_ testing, not bool 2391733a7faa enc->Iterator memory cleanup 2392e81fac86 Add support for "no blend" in webpmux binary 23933b80bc48 gif2webp: Separate out each step into a method 2394bef7e9cc Add doc precision about demux object keeping pointers to data. 239561405a14 dwebp: enable stdout output with WIC 23966eabb886 Merge "Animated WebP: add "do no blend" option to spec" 2397be20decb fix compilation for BITS 24 2398e58cc137 Merge "dwebp: s/unsigned char/uint8_t/" 239972501d43 dwebp: s/unsigned char/uint8_t/ 24002c9633e8 Merge "gif2webp: Insert independent frames at regular intervals." 2401f0d6a14b gif2webp: Insert independent frames at regular intervals. 2402b25a6fbf yuv.h: fix indent 2403ede3602e Merge "cosmetics: fix indent" 24043a65122a dwebp: fix stdout related output 2405388a7249 cosmetics: fix indent 24064c7322c8 Merge "dsp: msvc compatibility" 2407d50c7e32 Merge "5-7% faster SSE2 versions of YUV->RGB conversion functions" 2408b8ab7847 Merge "simplify upsampler calls: only allow 'bottom' to be NULL" 2409df6cebfa 5-7% faster SSE2 versions of YUV->RGB conversion functions 2410ad6ac32d simplify upsampler calls: only allow 'bottom' to be NULL 2411a5e8afaf output to stdout if file name is "-" 2412f358450f dsp: msvc compatibility 241343a7c8eb Merge "cosmetics" 24144c5f19c1 Merge "bit_reader.h: cosmetics" 2415f72fab70 cosmetics 241614dd5e78 fix const-ness 2417b20aec49 Merge "Support for 'do not blend' option in vwebp" 2418dcf65222 Support for 'do not blend' option in vwebp 2419d5bad033 Animated WebP: add "do no blend" option to spec 2420a2f5f73d Merge "Support for "Do not blend" in mux and demux libraries" 2421e081f2f3 Pack code & extra_bits to Struct (VP8LPrefixCode). 24226284854b Support for "Do not blend" in mux and demux libraries 2423f486aaa9 Merge "slightly faster ParseIntraMode" 2424d1718632 slightly faster ParseIntraMode 24253ceca8ad bit_reader.h: cosmetics 242669257f70 Create LUT for PrefixEncode. 2427988b7084 add WebPWorkerExecute() for convenient bypass 242806e24987 Merge "VP8EncIterator clean-up" 2429de4d4ad5 VP8EncIterator clean-up 24307bbe9529 Merge "cosmetics: thread.c: drop a redundant comment" 2431da411485 cosmetics: thread.c: drop a redundant comment 2432feb4b6e6 thread.h: #ifdef when checking WEBP_USE_THREAD 24338924a3a7 thread.c: drop WebPWorker prefix from static funcs 24341aed8f2a Merge "fix indent" 24354038ed15 fix indent 24361693fd9b Demux: A new state WEBP_DEMUX_PARSE_ERROR 24378dcae8b3 fix rescaling-with-alpha inaccuracy 243811249abf Merge changes I9b4dc36c,I4e0eef4d 243952508a1f Mux: support parsing unknown chunks within a frame/fragment. 244005db0572 WebPMuxSetChunk: remove unused variable 24418ba1bf61 Stricter check for presence of alpha when writing lossless images 2442a03c3516 Demux: WebPIterator now also denotes if the frame has alpha. 24436df743a3 Decoder: handle fragments case correctly too. 2444faa4b07e Support for unknown chunks in mux library 24457d60bbc6 Speed up HashChainFindCopy function. 244666740140 Speedup Alpha plane encoding. 2447b7346a1e 0.1 % speedup to decoding 2448c606182e webp-container-spec: Tighten language added by last 2449a34a5029 pngdec: output error messages from libpng 2450e84c625d Merge "Detect canvas and image size mismatch in decoder." 2451f626fe2e Detect canvas and image size mismatch in decoder. 2452f5fbdee0 demux: stricter image bounds check 245330c8158a add extra assert in Huffman decode code 24548967b9f3 SSE2 for lossless decoding (critical) functions. 2455699d80ea Jump-lookup for Huffman coding 2456c34307ab fix some VS9 warnings about type conversion 2457eeada35c pngdec: add missing include 245854b65108 gif2webp: If aligning to even offsets, extra pixels should be transparent 24590bcf5ce3 Merge "remove a malloc() in case we're using only FILTER_NONE for alpha" 24602c07143b remove a malloc() in case we're using only FILTER_NONE for alpha 2461a4d5f59d Faster lossless decoding 2462fd53bb75 Merge "alternate LUT-base reverse-bits code" 2463d1c166ef Merge "Container spec: a clarification on background color." 2464fdb91779 Rename a method 24655e967532 Container spec: a clarification on background color. 246630e77d0f Merge branch '0.3.0' 24671b631e29 alternate LUT-base reverse-bits code 246824cc307a ~20% faster lossless decoding 2469313d853f Speedup for decoding lossless WebP photographs: 247024ee098a change the bytes_per_pixels_ field into more evocative use_8b_decode 24712a04b034 update ChangeLog (tag: v0.3.1-rc2, tag: v0.3.1) 24727288950b Regression fix for alpha channels using color cache: 24732e377b53 wicdec: silence a format warning 2474ad9e42a6 muxedit: silence some uninitialized warnings 24753307c163 Don't set alpha-channel to 0xff for alpha->green uplift 24765130770c Merge "wicdec: silence a format warning" 2477a37eff47 Regression fix for alpha channels using color cache: 2478241cf99b Merge "muxedit: silence some uninitialized warnings" 2479c8f9c84d Regression fix for alpha unfiltering: 248014cd5c6c muxedit: silence some uninitialized warnings 2481a368db81 dec/vp8l: quiet vs9 x64 type conversion warning 2482ffae9f31 wicdec: silence a format warning 24838cf0701e Alpha encoding: never filter in case of NO_COMPRESSION 2484825e73b1 update ChangeLog (tag: v0.3.1-rc1) 2485abf6f691 update NEWS 24865a92c1a5 bump version to 0.3.1 248786daf77c store top Y/U/V samples in packed fashion 248867bc353e Revert "add WebPBlendAlpha() function to blend colors against background" 2489068db59e Intertwined decoding of alpha and RGB 249038cc0114 Simplify forward-WHT + SSE2 version 24913fa595a5 Support decoding upto given row in DECODE_DATA_FUNC 2492520f005f DequantizeLevels(): Add 'row' and 'num_rows' args 249347374b82 Alpha unfilter for given set of rows 2494f32097e0 probe input file and quick-check for WebP format. 2495a2aed1d0 configure: improve gl/glut library test 2496c7e89cbb update copyright text 2497a00380d2 configure: remove use of AS_VAR_APPEND 2498a94a88dd fix EXIF parsing in PNG 2499a71e5d84 add doc precision for WebPPictureCopy() and WebPPictureView() 25008287012e remove datatype qualifier for vmnv 2501e1908430 fix a memory leak in gif2webp 25020b18b9ee fix two minor memory leaks in webpmux 2503db5095d5 remove some cruft from swig/libwebp.jar 2504850e956f README: update swig notes 2505bddd9b0a swig/python: add minimal documentation 2506d573a8d5 swig: add python encode support 25076b931875 swig/java: reduce wrapper function code duplication 25086fe536f4 swig/java: rework uint8_t typemap 2509a2ea4643 Fix the bug in ApplyPalette. 25107bb28d2a webp/lossless: fix big endian BGRA output 2511f036d4bf Speed up ApplyPalette for ARGB pixels. 25128112c8cf remove some warnings: 2513cc128e0b Further reduce memory to decode lossy+alpha images 251407db70d2 fix for big-endian 2515eda8a7de gif2webp: Fix signed/unsigned comparison mismatch 251631f346fe Makefile.vc: fix libwebpdemux dll variable typo 25176c76d28e swig: add python (decode) support 2518b4f5bb6c swig: cosmetics 2519498d4dd6 WebP-Lossless encoding improvements. 252026e72442 swig: ifdef some Java specific code 25218ecec686 configure: add warning related flags 2522e676b043 configure: add GLUT detection; build vwebp 2523b0ffc437 Alpha decoding: significantly reduce memory usage 252420aa7a8d configure: add --enable-everything 2525b8307cc0 configure.ac: add some helper macros 2526980e7ae9 Remove the gcc compilation comments 25277f25ff99 gif2webp: Fix ICC and XMP support 2528d8e53211 Add missing name to AUTHORS 252911edf5e2 Demux: Fix a potential memleak 2530c7b92184 don't forward declare enums 25317a650c6a prevent signed int overflow in left shift ops 253231bea324 add precision about dynamic output reallocation with IDecoder 2533c22877f7 Add incremental support for extended format files 25345051245f Makefile.vc: have 'all' target build everything 25358191deca Makefile.vc: flags cleanup 2536b9d74735 Makefile.vc: drop /FD flag 25375568dbcf update gitignore 2538f4c7b654 WebPEncode: An additional check. Start VP8EncLoop/VP8EncTokenLoop only if VP8EncStartAlpha succeeded. 25391fb04bec pngdec: Avoid a double-free. 2540dcbb1ca5 add WebPBlendAlpha() function to blend colors against background 2541bc9f5fbe configure.ac: add AM_PROG_AR for automake >= 1.12 2542bf867bf2 Tuned cross_color parameter (step) for lower qual 254390e2ec5a Merge "probe input file and quick-check for WebP format." 25447180d7ff Merge "update copyright text" 2545830f72b7 probe input file and quick-check for WebP format. 25462ccf58d6 configure: improve gl/glut library test 2547d640614d update copyright text 2548c2113ad4 Merge "configure: remove use of AS_VAR_APPEND" 25499326a56f configure: remove use of AS_VAR_APPEND 2550ea63d619 fix a type warning on VS9 x86 2551bec11092 fix EXIF parsing in PNG 2552b6e65f3d Merge "fix warnings for vs9 x64" 2553438946dc fix warnings for vs9 x64 2554f4710e3b collect macroblock reconstruction data in VP8MBData struct 255523d28e21 add doc precision for WebPPictureCopy() and WebPPictureView() 2556518f2cd7 cosmetics: gif2webp: fix indent 2557af358e68 Merge "remove datatype qualifier for vmnv" 25583fe91635 remove datatype qualifier for vmnv 2559764fdffa fix a memory leak in gif2webp 25603e59a74d fix two minor memory leaks in webpmux 256147b9862f Merge "README: update swig notes" 2562325d15ff remove some cruft from swig/libwebp.jar 25634a7627c2 README: update swig notes 25645da81e33 Merge "swig/python: add minimal documentation" 2565f39e08f2 Merge "swig: add python encode support" 25666ca4a3e3 Merge "swig/java: reduce wrapper function code duplication" 25678f8702b0 Merge "swig/java: rework uint8_t typemap" 256891413be2 reduce memory for VP8MB and remove bitfields use 25697413394e Fix the memory leak in ApplyFilters. 25702053c2cf simplify the alpha-filter testing loop 2571825b64db swig/python: add minimal documentation 257214677e11 swig: add python encode support 2573a5c297c8 swig/java: reduce wrapper function code duplication 2574ad4a367d swig/java: rework uint8_t typemap 25750d25876b use uint8_t for inv_palette[] 2576afa3450c Fix the bug in ApplyPalette. 25772d6ac422 Merge "webp/lossless: fix big endian BGRA output" 25782ca83968 webp/lossless: fix big endian BGRA output 2579742110cc Speed up ApplyPalette for ARGB pixels. 25802451e47d misc code cleanup 258183db4043 Merge "swig: add python (decode) support" 2582eeeea8b5 Merge "swig: cosmetics" 2583d5f9b8f3 Merge "libwebp: fix vp8 encoder mem alloc offsetting" 2584d8edd835 libwebp: fix vp8 encoder mem alloc offsetting 25858983b83e remove use of bit-fields in VP8FInfo 258687a4fca2 remove some warnings: 2587ba8f74e2 Merge "fix for big-endian" 2588a65067fa Merge "Further reduce memory to decode lossy+alpha images" 258964c84486 Further reduce memory to decode lossy+alpha images 2590332130b9 Mux: make a few methods static 259144370617 fix for big-endian 25925199eab5 Merge "add uncompressed TIFF output support" 2593a3aede97 add uncompressed TIFF output support 2594f975b67f Merge "gif2webp: Fix signed/unsigned comparison mismatch" 25955fbc734b Merge "GetFeatures: Detect invalid VP8X/VP8/VP8L data" 2596d5060c87 Merge "mux.h: A comment fix + some consistency fixes" 2597352d0dee GetFeatures: Detect invalid VP8X/VP8/VP8L data 25983ef79fef Cosmetic: "width * height" 2599043e1ae4 gif2webp: Fix signed/unsigned comparison mismatch 26005818cff7 mux.h: A comment fix + some consistency fixes 26011153f888 Merge "swig: ifdef some Java specific code" 26023eeedae1 Makefile.vc: fix libwebpdemux dll variable typo 2603f980faf4 swig: add python (decode) support 26047f5f42bb swig: cosmetics 26058eae188a WebP-Lossless encoding improvements. 2606c7247c4c swig: ifdef some Java specific code 26074cb234d5 Merge "Mux: make ValidateForSingleImage() method static" 2608ed6f5308 Merge "Add GetCanvasSize() method to mux" 26091d530c9a Mux: make ValidateForSingleImage() method static 2610bba4c2b2 configure: add warning related flags 2611fffefd18 Add GetCanvasSize() method to mux 2612732da8d0 Merge "configure: add GLUT detection; build vwebp" 26130e513f7a configure: add GLUT detection; build vwebp 261455d1c150 Merge "Alpha decoding: significantly reduce memory usage" 261513d99fb5 Merge "configure: add --enable-everything" 26162bf698fe Merge "configure.ac: add some helper macros" 2617edccd194 Alpha decoding: significantly reduce memory usage 26183cafcc9a configure: add --enable-everything 26194ef14477 configure.ac: add some helper macros 2620a4e1cdbb Remove the gcc compilation comments 26216393fe4b Cosmetic fixes 26229c4ce971 Simplify forward-WHT + SSE2 version 2623878b9da5 fix missed optim 262400046171 VP8GetInfo(): Check for zero width or height. 26259bf31293 align VP8Encoder::nz_ allocation 26265da165cf fix CheckMode() signature 26270ece07dc Merge "explicitly pad bitfields to 32-bits" 26289dbc9d19 explicitly pad bitfields to 32-bits 26295369a80f Merge "prevent signed int overflow in left shift ops" 263070e39712 Merge "cosmetics: remove unnecessary ';'s" 2631d3136ce2 Merge "don't forward declare enums" 2632b26e5ad5 gif2webp: Fix ICC and XMP support 263346089b20 Add missing name to AUTHORS 263494328d64 Demux: Fix a potential memleak 263596e948d7 don't forward declare enums 2636f4f90880 prevent signed int overflow in left shift ops 26370261545e cosmetics: remove unnecessary ';'s 26387ebdf110 Merge "Fix few missing comparisons to NULL" 26391579989e Fix few missing comparisons to NULL 2640ea1b21cf Cleaned up VP8GetHeaders() so that it parses only frame header 2641b66caee4 dwebp: add support for BMP output 2642ff885bfe add precision about dynamic output reallocation with IDecoder 264379241d5a Merge "Makefile.vc: have 'all' target build everything" 2644ac1c729b Merge "Makefile.vc: flags cleanup" 2645118a055c Merge "Makefile.vc: drop /FD flag" 2646ecad0109 Merge "update gitignore" 2647a681b4f4 Rename PRE_VP8 state to WEBP_HEADER 2648ead4d478 Add incremental support for extended format files 264969d0f926 Makefile.vc: have 'all' target build everything 265052967498 Makefile.vc: flags cleanup 2651c61baf0c Makefile.vc: drop /FD flag 26523a15125d update gitignore 26535167ca47 Merge "WebPEncode: An additional check. Start VP8EncLoop/VP8EncTokenLoop only if VP8EncStartAlpha succeeded." 265467708d67 WebPEncode: An additional check. Start VP8EncLoop/VP8EncTokenLoop only if VP8EncStartAlpha succeeded. 2655b68912af pngdec: Avoid a double-free. 265682abbe12 Merge "configure.ac: add AM_PROG_AR for automake >= 1.12" 2657e7d9548c add WebPBlendAlpha() function to blend colors against background 2658ed4dc717 configure.ac: add AM_PROG_AR for automake >= 1.12 2659df4a406d Merge branch '0.3.0' 26601e0d4b8c Update ChangeLog (tag: v0.3.0-rc7, tag: v0.3.0) 2661d52b405d Cosmetic fixes 26626cb4a618 misc style fix 266368111ab0 add missing YUVA->ARGB automatic conversion in WebPEncode() 2664e9a7990b Cosmetic fixes 2665403bfe82 Container spec: Clarify frame disposal 26662aaa423b Merge "add missing YUVA->ARGB automatic conversion in WebPEncode()" 266707d87bda add missing YUVA->ARGB automatic conversion in WebPEncode() 2668142c4629 misc style fix 26693e7a13a0 Merge "Container spec: clarify the background color field" into 0.3.0 267014af7745 container doc: add a note about the 'ANMF' payload 2671cc635efa Container spec: clarify the background color field 2672e3e33949 container doc: move RIFF description to own section 26734299f398 libwebp/mux: fix double free 267433f9a692 Merge "demux: keep a frame tail pointer; used in AddFrame" into 0.3.0 2675a2a7b959 use WebPDataCopy() instead of re-coding it. 26766f18f12f demux: keep a frame tail pointer; used in AddFrame 2677e5af49e9 add doc precision about WebPParseHeaders() return codes 2678db46daab Merge "Makefile.vc: fix dynamic builds" into 0.3.0 267953c77afc Merge "gif2webp: Bgcolor fix for a special case" into 0.3.0 2680a5ebd143 gif2webp: Bgcolor fix for a special case 26816378f238 Merge "vwebp/animation: fix background dispose" into 0.3.0 26823c8eb9a8 fix bad saturation order in QuantizeBlock 268304c7a2ec vwebp/animation: fix background dispose 268481a50695 Makefile.vc: fix dynamic builds 26855f25c396 update ChangeLog (tag: v0.3.0-rc6) 268614d42af2 examples: don't use C99 %zu 26875ccf1fe5 update ChangeLog 26882560c243 update NEWS 2689f43bafc3 Merge changes Iecccb09c,If5ee9fd2,I3e181ce4 into 0.3.0 2690a788644f dwebp: warn when decoding animated webp's 2691302efcdb Decode: return more meaningful error for animation 2692ad452735 WebPBitstreamFeatures: add has_animation field 2693783dfa49 disable FRGM decoding for good in libwebpmux 26944b956be0 Update ChangeLog 2695ad8b86d7 update NEWS 26963e084f63 Merge "demux cosmetics: comments/rename internal function" into 0.3.0 2697d3f8c621 Merge "move WebPFeatureFlags declaration" into 0.3.0 26987386fe50 Merge "libwebp{demux,mux}: install mux_types.h" into 0.3.0 2699d6cd4e90 Merge "bump decode abi" into 0.3.0 270017f8da5c bump decode abi 270197684ae2 Merge "add doc precision about WebPDemuxPartial()" into 0.3.0 2702f933fd2a move WebPFeatureFlags declaration 2703289bc47b libwebp{demux,mux}: install mux_types.h 2704224e8d46 add doc precision about WebPDemuxPartial() 27054c18e80c demux cosmetics: comments/rename internal function 27067cfd1bf1 update AUTHORS 2707401f7b85 Merge "speed-up lossless (~3%) with ad-hoc histogram cost evaluation" into 0.3.0 27081fc8ffca Merge "makefile.unix: dist related changes" into 0.3.0 27098a89c6ed Merge changes I466c377f,Ib761ebd3,I694857fc into 0.3.0 2710f4ffb2d5 speed-up lossless (~3%) with ad-hoc histogram cost evaluation 2711723847d5 gif2webp: only write error messages to stderr 2712701b9e2a makefile.unix: dist related changes 2713bb85b437 Merge "update NEWS" into 0.3.0 271459423a24 gif2webp: fix crash on open failure with libgif5 27159acb17de gif2webp: silence a unused param warning 27167d9fdc23 Merge "README updates" into 0.3.0 27175621934e Merge "build: fix install race on shared headers" into 0.3.0 271870809d89 Merge "bump version to 0.3.0" into 0.3.0 2719d851cd1d demux: make the parse a bit more strict 272028bb4107 update NEWS 2721cef93882 bump version to 0.3.0 27229048494d build: fix install race on shared headers 27231e67e8ef README updates 272442b611a4 Merge "configure: drop experimental from mux/demux" into 0.3.0 2725096a8e32 Merge "vwebp: add color profile support" into 0.3.0 2726ddfee5dc vwebp: add color profile support 27270d6927d3 Merge "Mark fragment options as experimental in webpmux" into 0.3.0 27285dbd4030 Mark fragment options as experimental in webpmux 2729a0a6648c configure: drop experimental from mux/demux 2730ee65bad8 Merge "add support for BITS > 32" into 0.3.0 2731744930db add support for BITS > 32 27327dd288f0 cwebp: fix build 273319a8dd01 Merge "Makefile.vc: add vwebp.exe target" into 0.3.0 273450eeddad Merge "examples: normalize icc related program arguments" into 0.3.0 2735757f637f Merge "Makefile.vc: add libwebpdecoder target" into 0.3.0 2736b65c4b7c Makefile.vc: add libwebpdecoder target 2737f8db7b4a Merge "vwebp: replace doubles w/floats where appropriate" into 0.3.0 2738d99aa56f Makefile.vc: add vwebp.exe target 2739013023e7 vwebp: replace doubles w/floats where appropriate 27409b3db894 README.mux: add version reference 27417b6a26cf Merge "cwebp: output metadata statistics" into 0.3.0 2742d8dc72a0 examples: normalize icc related program arguments 27437bfc9056 Merge "make alpha unfilter work in-place" into 0.3.0 27440037b2d2 Merge "add LUT-free reference code for YUV->RGB conversion." into 0.3.0 2745166bf744 Merge "demux: disable fragment parsing" into 0.3.0 2746126974b4 add LUT-free reference code for YUV->RGB conversion. 27470aef3ebd make alpha unfilter work in-place 274814ef5005 Merge "Remove 'status: experimental' from container spec" into 0.3.0 2749d40c98e1 Merge "webpmux binary: tiny style fix" into 0.3.0 27500bc42689 cwebp: output metadata statistics 2751bc039803 Merge "autoconf: normalize experimental define" into 0.3.0 2752d1e21b13 Remove 'status: experimental' from container spec 27537681bb96 webpmux binary: tiny style fix 2754a3dd3d0f avoid installing example_util.h 2755252320e2 demux: disable fragment parsing 2756537bde05 autoconf: normalize experimental define 27575e338e0b Merge changes I33e8a613,I8e8a7b44 into 0.3.0 2758d9d0ea1b Merge changes If21e3ec7,I991fc30b into 0.3.0 2759627f5ca6 automake: add reference to libwebp for mux/demux 2760eef73d07 don't consolidate proba stats too often 276105ec4cc2 libwebp{,decoder}.pc: add pthread flags 27621bfcf5bf add libwebpmux.pc 276326ca843d add libwebpdemux.pc 276469e25906 Merge "Tune Lossless compression for lower qualities." 27650478b5d2 Tune Lossless compression for lower qualities. 276639f7586f add a mention of parallel alpha encoding in the NEWS 27675a21d967 Merge "1.5x-2x faster encoding for method 3 and up" 27689bfbdd14 1.5x-2x faster encoding for method 3 and up 276927dc741b Correct frame options order in README.mux 2770be2fd173 Mux: fix a scenario with bad ANMF/FRGM size 277119eb012c Merge "Demux: Add option to get frame count using GetI()" 27727368b8cb Merge "WebPGetFeatures() out of if condition for clarity." 2773f604c9a4 Merge "fix windows build" 2774153f94e8 fix windows build 2775847b4924 Merge "vwebp: use magenta for 'i'nfo display" 277625ea46bd Merge "vwebp: add keyboard shortcuts to help output" 2777bea7ccaf vwebp: use magenta for 'i'nfo display 27788fab161a webpmux: correct -frame param order in help output 277903cc23d6 vwebp: add keyboard shortcuts to help output 2780068eba8d Demux: Add option to get frame count using GetI() 2781988b8f56 WebPGetFeatures() out of if condition for clarity. 27826933d910 Merge "gif2webp: Be lenient about background color index." 27834d0f7c55 Merge "WebPGetFeatures() behavior change:" 2784fdeeb01d gif2webp: Be lenient about background color index. 2785ad250320 Merge "multi-threaded alpha encoding for lossy" 27864e32d3e1 Merge "fix compilation of token.c" 2787f817930a multi-threaded alpha encoding for lossy 278888050351 fix compilation of token.c 2789fc816219 code using the actual values for num_parts_, not the ones from config 279072655350 Merge "move the config check from .c to .h" 2791dd9e76f7 move the config check from .c to .h 2792956b217a WebPGetFeatures() behavior change: 2793df02e4ce WebPDemuxGetI behavior change: 2794633c004d Merge "rebalance method tools (-m) for methods [0..4]" 279558ca6f65 rebalance method tools (-m) for methods [0..4] 27967648c3cc Merge "describe rd-opt levels introduce VP8RDLevel enum" 279767fb1003 Merge "autoconf: enable silent-rules by default" 2798a5042a32 GetVersion() methods for mux and demux 27995189957e describe rd-opt levels introduce VP8RDLevel enum 28004e094ace autoconf: enable silent-rules by default 2801b7eaa85d inline VP8LFastLog2() and VP8LFastSLog2 for small values 28025cf7792e split quant_levels.c into decoder and encoder version 2803e5d3ffe2 Merge "Update code example in README.mux" 2804ac5a9156 Update code example in README.mux 280538a91e99 Add example code snippet for demux API 28065f557f3c README.mux: add info about Demux API and vwebp 2807c0ba0903 backward_references: avoid signed integer overflow 2808943386db disable SSE2 for now 28099479fb7d lossless encoding speedup 2810ec2030a8 merge two lines together 2811b67956c0 Merge "Remove ReadOneBit() and ReadSymbolUnsafe()" 28121667bded Remove ReadOneBit() and ReadSymbolUnsafe() 28133151669b wicdec + dwebp cosmetics: normalize formatting 281492668da6 change default filtering parameters: * type is now 'strong' * strength is now '60' 2815b7490f85 introduce WEBP_REFERENCE_IMPLEMENTATION compile option 281633838857 faster decoding (3%-6%) 28175c3e381b Merge "add a -jpeg_like option" 2818c2311046 remove unused declaration of VP8Zigzag 281936152957 Merge "wicdec: add alpha support for paletted formats" 2820c9f16490 wicdec: add alpha support for paletted formats 28211262f81e Merge "wicdec: silence some warnings" 2822e7ea61eb wicdec: silence some warnings 282323c0f354 fix missing intptr_t->int cast for MSVC 2824e895059a add a -jpeg_like option 28251f803f64 Merge "Tune alpha quality mapping to more reasonable values." 28261267d498 Tune alpha quality mapping to more reasonable values. 2827043076e2 Merge "speed-up lossless in BackwardTrace" 2828f3a44dcd remove one malloc from TraceBackwards() 28290fc1a3a0 speed-up lossless in BackwardTrace 28307c732e59 cwebp: centralize WebPCleanupTransparentArea() 28317381254e Merge "wicdec: add ICC profile extraction" 2832e83ff7de wicdec: add ICC profile extraction 2833146c6e3b Merge "cosmetics: pngdec: normalize default label location" 2834a8f549d7 Merge "manpages: italicize option parameters" 2835e118db83 Merge "encode.h: note the need to free() WebPMemoryWriter" 28361dfee6db cosmetics: pngdec: normalize default label location 283714c38200 manpages: italicize option parameters 28387defbfad encode.h: note the need to free() WebPMemoryWriter 283988d382a0 cwebp: cleanup after memory_writer 284012d6cecf fix extra space in dwebp.1 man 2841b01681a9 Fix for demuxer frame iteration: 284256c12aa6 Demuxer creation fix: 284366c810bc add a -yuv option to dwebp (very similar to -pgm) 2844841a3ba5 Merge "Remove -Wshadow warnings." 28458fd02527 Merge "upsampling_neon.c: fix build" 28466efed268 Remove -Wshadow warnings. 284760904aa6 Merge "allow WebPINewRGB/YUVA to be passed a NULL output buffer." 2848b7adf376 allow WebPINewRGB/YUVA to be passed a NULL output buffer. 284927f8f742 upsampling_neon.c: fix build 285006b9cdf1 gitignore: add IOS related directories 2851f112221e Merge "Fix more comments for iobuild.sh" 2852fe4d25dd Fix more comments for iobuild.sh 28531de3e252 Merge "NEON optimised yuv to rgb conversion" 2854090b708a NEON optimised yuv to rgb conversion 2855daa06476 Merge "Add ios build script for building iOS library." 285679fe39e2 Add ios build script for building iOS library. 2857126c035f remove some more -Wshadow warnings 2858522e9d61 Merge "cwebp: enable '-metadata'" 285976ec5fa1 cwebp: enable '-metadata' 2860aeb91a9d Merge "cosmetics: break a few long lines" 2861be7c96b0 cosmetics: break a few long lines 2862cff8ddb6 Merge "add libwebpdecoder.pc" 286393148ab8 Merge "libwebp.pc.in: detab" 28646477f955 Merge "Makefile.vc: normalize path separator" 2865bed1ed7c add libwebpdecoder.pc 286646168b2d libwebp.pc.in: detab 2867a941a346 Fixed few nits in the build files. 2868dd7a49b2 Makefile.vc: normalize path separator 28699161be86 Merge "cwebp: extract WIC decoding to its own module" 287008e7c58e Merge "Provide an option to build decoder library." 28710aeba528 Provide an option to build decoder library. 2872757ebcb1 catch malloc(0)/calloc(0) with an assert 2873152ec3d2 Merge "handle malloc(0) and calloc(0) uniformly on all platforms" 2874a452a555 cwebp: extract WIC decoding to its own module 28752b252a53 Merge "Provide option to swap bytes for 16 bit colormodes" 287694a48b4b Provide option to swap bytes for 16 bit colormodes 287742f8f934 handle malloc(0) and calloc(0) uniformly on all platforms 28788b2152c5 Merge "add an extra assert to check memory bounds" 28790d19fbff remove some -Wshadow warnings 2880cd22f655 add an extra assert to check memory bounds 28818189feda Merge "Add details and reference about the YUV->RGB conversion" 28821d2702b1 Merge "Formatting fixes in lossless bitstream spec" 28838425aaee Formatting fixes in lossless bitstream spec 2884a556cb1a Add details and reference about the YUV->RGB conversion 2885d8f21e0b add link to SSIM description on Wikipedia 288618e9167e Merge "WebP-lossless spec clarifications:" 288798e25b9b Merge "cwebp: add -metadata option" 2888f01c2a53 WebP-lossless spec clarifications: 2889f4a97970 Merge "Disto4x4 and Disto16x16 in NEON" 289047b7b0ba Disto4x4 and Disto16x16 in NEON 28917eaee9f1 cwebp: add -metadata option 289236c52c2c tiffdec: use toff_t for exif ifd offset 28937c8111e4 Merge "cwebp/tiffdec: add TIFF metadata extraction" 2894e6409adc Remove redundant include from dsp/lossless code. 28951ab5b3a7 Merge "configure: fix --with-gifincludedir" 289603c749eb configure: fix --with-gifincludedir 28978b650635 multiple libgif versions support for gif2webp 2898476e293f gif2webp: Use DGifOpenFileName() 2899b50f277b tiffdec: correct format string 29002b9048e3 Merge "tiffdec: check error returns for width/height" 2901a1b5a9a3 Merge "cwebp/tiff: use the first image directory" 2902079423f5 tiffdec: check error returns for width/height 2903d62824af Merge "cwebp/jpegdec: add JPEG metadata extraction" 290403afaca4 Merge "cwebp: add PNG metadata extraction" 29052c724968 cwebp/jpegdec: add JPEG metadata extraction 2906dba64d91 cwebp: add PNG metadata extraction 29071f075f89 Lossless spec corrections/rewording/clarifications 29082914ecfd cwebp/tiffdec: add TIFF metadata extraction 2909d82a3e33 More corrections/clarifications in lossless spec: 2910bd002557 cwebp/tiff: use the first image directory 2911df7aa076 Merge "Cleanup around jpegdec" 29120f57dcc3 decoding speed-up (~1%) 2913bcec339b Lossless bitstream clarification: 29146bf20874 add examples/metadata.c 2915207f89c0 Merge "configure: add libwebpdemux status to summary" 29161bd287a6 Cleanup around jpegdec 291791455679 Merge "cosmetics: use '== 0' in size checks" 2918d6b88b76 cosmetics: use '== 0' in size checks 2919d3dace2f cosmetics: jpegdec 29202f69af73 configure: add libwebpdemux status to summary 29211c1c5646 cwebp: extract tiff decoding to its own module 29226a871d66 cwebp: extract jpeg decoding to its own module 29232ee228f9 cwebp: extract png decoding to its own module 29244679db00 Merge "cwebp: add metadata framework" 292563aba3ae cwebp: add metadata framework 2926931bd516 lossless bitstream: block size bits correction 2927e4fc4c1c lossless bitstream: block size bits correction 2928d65ec678 fix build, move token.c to src/enc/ 2929657f5c91 move token buffer to its own file (token.c) 2930c34a3758 introduce GetLargeValue() to slim-fast GetCoeffs(). 2931d5838cd5 faster non-transposing SSE2 4x4 FTransform 2932f76191f9 speed up GetResidualCost() 2933ba2aa0fd Add support for BITS=24 case 29342e7f6e8e makefile.unix: Dependency on libraries 2935dca84219 Merge "Separate out mux and demux code and libraries:" 293623782f95 Separate out mux and demux code and libraries: 2937bd56a01f configure: add summary output 293890e5e319 dwebp manual: point to webpmux, gif2webp. 2939540790ca gif2webp.c: add a note about prerequisites 2940d1edf697 cwebp man page: meaning of '-q' for lossy/lossless 294179efa1d0 Add man page for gif2webp utility 29422243e40c Merge "gif2webp build support with autoconf tools" 2943c40efca1 gif2webp build support with autoconf tools 29446523e2d4 WebP Container: 29454da788da Merge "simplify the fwd transform" 294642c3b550 simplify the fwd transform 294741a6ced9 user GLfloat instead of float 2948b5426119 fix indentation 294968f282f7 * handle offset in anim viewer 'vwebp' * fix gif2webp to handle disposal method and odd offset correctly 2950118cb312 Merge "add SSE2 version of Sum of Square error for 16x16, 16x8 and 8x8 case" 29518a7c3cc8 Merge "Change the order of -frame argument to be more natural" 295299e0a707 Merge "Simplify the texture evaluation Disto4x4()" 29530f923c3f make the bundling work in a tmp buffer 2954e5c3b3f5 Simplify the texture evaluation Disto4x4() 295548600084 Change the order of -frame argument to be more natural 295635bfd4c0 add SSE2 version of Sum of Square error for 16x16, 16x8 and 8x8 case 2957a7305c2e Clarification for unknown chunks 29584c4398e2 Refine WebP Container Spec wrt unknown chunks. 29592ca642e0 Rectify WebPMuxGetFeatures: 29607caab1d8 Some cosmetic/comment fixes. 296160b2651a Merge "Write a GIF to WebP converter based on libgif." 2962c7127a4d Merge "Add NEON version of FTransformWHT" 296311b27212 Write a GIF to WebP converter based on libgif. 2964e9a15a37 ExUtilWriteFile() to write memory segment to file 296574356eb5 Add a simple cleanup step in mux assembly: 296651bb1e5d mux.h: correct WebPDemuxSelectFragment() prototype 296722a0fd9d Add NEON version of FTransformWHT 2968fa30c863 Update mux code to match the spec wrt animation 2969d9c5fbef by-pass Analysis pass in case segments=1 2970d2ad4450 Merge changes Ibeccffc3,Id1585b16 29715c8be251 Merge "Chunk fourCCs for XMP/EXIF" 2972a00a3daf Use 'frgm' instead of 'tile' in webpmux parameters 297381b8a741 Design change in ANMF and FRGM chunks: 2974f903cbab Chunk fourCCs for XMP/EXIF 2975812933d6 Tune performance of HistogramCombine 297652ad1979 Animation specification in container spec 2977001b9302 Image fragment specification in container spec 2978391f9db9 Ordering of description of bits in container spec 2979d5735776 Metadata specification in container spec 29801c4609b1 Merge commit 'v0.2.1' 29810ca584cb Merge "Color profile specification in container spec" 2982e8b41ad1 add NEON asm version for WHT inverse transform 2983af6f0db2 Color profile specification in container spec 2984a61a824b Merge "Add NULL check in chunk APIs" 29850e8b7eed fix WebPPictureView() unassigned strides 298675e5f17e ARM/NEON: 30% encoding speed-up 298702b43568 Add NULL check in chunk APIs 2988a0770727 mux struct naming 29896c66dde8 Merge "Tune Lossless encoder" 2990ab5ea217 Tune Lossless encoder 299174fefc8c Update ChangeLog (tag: v0.2.1, origin/0.2.0, 0.2.0) 299292f8059c Rename some chunks: 29933bb4bbeb Merge "Mux API change:" 2994d0c79f05 Mux API change: 2995abc06044 Merge "update NEWS" into 0.2.0 299657cf313b update NEWS 299725f585c4 bump version to 0.2.1 2998fed7c048 libwebp: validate chunk size in ParseOptionalChunks 2999552cd9bc cwebp (windows): fix alpha image import on XP 3000b14fea99 autoconf/libwebp: enable dll builds for mingw 30014a8fb272 [cd]webp: always output windows errors 3002d6621580 fix double to float conversion warning 300372b96a69 cwebp: fix jpg encodes on XP 3004734f762a VP8LAllocateHistogramSet: fix overflow in size calculation 3005f9cb58fb GetHistoBits: fix integer overflow 3006b30add20 EncodeImageInternal: fix uninitialized free 30073de58d77 fix the -g/O3 discrepancy for 32bit compile 300877aa7d50 fix the BITS=8 case 3009e5970bda Make *InitSSE2() functions be empty on non-SSE2 platform 3010ef5cc47e make *InitSSE2() functions be empty on non-SSE2 platform 3011c4ea259d make VP8DspInitNEON() public 30128344eadf Merge "libwebp: validate chunk size in ParseOptionalChunks" 30134828bb93 Merge "cwebp (windows): fix alpha image import on XP" 301430763333 libwebp: validate chunk size in ParseOptionalChunks 301570481898 AccumulateLSIM: fix double -> float warnings 3016eda8ee4b cwebp (windows): fix alpha image import on XP 3017c6e98658 Merge "add EXPERIMENTAL code for YUV-JPEG colorspace" 3018f0360b4f add EXPERIMENTAL code for YUV-JPEG colorspace 3019f86e6abe add LSIM metric to WebPPictureDistortion() 3020c3aa215a Speed up HistogramCombine for lower qualities. 30211765cb1c Merge "autoconf/libwebp: enable dll builds for mingw" 3022a13562e8 autoconf/libwebp: enable dll builds for mingw 30239f469b57 typo: no_fancy -> no_fancy_upsampling 30241a27f2f8 Merge "fix double to float conversion warning" 3025cf1e90de Merge "cwebp: fix jpg encodes on XP" 3026f2b5d19b [cd]webp: always output windows errors 3027e855208c fix double to float conversion warning 3028ecd66f77 cwebp: fix jpg encodes on XP 30297b3eb372 Tune lossless compression to get better gains. 3030ce8bff45 Merge "VP8LAllocateHistogramSet: fix overflow in size calculation" 3031ab5b67a1 Merge "EncodeImageInternal: fix uninitialized free" 30327fee5d12 Merge "GetHistoBits: fix integer overflow" 3033a6ae04d4 VP8LAllocateHistogramSet: fix overflow in size calculation 303480237c43 GetHistoBits: fix integer overflow 30358a997235 EncodeImageInternal: fix uninitialized free 30360b9e6829 minor cosmetics 3037a792b913 fix the -g/O3 discrepancy for 32bit compile 303873ba4357 Merge "detect and merge similar segments" 3039fee66275 detect and merge similar segments 30400c44f415 src/webp/*.h: don't forward declare enums in C++ 3041d7a5ac86 vwebp: use demux interface 3042931e0ea1 Merge "replace 'typedef struct {} X;" by "typedef struct X X; struct X {};"" 30438f216f7e remove cases of equal comparison for qsort() 304428d25c82 replace 'typedef struct {} X;" by "typedef struct X X; struct X {};" 30452afee60a speed up for ARM using 8bit for boolean decoder 30465725caba new segmentation algorithm 30472cf1f815 Merge "fix the BITS=8 case" 304812f78aec fix the BITS=8 case 30496920c71f fix MSVC warnings regarding implicit uint64 to uint32 conversions 3050f6c096aa webpmux binary: Rename 'xmp' option to 'meta' 3051ddfe871a webpmux help correction 3052b7c55442 Merge "Make *InitSSE2() functions be empty on non-SSE2 platform" 30531c04a0d4 Common APIs for chunks metadata and color profile. 30542a3117a1 Merge "Create WebPMuxFrameInfo struct for Mux APIs" 30555c3a7231 Make *InitSSE2() functions be empty on non-SSE2 platform 30567c6e60f4 make *InitSSE2() functions be empty on non-SSE2 platform 3057c7eb4576 make VP8DspInitNEON() public 3058ab3234ae Create WebPMuxFrameInfo struct for Mux APIs 3059e3990fd8 Alignment fixes 3060e55fbd6d Merge branch '0.2.0' 30614238bc0a Update ChangeLog (tag: v0.2.0) 3062c655380c dec/io.c: cosmetics 3063fe1958f1 RGBA4444: harmonize lossless/lossy alpha values 3064681cb30a fix RGBA4444 output w/fancy upsampling 3065f06c1d8f Merge "Alignment fix" into 0.2.0 3066f56e98fd Alignment fix 30676fe843ba avoid rgb-premultiply if there's only trivial alpha values 3068528a11af fix the ARGB4444 premultiply arithmetic 3069a0a48855 Lossless decoder fix for a special transform order 307062dd9bb2 Update encoding heuristic w.r.t palette colors. 30716f4272b0 remove unused ApplyInverseTransform() 307293bf0faa Update ChangeLog (tag: v0.2.0-rc1) 30735934fc59 update AUTHORS 3074014a711d update NEWS 307543b0d610 add support for ARGB -> YUVA conversion for lossless decoder 307633705ca0 bump version to 0.2.0 3077c40d7ef1 fix alpha-plane check + add extra checks 3078a06f8023 MODE_YUVA: set alpha to opaque if the image has none 307952a87dd7 Merge "silence one more warning" into 0.2.0 30803b023093 silence one more warning 3081f94b04f0 move some RGB->YUV functions to yuv.h 30824b71ba03 README: sync [cd]webp help output 3083c9ae57f5 man/dwebp.1: add links to output file format details 3084292ec5cc quiet a few 'uninitialized' warnings 30854af3f6c4 fix indentation 30869b261bf5 remove the last NOT_HAVE_LOG2 instances 3087323dc4d9 remove use of log2(). Use VP8LFastLog2() instead. 30888c515d54 Merge "harness some malloc/calloc to use WebPSafeMalloc and WebPSafeCalloc" into 0.2.0 3089d4b4bb02 Merge changes I46090628,I1a41b2ce into 0.2.0 3090bff34ac1 harness some malloc/calloc to use WebPSafeMalloc and WebPSafeCalloc 3091a3c063c7 Merge "extra size check for security" into 0.2.0 30925e796300 Merge "WebPEncode: clear stats at the start of encode" into 0.2.0 3093f1edf62f Merge "rationalize use of color-cache" into 0.2.0 3094c1933317 extra size check for security 3095906be657 rationalize use of color-cache 3096dd1c3873 Add image-hint for low-color images. 30974eb7aa64 Merge "WebPCheckMalloc() and WebPCheckCalloc():" into 0.2.0 309880cc7303 WebPCheckMalloc() and WebPCheckCalloc(): 3099183cba83 check VP8LBitWriterInit return 3100cbfa9eec lossless: fix crash on user abort 3101256afefa cwebp: exit immediately on version mismatch 3102475d87d7 WebPEncode: clear stats at the start of encode 3103a7cc7291 fix type and conversion warnings 31047d853d79 add stats for lossless 3105d39177b7 make QuantizeLevels() store the sum of squared error 31065955cf5e replace x*155/100 by x*101581>>16 31077d732f90 make QuantizeLevels() store the sum of squared error 3108e45a446a replace x*155/100 by x*101581>>16 3109159b75d3 cwebp output size consistency: 3110cbee59eb Merge commit 'v0.1.99' 31111889e9b6 dwebp: report -alpha option 31123bc3f7c0 Merge "dwebp: add PAM output support" into 0.2.0 3113d919ed06 dwebp: add PAM output support 311485e215d3 README/manpages/configure: update website link 3115c3a207b9 Update ChangeLog (tag: v0.1.99) 3116d1fd7826 Merge "add extra precision about default values and behaviour" into 0.2.0 3117efc826e0 add extra precision about default values and behaviour 31189f29635d header/doc clean up 3119ff9fd1ba Makefile.vc: fix webpmux.exe *-dynamic builds 31208aacc7b0 remove INAM, ICOP, ... chunks from the test webp file. 31212fc13015 harmonize authors as "Name (mail@address)" 31224a9f37b7 Merge "update NEWS" into 0.2.0 31237415ae13 makefile.unix: provide examples/webpmux target 3124ce82cedc update NEWS 3125641e28e8 Merge "man/cwebp.1: wording, change the date" into 0.2.0 3126c37c23e5 README: cosmetics 31273976dcd5 man/cwebp.1: wording, change the date 31283e5bbe1c Merge "rename 'use_argb_input' to 'use_argb'" into 0.2.0 3129ce90847a Merge "add some padding bytes areas for later use" into 0.2.0 31302390dabc Merge "fixing the findings by Frederic Kayser to the bitstream spec" into 0.2.0 313102751591 add a very crude progress report for lossless 3132a4b9b1c6 Remove some unused enum values. 3133dd108176 rename 'use_argb_input' to 'use_argb' 313490516ae8 add some padding bytes areas for later use 3135d03b2503 fixing the findings by Frederic Kayser to the bitstream spec 3136ce156afc add missing ABI compatibility checks 31379d45416a Merge "Doc: container spec text tweaks" into 0.2.0 31384e2e0a8c Doc: container spec text tweaks 3139f7f16a29 add ABI compatibility check 31402a775570 Merge "swig: add WebPEncodeLossless* wrappers" into 0.2.0 3141a3ec6225 mux.h: remove '* const' from function parameters 314231426eba encode.h: remove '* const' from function parameters 31439838e5d5 decode.h: remove '* const' from function parameters 31444972302d swig: add WebPEncodeLossless* wrappers 31459ff00cae bump encoder/decoder versions 3146c2416c9b add lossless quick encoding functions to the public API 31474c1f5d64 Merge "NEWS: mention decode_vp8.h is no longer installed" into 0.2.0 31486cb2277d NEWS: mention decode_vp8.h is no longer installed 3149d5e5ad63 move decode_vp8.h from webp/ to dec/ 31508d3b04a2 Merge "header clean-up" into 0.2.0 315102201c35 Merge "remove one malloc() by making color_cache non dynamic" into 0.2.0 3152d708ec14 Merge "move MIN/MAX_HISTO_BITS to format_constants.h" into 0.2.0 3153ab2da3e9 Merge "add a malloc() check" into 0.2.0 31542d571bd8 add a malloc() check 31557f0c178e remove one malloc() by making color_cache non dynamic 31566569cd7c Merge "VP8LFillBitWindow: use 64-bit path for msvc x64 builds" into 0.2.0 315723d34f31 header clean-up 31582a3ab6f9 move MIN/MAX_HISTO_BITS to format_constants.h 3159985d3da6 Merge "shuffle variables in HashChainFindCopy" into 0.2.0 3160cdf885c6 shuffle variables in HashChainFindCopy 3161c3b014db Android.mk: add missing lossless files 31628c1cc6b5 makefile.unix dist: explicitly name installed includes 31637f4647ee Merge "clarify the colorspace naming and byte ordering of decoded samples" into 0.2.0 3164cbf69724 clarify the colorspace naming and byte ordering of decoded samples 3165857650c8 Mux: Add WebPDataInit() and remove WebPImageInfo 3166ff771e77 don't install webp/decode_vp8.h 3167596dff78 VP8LFillBitWindow: use 64-bit path for msvc x64 builds 31683ca7ce98 Merge "doc: remove non-finalized chunk references" into 0.2.0 31691efaa5a3 Merge "bump versions" into 0.2.0 317051fa13e1 Merge "README: update cwebp help output" into 0.2.0 317112f9aede README: update cwebp help output 3172f0b5defb bump versions 31734c42a61b update AUTHORS 31746431a1ce doc: remove non-finalized chunk references 31758130c4cc Merge "build: remove libwebpmux from default targets/config" 317623b44438 Merge "configure: broaden test for libpng-config" 317785bff2cd Merge "doc: correct lossless prefix coding table & code" 317805108f6e Merge "More spec/code matching in mux:" 31796808e69d More spec/code matching in mux: 3180bd2b46f5 Merge "doc/webp-container-spec: light cosmetics" 318120ead329 doc/webp-container-spec: light cosmetics 31821d40a8bc configure: add pthread detection 3183b5e9067a fix some int <-> size_t mix for buffer sizes 3184e41a7596 build: remove libwebpmux from default targets/config 31850fc2baae configure: broaden test for libpng-config 318645b8272c Merge "restore authorship to lossless bitstream doc" 318706ba0590 restore authorship to lossless bitstream doc 318844a09a3c add missing description of the alpha filtering methods 318963db87dd Merge "vwebp: add checkboard background for alpha display" 3190a73b8978 vwebp: add checkboard background for alpha display 3191939158ce Merge "vwebp: fix info display" 3192b35c07d9 vwebp: fix info display 319348b39eb1 fix underflow for very short bitstreams 31947e622984 cosmetics: param alignment, manpage wording 31951bd7dd50 Merge changes I7b0afb0d,I7ecc9708 3196ac69e63e Merge "Updated cwebp man's help for Alpha & Lossless." 3197c0e8859d Get rid of image_info_ from WebPChunk struct. 3198135ca69e WebP Container Spec: 3199eb6f9b8a Updated cwebp man's help for Alpha & Lossless. 32000fa844fb cosmetic fixes on assert and 'const' where applicable 32017f22bd25 check limit of width * height is 32 bits 320216c46e83 autoconf/make: cosmetics: break long lines 3203ab22a07a configure: add helper macro to define --with-* 3204c17699b3 configure: add libtiff test 32050e09732c Merge "cwebp: fix crash with yuv input + lossless" 320688a510ff Merge "fix big-endian VP8LWriteBits" 3207da99e3bf Merge "Makefile.vc: split mux into separate lib" 32087bda392b cwebp: fix crash with yuv input + lossless 3209f56a369a fix big-endian VP8LWriteBits 321054169d6c Merge "cwebp: name InputFileFormat members consistently" 3211e2feefa9 Makefile.vc: split mux into separate lib 321227caa5aa Merge "cwebp: add basic TIFF support" 3213d8921dd4 cwebp: name InputFileFormat members consistently 32146f76d246 cwebp: add basic TIFF support 32154691407b Merge changes If39ab7f5,I3658b5ae 3216cca7c7b8 Fixed nit: 10 -> 10.f 32175d09a244 WebPMuxCreate() error handling: 3218777341c3 Fix a memleak in WebPMuxCreate() 321961c9d161 doc: correct lossless prefix coding table & code 32204c397579 Merge "mark VP8{,L}{GetInfo,CheckSignature} as WEBP_EXTERN" 3221e4e36cc6 Merge "Mux: Allow only some frames/tiles to have alpha." 3222ad2aad3c Merge "WebP Decoding error handling:" 322397649c8f Mux: Allow only some frames/tiles to have alpha. 3224f864be3b Lower the quality settings for Alpha encoding. 32253ba81bbe WebP Decoding error handling: 3226fcc69923 add automatic YUVA/ARGB conversion during WebPEncode() 3227802e012a fix compilation in non-FANCY_UPSAMPLING mode 3228e012dfd9 make width/height coding match the spec 3229228d96a5 mark VP8{,L}{GetInfo,CheckSignature} as WEBP_EXTERN 3230637a314f remove the now unused *KeepA variants 3231d11f6fcc webpmux returns error strings rather than numbers 3232fcec0593 makefile.unix: cwebp: fix OSX link 32336b811f1b Merge "doc: remove lossless pdf" 3234c9634821 doc: remove lossless pdf 3235b9ae4f0d cosmetics after mux changes b74ed6e, b494ad5 3236b494ad50 Mux: only allow adding frame/tiles at the end. 32372c341b0e Merge "Added image characteristic hint for the codec." 3238d373076a Added image characteristic hint for the codec. 32392ed2adb5 Merge "msvc: add intrinsic based BitsLog2Floor" 3240e595e7c5 Merge "add demux.c to the makefiles" 3241da47b5bd Merge "demux: add {Next,Prev}Chunk" 3242e5f46742 add demux.c to the makefiles 32434708393c demux: add {Next,Prev}Chunk 3244e8a0a821 demux: quiet msvc warnings 32457f8472a6 Update the WebP Container Spec. 324631b68fe6 cleanup WebPPicture struct and API 32479144a186 add overflow check before calling malloc() 324881720c91 consistency cosmetics 32492ebe8394 Merge "Add kramdown version information to README" 325071443084 enc/vp8l.c: fix build 3251b7ac19fe Add kramdown version information to README 3252efdcb667 Merge "Edit for consistency, usage and grammar." 325308220102 Enable alpha in vvwebp 32548de9a084 Merge "Mux API change:" 3255b74ed6e7 Mux API change: 3256233a589e take picture->argb_stride into account for lossless coding 325704e33f17 Edit for consistency, usage and grammar. 3258a575b4bc Merge "cosmetics: add missing const" 32598d99b0f4 Merge "cosmetics: remove unimplemented function proto" 326069d02217 cosmetics: add missing const 32615b08318b cosmetics: remove unimplemented function proto 3262b7fb0ed5 Log warning for unsupported options for lossless. 3263e1f769fe msvc: add intrinsic based BitsLog2Floor 32648a69c7d8 Bug-fix: Clamp backward dist to 1. 3265b5b6ac97 Merge "Bring the special writer 'WebPMemoryWriter' to public API" 3266a6a1909f Merge "Fix floating point exception with cwebp -progress" 3267f2cee067 Fix floating point exception with cwebp -progress 326891b7a8c7 Bring the special writer 'WebPMemoryWriter' to public API 3269310e2972 support resize and crop for RGBA input 3270a89835d3 Merge changes Ice662960,Ie8d7aa90,I2d996d5e,I01c04772 3271ce614c0c Merge "dec/vp8: avoid setting decoder status twice" 3272900285da dec/vp8: avoid setting decoder status twice 32738227adc8 Merge changes I6f02b0d0,I5cbc9c0a,I9dd9d4ed,Id684d2a1 3274dcda59c1 Merge "demux: rename SetTile to SelectTile" 3275622ef12e demux: rename SetTile to SelectTile 327681ebd375 Merge "demux: add {Next,Prev}Frame" 327702dd37a2 demux: add {Next,Prev}Frame 32784b79fa59 Merge "Limit the maximum size of huffman Image to 16MB." 32799aa34b34 Manually number "chapters," as chapter numbers are used in the narrative. 32802a4c6c29 Re-wrap at <= 72 columns 3281a45adc19 Apply inline emphasis and monospacing, per gdoc / PDF 328291011206 Incorporate gdoc changes through 2012-06-08 32837a182487 Removed CodeRay syntax declarations ... 3284b3ec18c5 Provide for code-block syntax highlighting. 3285709d7702 Replace high ASCII artifacts (curly quotes, etc.). 3286930e8abb Lossless WebP doc largely ported to markdown text. 328718cae37b msvc: silence some build warnings 3288b3923084 Limit the maximum size of huffman Image to 16MB. 3289f180df2a Merge "libwebp/demux: add Frame/Chunk iteration" 32902bbe1c9a Merge "Enable lossless encoder code" 3291d0601b01 Merge changes I1d97a633,I81c59093 329278f3e345 Enable lossless encoder code 3293d974a9cc Merge "libwebp/demux: add simple format parsing" 329426bf2232 Merge "libwebp: add WebPDemux stub functions" 32952f666688 Merge "modify WebPParseHeaders to allow reuse by GetFeatures" 3296b402b1fb libwebp/demux: add Frame/Chunk iteration 3297ad9ada3b libwebp/demux: add WebPDemuxGetI 32982f2d4d58 libwebp/demux: add extended format parsing 3299962dcef6 libwebp/demux: add simple format parsing 3300f8f94081 libwebp: add WebPDemux stub functions 3301fb47bb5c Merge "NumNamedElements() should take an enum param." 33027c689805 Fix asserts in Palette and BackwardReference code. 3303fbdcb7ea NumNamedElements() should take an enum param. 3304fb4943bd modify WebPParseHeaders to allow reuse by GetFeatures 33053697b5ce write an ad-hoc EncodeImageInternal variant 3306eaee9e79 Bug-Fix: Decode small (less than 32 bytes) images. 33070bceae48 Merge "cwebp: fix alpha reporting in stats output" 33080424b1ef Rebase default encoding settings. 3309c71ff9e3 cwebp: fix alpha reporting in stats output 3310e2ffe446 Merge "Stop indefinite recursion for Huffman Image." 331170eb2bd6 Stop indefinite recursion for Huffman Image. 3312f3bab8eb Update vwebp 33136d5c797c Remove support for partial files in Mux. 3314f1df5587 WebPMuxAssemble() returns WebPData*. 3315814a0639 Rename 'Add' APIs to 'Set'. 3316bbb0218f Update Mux psuedo-code examples. 33174fc4a47f Use WebPData in MUX set APIs 3318c67bc979 Merge "add WebPPictureImportRGBX() and WebPPictureImportBGRX()" 331927519bc2 add WebPPictureImportRGBX() and WebPPictureImportBGRX() 3320f80cd27e factorize code in Import() 33219b715026 histogram: add log2 wrapper 33228c34378f Merge "fix some implicit type conversion warnings" 332342f6df9d fix some implicit type conversion warnings 3324250c16e3 Merge "doc: update lossless pdf" 33259d9daba4 Merge "add a PDF of the lossless spec" 33268fbb9188 prefer webp/types.h over stdint.h 33270ca170c2 doc: update lossless pdf 33280862ac6e add a PDF of the lossless spec 3329437999fb introduce a generic WebPPictureHasTransparency() function 3330d2b6c6c0 cosmetic fixes after Idaba281a 3331b4e6645c Merge "add colorspace for premultiplied alpha" 333248f82757 add colorspace for premultiplied alpha 3333069f903a Change in lossless bit-stream. 33345f7bb3f5 Merge "WebPReportProgress: use non-encoder specific params" 3335f18281ff WebPReportProgress: use non-encoder specific params 33369ef32283 Add support for raw lossless bitstream in decoder. 33377cbee29a Fix bug: InitIo reseting fancy_upsampling flag. 3338880fd98c vwebp: fix exit w/freeglut 33391875d926 trap two unchecked error conditions 334087b4a908 no need to have mux.h as noinst clause in enc/ 334188f41ec6 doc: fix bit alignment in VP8X chunk 334252f5a4ef Merge "fix bug with lossy-alpha output stride" 33433bde22d7 fix bug with lossy-alpha output stride 334442d61b6d update the spec for the lossy-alpha compression methods. 3345e75dc805 Move some more defines to format_constants.h 3346c13f6632 Move consts to internal header format_constants.h 33477f2dfc92 use a bit-set transforms_seen_ instead of looping 334818da1f53 modulate alpha-compression effort according to config.method 3349f5f2fff6 Merge "Alpha flag fix for lossless." 3350c975c44e Alpha flag fix for lossless. 33514f067fb2 Merge "Android: only build dec_neon with NEON support" 3352255c66b4 Android: only build dec_neon with NEON support 33538f9117a9 cosmetics: signature fixes 335439bf5d64 use header-less lossless bitstream for alpha channel 335575d7f3b2 Merge "make input data be 'const' for VP8LInverseTransform()" 33569a721c6d make input data be 'const' for VP8LInverseTransform() 33579fc64edc Disallow re-use of same transformation. 335898ec717f use a function pointer for ProcessRows() 3359f7ae5e37 cosmetics: join line 3360140b89a3 factor out buffer alloc in AllocateARGBBuffers() 3361a107dfa8 Rectify WebPParseOptionalChunks(). 3362237eab67 Add two more color-spaces for lossless decoding. 336327f417ab fix orthographic typo 3364489ec335 add VP8LEncodeStream() to compress lossless image stream 3365fa8bc3db make WebPEncodingSetError() take a const picture 3366638528cd bitstream update for lossy alpha compression 3367d73e63a7 add DequantizeLevels() placeholder 3368ec122e09 remove arch-dependent rand() 3369d40e7653 fix alignment 33701dd6a8b6 Merge "remove tcoder, switch alpha-plane compression to lossless" 33713e863dda remove tcoder, switch alpha-plane compression to lossless 33728d77dc29 Add support for lossless in mux: 3373831bd131 Make tile size a function of encoding method. 3374778c5228 Merge "remove some variable shadowing" 3375817c9dce Few more HuffmanTreeToken conversions. 337637a77a6b remove some variable shadowing 337789c07c96 Merge "normalize example header includes" 33784aff411f Merge "add example_util.[hc]" 337900b29e28 normalize example header includes 3380061263a7 add example_util.[hc] 3381c6882c49 merge all tree processing into a single VP8LProcessTree() 33829c7a3cf5 fix VP8LHistogramNumCodes to handle the case palette_code_bits == 0 3383b5551d2e Merge "Added HuffmanTreeCode Struct for tree codes." 33848b85d01c Added HuffmanTreeCode Struct for tree codes. 3385093f76d8 Merge "Allocate single memory in GetHuffBitLengthsAndCodes." 338641d80494 Allocate single memory in GetHuffBitLengthsAndCodes. 33871b04f6d2 Correct size in VP8L header. 33882924a5ae Makefile.vc: split object lists based on directory 3389c8f24165 Merge "add assert(tokens)" 339043239947 add assert(tokens) 33919f547450 Catch an error in DecodeImageData(). 3392ac8e5e42 minor typo and style fix 33939f566d1d clean-up around Huffman-encode 3394c579a710 Introduce CHUNK_SIZE_BYTES in muxi.h. 339514757f8a Make sure huffman trees always have valid symbols 339641050618 makefile.unix: add support for building vwebp 339748b37721 Merge "fixed signed/unsigned comparison warning" 339857f696da Merge "EncodeImageInternal: fix potential leak" 3399d972cdf2 EncodeImageInternal: fix potential leak 34005cd12c3d fixed signed/unsigned comparison warning 3401cdca30d0 Merge "cosmetics: shorten long line" 3402e025fb55 cosmetics: shorten long line 340322671ed6 Merge "enc/vp8l: fix double free on error" 3404e1b9b052 Merge "cosmetics: VP8LCreateHuffmanTree: fix indent" 3405a8e725f8 enc/vp8l: fix double free on error 340627541fbd cosmetics: VP8LCreateHuffmanTree: fix indent 34071d38b258 cwebp/windows: use MAKE_REFGUID where appropriate 3408817ef6e9 Merge "cwebp: fix WIC/Microsoft SDK compatibility issue" 3409902d3e3b cwebp: fix WIC/Microsoft SDK compatibility issue 341089d803c4 Merge "Fix a crash due to wrong pointer-integer arithmetic." 3411cb1bd741 Merge "Fix a crash in lossless decoder." 3412de2fe202 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." 3413ce69177a Fix a crash due to wrong pointer-integer arithmetic. 3414e40a3684 Fix a crash in lossless decoder. 34153927ff3a remove unneeded error condition for WebPMuxNumNamedElements() 34162c140e11 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. 3417861a5b7b add support for animation 3418eb5c16cc Merge "Set correct encode size in encoder's stats." 34194abe04a2 fix the return value and handle missing input file case. 34202fafb855 Set correct encode size in encoder's stats. 3421e7167a2b Provide one entry point for backward references. 3422c4ccab64 Print relevant lossless encoding stats in cwebp. 3423e3302cfd GetHuffBitLengthsAndCodes: reduce level of indirection 3424b5f2a9ed enc/vp8l: fix uninitialized variable warning 34257885f8b2 makefile.unix: add lossless encoder files 34261261a4c8 Merge "cosmetics" 34273926b5be Merge "dsp/cpu.c: Android: fix crash on non-neon arm builds" 3428834f937f dsp/cpu.c: Android: fix crash on non-neon arm builds 3429126e1606 cosmetics 3430e38602d2 Merge branch 'lossless_encoder' 3431e8d3d6a0 split StoreHuffmanCode() into smaller functions 3432d0d88990 more consolidation: introduce VP8LHistogramSet 34331a210ef1 big code clean-up and refactoring and optimization 343441b5c8ff Some cosmetics in histogram.c 3435ada6ff77 Approximate FastLog between value range [256, 8192] 3436ec123ca3 Forgot to update out_bit_costs to symbol_bit_costs at one instance. 3437cf33ccd1 Evaluate output cluster's bit_costs once in HistogramRefine. 3438781c01f4 Simple Huffman code changes. 3439a2849bc5 Lossless decoder: remove an unneeded param in ReadHuffmanCodeLengths(). 3440b39e7487 Reducing emerging palette size from 11 to 9 bits. 3441bfc73db4 Move GetHistImageSymbols to histogram.c 3442889a5786 Improve predict vs no-predict heuristic. 344301f50663 code-moving and clean-up 344431035f3b reduce memory usage by allocating only one histo 3445fbb501b8 Restrict histo_bits to ensure histo_image size is under 32MB 34468415ddf3 further simplification for the meta-Huffman coding 3447e4917299 A quick pass of cleanup in backward reference code 344883332b3c Make transform bits a function of encode method (-m). 344972920caa introduce -lossless option, protected by USE_LOSSLESS_ENCODER 3450c6ac4dfb Run TraceBackwards for higher qualities. 3451412222c8 Make histo_bits and transform_bits function of quality. 3452149b5098 Update lossless encoder strategy: 34530e6fa065 cache_bits passed to EncodeImageInternal() 3454e38b40a9 Factorize code for clearing HtreeGroup. 34556f4a16ea Removing the indirection of meta-huffman tables. 34563d33ecd1 Some renaming/comments related to palette in lossless encoder. 34574d02d586 Lossless encoder: correction in Palette storage 34584a636235 fix a memleak in EncodeImageInternal() 34590993a611 Full and final fix for prediction transform 3460afd2102f Fix cross-color transform in lossless encoder 3461b96d8740 Need to write a '0' bit at the end of transforms. 346254dad7e5 Color cache size should be counted as 0 when cache bits = 0 34634f0c5caf Fix prediction transform in lossless encoder. 346436dabdad Fix memory leak in method EncodeImageInternal for histogram_image. 3465352a4f49 Get rid of PackLiteralBitLengths() 3466d673b6b9 Change the predictor function to pass left pixel 3467b2f99465 Fix CopyTileWithPrediction() 346884547f54 Add EncodeImageInternal() method. 34696b38378a Guard the lossless encoder (in flux) under a flag 347009f7532c Fix few nits (const qualifiers) 3471648be393 Added implementation for various lossless functions 347232714ce3 Add VP8L prefix to backward ref & histogram methods. 3473fcba7be2 Fixed header file tag (WEBP_UTILS_HUFFMAN_ENCODE_H_) 3474bc703746 Add backward_ref, histogram & huffman encode modules from lossless. 3475fdccaadd Fixing nits 3476227110c4 libwebp interface changes for lossless encoding. 347750679acf minor style fixes 3478b38dfccf remove unneeded reference to NUM_LITERAL_CODES 34798979675b harmonize header description 3480c04eb7be tcoder.c: define NOT_HAVE_LOG2 for MSVC builds 34819a214fa1 Merge "VP8[L]GetInfo: check input pointers" 34825c5be8ba VP8[L]GetInfo: check input pointers 34830c188fec Merge changes I431acdfe,I713659b7 3484b3515c62 mux: drop 'chunk' from ChunkInfo member names 3485aea7923c muxi.h: remove some unused defines 348601422492 update NEWS file for next release 348729e3f7ec Merge "dec: remove deprecated WebPINew()" 34884718e449 Merge "muxedit: a few more size_t changes" 348982654f96 Merge "muxedit: remove a few redundant NULL checks" 349002f27fbd dec: remove deprecated WebPINew() 3491ccddb3fc muxedit: remove a few redundant NULL checks 3492a6cdf710 muxedit: a few more size_t changes 3493a3846892 Merge "mux: remove unused LIST_ID" 349411ae46ae alpha.c: quiet some size_t -> int conversion warnings 3495dee46692 mux: remove unused LIST_ID 349603f1f493 mux: add version checked entry points 34976a0abdaa Merge "doc: tile/alpha corrections" 3498c8139fbe Merge "few cosmetics" 349968338737 Merge "lossless: remove some size_t -> int conversions" 35005249e94a doc: tile/alpha corrections 3501d96e722b huffman: quiet int64 -> int conversion warning 3502532020f2 lossless: remove some size_t -> int conversions 350323be6edf few cosmetics 35041349edad Merge "configure: AC_ARG_* use AS_HELP_STRING" 3505bfbcc60a configure: AC_ARG_* use AS_HELP_STRING 35061427ca8e Merge "Makefile.am: header file maintenance" 3507087332e3 Merge "remove unused parameter 'round' from CalcProba()" 35089630e168 remove unused parameter 'round' from CalcProba() 350992092eaa Merge "bit_reader.h: correct include" 3510a87fc3f6 Merge "mux: ensure # images = # tiles" 351153af99b1 Merge "mux: use size_t consistently" 351239a57dae Makefile.am: header file maintenance 35131bd0bd0d bit_reader.h: correct include 3514326a3c6b mux: ensure # images = # tiles 351595667b8d mux: use size_t consistently 3516231ec1fb Removing the indirection of meta-huffman tables. 351715ebcbaa check return pointer from MuxImageGetListFromId 3518b0d6c4a7 Merge "configure: remove test for zlib.h" 35198cccac50 Merge "dsp/lossless: silence some build warnings" 3520b08819a6 dsp/lossless: silence some build warnings 35217ae22521 Android.mk: SSE2 & NEON updates 35220a49e3f3 Merge "makefile.unix add missing header files" 35232e75a9a1 Merge "decode.h: use size_t consistently" 3524fa13035e configure: remove test for zlib.h 3525d3adc81d makefile.unix add missing header files 3526262fe01b Merge "makefile.unix & Android.mk: cosmetics" 35274cce137e Merge "enc_sse2 add missing stdlib.h include" 352880256b85 enc_sse2 add missing stdlib.h include 35299b3d1f3a decode.h: use size_t consistently 353064083d3c Merge "Makefile.am: cosmetics" 3531dceb8b4d Merge changes If1331d3c,I86fe3847 35320e33d7bf Merge "webp/decode.h: fix prototypes" 3533fac0f12e rename BitReader to VP8LBitReader 3534fbd82b5a types.h: centralize use of stddef.h 35352154835f Makefile.am: cosmetics 35361c92bd37 vp8io: use size_t for buffer size 353790ead710 fix some more uint32_t -> size_t typing 3538cbe705c7 webp/decode.h: fix prototypes 35393f8ec1c2 makefile.unix & Android.mk: cosmetics 3540217ec7f4 Remove tabs in configure.ac 3541b3d35fc1 Merge "Android.mk & Makefile.vc: add new files" 35420df04b9e Android.mk & Makefile.vc: add new files 3543e4f20c5b Merge "automake: replace 'silent-rules' w/AM_SILENT_RULES" 35448d254a09 cosmetics 35456860c2ea fix some uint32_t -> size_t typing 35464af1858a Fix a crash due to max symbol in a tree >= alphabet size 35476f01b830 split the VP8 and VP8L decoding properly 3548f2623dbe enable lossless decoder 3549b96efd7d add dec/vp8i.h changes from experimental 355019f6398e add dec/vp8l{i.h,.c} from experimental 3551c4ae53c8 add utils/bit_reader.[hc] changes from experimental 3552514d0089 add dsp/lossless.[hc] from experimental 35539c67291d add utils/huffman.[hc] from experimental 3554337914a0 add utils/color_cache.[hc] from experimental 3555b3bf8fe7 the read-overflow code-path wasn't reporting as an error 35561db888ba take colorspace into account when cropping 355761c2d51f move the rescaling code into its own file and make enc/ and dec/ use it. 3558efc2016a Make rescaler methods generic 35593eacee81 Move rescaler methods out of io.c. 3560a69b893d automake: replace 'silent-rules' w/AM_SILENT_RULES 35616f7bf645 issue 111: fix little-endian problem in bit-reader 3562ed278e22 Removed unnecessary lookup 3563cd8c3ba7 fix some warnings: down-cast and possibly-uninitialized variable 35640a7102ba ~1% improvement of alpha compression 35653bc1b141 Merge "Reformat container doc" 3566dc17abdc mux: cosmetics 3567cb5810df Merge "WebPMuxGetImage: allow image param to be NULL" 3568506a4af2 mux: cosmetics 3569135e8b19 WebPMuxGetImage: allow image param to be NULL 3570de556b68 Merge "README.mux: reword some descriptions" 35710ee2aeb9 Makefile.vc: use batch mode rules 3572d9acddc0 msvc: move {i,p}db creation to object directory 3573237c9aa7 Merge "expose WebPFree function for DLL builds" 3574b3e4054f silence msvc debug build warning 357545feb55d expose WebPFree function for DLL builds 357611316d84 README.mux: reword some descriptions 35774be52f4a factorize WebPMuxValidate 357814f6b9f6 mux: light cleanup 35795e96a5db add more param checks to WebPPictureDistortion() 35808abaf820 Merge "silence some type size related warnings" 35811601a39b silence some type size related warnings 3582f3abe520 Merge "idec: simplify buffer size calculation" 3583a9c5cd4c idec: simplify buffer size calculation 35847b06bd7f Merge "configure/automake: add silent-rules option" 3585e9a7d145 Reformat container doc 3586d4e5c7f3 configure/automake: add silent-rules option 35875081db78 configure/automake: no -version-info for convenience libs 358885b6ff68 Merge "idec: fix WebPIUpdate failure" 35897bb6a9cc idec: fix internal state corruption 359089cd1bb8 idec: fix WebPIUpdate failure 359101b63806 4-5% faster decoding, optimized byte loads in arithmetic decoder. 3592631117ea Merge "cosmetics & warnings" 3593a0b2736d cosmetics & warnings 3594f73947f4 use 32bit for storing dequant coeffs, instead of 16b. 3595b9600308 Merge "store prediction mode array as uint8_t[16], not int[16]." 35967b67881a store prediction mode array as uint8_t[16], not int[16]. 3597cab8d4dc Merge "NEON TransformOne" 3598ba503fda NEON TransformOne 35999f740e3b Merge "gcc warning fix: remove the 'const' qualifier." 3600f76d3587 gcc warning fix: remove the 'const' qualifier. 3601e78478d6 Merge "webpmux: make more use of WebPData" 3602f85bba3d Merge "manpages: add BUGS section" 360348a43bbf Merge "makefile.unix: variable cosmetics" 3604c274dc96 makefile.unix: variable cosmetics 36051f7b8595 re-organize the error-handling in the main loop a bit 36061336fa71 Only recompute level_cost_[] when needed 3607771ee449 manpages: add BUGS section 36080f7820e6 webpmux: make more use of WebPData 3609974aaff3 examples: logging updates 36106c14aadd Merge "better token buffer code" 3611f4054250 better token buffer code 361218d959fa Merge "mux: add WebPData type" 3613eec4b877 mux: add WebPData type 36140de3096b use 16bit counters for recording proba counts 36157f23678d fix for LevelCost + little speed-up 36167107d544 further speed-up/cleanup of RecordCoeffs() and GetResidualCost() 3617fd221040 Introduce Token buffer (unused for now) 36185fa148f4 Merge "speed-up GetResidualCost()" 361928a9d9b4 speed-up GetResidualCost() 362011e7dadd Merge "misc cosmetics" 3621378086bd misc cosmetics 3622d61479f9 add -print_psnr and -print_ssim options to cwebp. 36232e3e8b2e add a WebPCleanupTransparentArea() method 3624552c1217 Merge "mux: plug some memory leaks on error" 3625a2a81f7d Merge "fix Mach-O shared library build" 3626b3482c43 Merge "fix gcc-4.0 apple 32-bit build" 3627e4e3ec19 fix gcc-4.0 apple 32-bit build 3628b0d2fecf mux: plug some memory leaks on error 3629f0d2c7a7 pass of cosmetics 3630b309a6f9 fix Mach-O shared library build 3631241ddd38 doc: delete mux container pdf 36328b1ba272 doc: update VP8 decode guide link 36337e4371c5 WebPMuxCreate: fix unchecked malloc 3634eb425586 Merge "have makefile.unix clean up src/webp/*~ too" 3635a85c3631 Merge "correct EncodeAlpha documentation" 3636a33842fd Merge "Update webp container spec with alpha filter options." 36378d6490da Incremental support for some of the mux APIs. 3638b8375abd have makefile.unix clean up src/webp/*~ too 3639b5855fc7 correct EncodeAlpha documentation 3640dba37fea Update webp container spec with alpha filter options. 36412e74ec8b fix compile under MINGW 3642716d1d7f fix suboptimal MAX_LEN cut-off limit 364357cab7b8 Harmonize the alpha-filter predictions at boundary 36443a989534 Merge "Fix bug for Alpha in RGBA_4444 color-mode." 36458ca2076d Introduce a 'fast' alpha mode 3646221a06bb Fix bug for Alpha in RGBA_4444 color-mode. 3647ad1e163a cosmetics: normalize copyright headers 3648c77424d7 cosmetics: light include cleanup 36499d0e17c9 fix msvc build breakage after 252028a 36507c4c177c Some readability fixes for mux library 3651d8a47e66 Merge "Add predictive filtering option for Alpha." 3652252028aa Add predictive filtering option for Alpha. 36539b69be1c Merge "Simplify mux library code" 3654a056170e Simplify mux library code 3655992187a3 improve log2 test 3656e852f832 update Android.mk file list 3657a90cb2be reduce number of copies and mallocs in alpha plane enc/dec 3658b1662b05 fix some more type conversion warnings w/MSVC 3659223d8c60 fix some uint64_t -> int conversion warnings with MSC 3660c1a0437b Merge "simplify checks for enabling SSE2 code" 3661f06817aa simplify checks for enabling SSE2 code 3662948d4fe9 silence a msvc build warning 366391179549 vwebp: msvc build tweaks 36647937b409 simple WebP viewer, based on OpenGL 36656aac1df1 add a bunch of missing 'extern "C"' 3666421eb99d Merge "Remove assigned-but-not-used variable "br"" 366791e27f45 better fitting names for upsampling functions 3668a5d7ed5c Remove assigned-but-not-used variable "br" 3669f62d2c94 remove unused 'has_alpha' from VP8GetInfo() signature 367008e86582 trap alpha-decoding error 3671b361eca1 add cut-off to arith coder probability update. 36728666a93a Some bug-fixes for images with alpha. 3673273a12a0 fix off-by-1 diff in case cropping and simple filtering 36742f741d1e webpmux: ReadImage: fix ptr free in error case 3675721f3f48 fix alpha decode 367660942c8c fix the has_alpha_ order 367730971c9e Implement progress report (and user abort) 3678eda520a9 cosmetics after 9523f2a 367938bd5bb5 Merge "Better alpha support in webpmux binary" 3680ccbaebfe Merge "Updated the includes to relative paths." 3681d71fbdcc fix small typo in error message array 3682cdf97aa2 Better alpha support in webpmux binary 3683885f25bc Updated the includes to relative paths. 3684a0ec9aac Update WebP encoder (cwebp) to support Alpha. 3685667b769a Fixed the include for types.h within mux.h 36869523f2a5 Add Alpha Encode support from WebPEncode. 368716612ddd Merge "Add Alpha Decode support from WebPDecode." 3688d117a940 Add Alpha Decode support from WebPDecode. 368967228734 cosmetics after e1947a9 3690e1947a92 Add Alpha encode/decode code. 3691afc4c5d6 simplify code by introducing a CopyPlane() helper func 3692113b3128 Merge "MUX API Updates" 3693c398f595 MUX API Updates 36945acf04ef remove orphan source file 3695059f03ef Merge "dec: validate colorspace before using as array index" 369670a03989 Merge "factorize some code" 36979b243b3d factorize some code 3698372e2b46 Correct a bug in ReadPNG() with GRAY_ALPHA images 3699469d6eb9 Merge "Makefile.am: remove redundant noinst_HEADERS" 37009fe3372f dec: validate colorspace before using as array index 37018962030f remove orphan source file 3702ced3e3f4 Makefile.am: remove redundant noinst_HEADERS 3703964387ed use WEBP_INLINE for inline function declarations 370490880a11 Merge "manpages: break long lines" 3705b5910895 Merge "manpages: minor formatting updates" 37064c451e4a Merge "Rectify the Chunk parsing logic." 370704e84cf1 examples: slight cleanup 3708099717ce manpages: break long lines 37091daf39bb manpages: minor formatting updates 3710abd030b5 fix missing "(void)" in function signature 3711f6a7d758 remove useless test 3712f07b2138 Rectify the Chunk parsing logic. 3713b8634f7d webpmux: fix lib link order 371442c2e682 Fix missing coma (on uncompiled code) 3715d8329d41 Android.mk: add missing source files 371613a54df5 Merge "More aggressive copy-edit; add TODO; validate HTML5" 3717868b96ae More aggressive copy-edit; add TODO; validate HTML5 3718767afea2 configure: check for a symbol contained in libpng 3719408b8918 Merge "Linewrap at 72 cols. Casual copy-edit." 37203ae318c7 Merge "Restore (most) emphasis; add emphasis to normative RFC 2119 terms (MUST, etc.)" 3721918eb2d8 Merge "Basic container doc source clean-up; fix lists and pseudocode blocks." 372203bec9e0 Linewrap at 72 cols. Casual copy-edit. 37232678d819 Restore (most) emphasis; add emphasis to normative RFC 2119 terms (MUST, etc.) 3724428674da Basic container doc source clean-up; fix lists and pseudocode blocks. 37256a77d928 Merge "Makefile.vc: cosmetics" 372628c38e8c Merge "Makefile.vc: condense directory creation rules" 372755be2cf8 Initial import of container spec document, from pdftotext transform. 3728a82a788b Makefile.vc: cosmetics 3729c8f41ce5 Makefile.vc: condense directory creation rules 37302b877cd0 Some fixes to Makefile.vc to support the src\mux directory. 37313eb969b3 Merge "Add Makefile.vc for Mux library & binary." 3732e78e971e Add Makefile.vc for Mux library & binary. 37336aedde58 Add manual for WebPMux tool. 37348a360d0a Merge "Added WebPMux Binary." 3735a4f32cae Added WebPMux Binary. 3736f3bf4c76 Added Mux Container Spec & README for MUX-API. 37379f761cfa Changed function signature for WebPMuxCreate 37385f31b5ec Merge "Add Mux library for manipulating WebP container." 37392315785f Add Mux library for manipulating WebP container. 37407e198abb update ChangeLog (tag: v0.1.3) 3741dfc9c1ea Harmonize the dates 374228ad70c5 Fix PNG decoding bug 3743846e93c5 Update AUTHORS & add .mailmap 3744563e52d6 cosmetics after '76036f5 Refactor decoder library' 374576036f54 Refactor decoder library 3746377ef43c configure.ac: update AC_INIT params 37477a8d8762 use a user-visible MACRO for max width/height. 3748d4e9f559 NEON decode support in WebP 37490ee683b5 update libtool version-info 3750fdbe02c5 windows: match _cond_destroy logic w/return variable name 3751206b686b README: correct advanced decode api pseudo-code 37526a32a0f5 make VP8BitReader a typedef, for better re-use 3753b112e836 create a libwebputils under src/utils 3754ee697d9f harmonize the include guards and #endif comments 3755a1ec07a6 Fixing compiler error in non x86 arch. 3756dcfa509a Fixed recursive inclusion of bit_writer.h and vp8enci.h. 3757e06ac088 create a separate libwebpdsp under src/dsp 3758ebeb412a use unsigned int for bitfields 3759341cc56a make kNewRange a static array 3760227a91e5 README: minor wording update 376105bd8e6a add man pages to dist 3762812dfa1a bump up versions in preparations for 0.1.3 3763a5b78c81 wrap alpha-related options under WEBP_EXPERIMENTAL_FEATURES flag 376434dc7907 regen ChangeLog for 0.1.3-rc2 37657c436630 Silence some (more) Visual Studio warnings. 376660306e8c add top-level gitattributes 37672aa6b80e Slience some Visual Studio warnings. 37684cbbb290 Merge "bump up version for next freeze" 3769a3291674 bump up version for next freeze 3770c7e86aba cosmetics: fix comment line lengths 3771c9e037ab makefile.unix: add simple dist target 377287d58ce9 makefile.unix: rule maintenance 3773d477de77 mend 3774fac15ec7 Update NEWS & README for next release V0.1.3 37756215595c Merge "add a -partition_limit option to limit the number of bits used by intra4x4" 37763814b76c Merge "reorganize chunk-parsing code" 3777900286e0 add a -partition_limit option to limit the number of bits used by intra4x4 3778cd12b4b0 add the missing cost for I4/I16 mode selection 3779dfcc2136 reorganize chunk-parsing code 37803cf20306 initialize pointers to function within VP8DspInit() 3781d21b4795 Merge "windows: add decode threading support" 3782473ae953 fix hang on thread creation failure 3783fccca420 windows: add decode threading support 3784a31f843a Use the exact PNG_INCLUDES/PNG_LIBS when testing for -lpng 3785ad9b45f1 Merge "Makefile.vc: rule maintenance" 3786565a2cab Makefile.vc: rule maintenance 37872d0da681 makefile.unix: disable Wvla by default 3788fc7815d6 multi-thread decoding: ~25-30% faster 3789acd8ba42 io->teardown() was not always called upon error 3790c85527b1 Merge "Makefile.vc: add DLL configs" 3791e1e9be35 cosmetics: spelling/grammar in README and lib headers 3792b4d0ef8f Makefile.vc: add DLL configs 3793998754a7 remove unused nb_i4_ and nb_i16_ fields. 37949f01ce3a rename WebPDecBuffer::memory -> private_memory 3795fb5d659b fix an overflow bug in LUT calculation 3796d646d5c7 swig: add WebPDecodeARGB 379778aeed40 add missing WebPDecodeARGBInto() and switch ARGB4444 to RGBA4444 as was intended 3798cd7c5292 explicitly mark library functions as extern 379919db59f8 add support for RGB565, ARGB4444 and ARGB colorspace (decoder) 3800c915fb2a encoder speed-up: hardcode special level values 3801c558bdad Rename and improve the API to retrieve decoded area 3802bf599d74 Merge "makefile.unix: disable -Wvla by default" 3803c9ea03d7 SSE2 version of strong filtering 3804993af3e2 makefile.unix: disable -Wvla by default 38053827e1bc Merge "examples: (windows/WIC) add alpha support" 3806e291fae0 SSE2 functions for the fancy upsampler. 3807a06bbe2e add WebPISetIOHooks() to set some custom hooks on the incremental decoder object. 38087643a6f2 Merge "makefile.unix: use uname to detect OSX environment" 38095142a0be export alpha channel (if present) when dumping to PGM format 381014d5731c makefile.unix: use uname to detect OSX environment 381108057062 examples: quiet warnings 38123cfe0888 examples: (windows/WIC) add alpha support 381313ed94b8 add compile warning for variable-length-array 38145a18eb1a Merge "add Advanced Decoding Interface" 38155c4f27f9 add missing \n 3816f4c4e416 80 cols fix 3817d2603105 add Advanced Decoding Interface 3818bd2f65f6 sse2 version of the complex filter 381996ed9ce0 perform two idct transforms at a time when possible 382001af7b69 use aligned stored 38210e1d1fdf Merge "Makefile.vc: add experimental target" 38222a1292a6 Makefile.vc: add experimental target 382323bf351e Enable decode SSE2 for Visual Studio 3824131a4b7b dec/dsp_sse2: fix visual studio compile 382500d9d680 swig: file reorganization 38267fc7e0d9 Merge "swig/java: basic encode support" 38273be57b16 fix MSVC compile for WEBP_EXPERIMENTAL_FEATURES 382840a7e347 dec/dsp: disable sse2 for Visual Studio builds 3829e4d540c8 add SSE2 code for transform 383054f2170a swig/java: basic encode support 3831c5d4584b call function pointers instead of C-version 3832ea43f045 Merge "configure: mingw32 targets: test for WIC support" 3833a11009d7 SSE2 version of simple in-loop filtering 383442548da9 shave one unneeded filter-cache line 383531f9dc6f configure: mingw32 targets: test for WIC support 383619559699 Merge "split expression in two." 3837415dbe46 split expression in two. 3838e29072a8 configure: test for zlib only w/--enable-experimental 3839b2b0090b Simplify Visual Studio ifdefs 3840ca7a2fd6 Add error reporting from encoding failures. 38416c9405db Merge "Makefile.vc: require CFG with clean target" 38420424ecd9 Makefile.vc: require CFG with clean target 3843003417c7 Enable SSE2 for Visual Studio builds 3844af10db4a little speed up for VP8BitUpdate() 3845e71418f8 more MSVC files to ignore 384646d90363 cosmetics 3847edf59ab3 typo fix 384872229f5f Add support for x64 and SSE2 builds under Windows. 384992e5c6e1 VP8GetInfo() + WebPResetDecParams() 3850416b7a6b raise the fixed-point precision for the rescaler 3851aa87e4e0 fix alignment 3852eb66670c disable WEBP_EXPERIMENTAL_FEATURES 3853c5ae7f65 typo fix: USE_ => WEBP_ 3854d041efae swig: add libwebp.jar/libwebp_java_wrap.c 3855f6fb3877 add swig interface 3856e9273902 align buffer for double too 3857842c009b fix -strong option 3858d0a70387 Merge "cosmetics" 3859fc0a02e5 fix the dichotomy loop 386038369c03 cosmetics 38618dfc4c6f factorize and unify GetAlpha() between the C and SSE2 version 38626d0e66c2 prepare experimentation with yuv444 / 422 386379cc49f5 add a --enable-experimental option to './configure' 3864d7575238 sse2 version of CollectHistogram() 3865c1c728d6 add an extra #ifdef WEBP_EXPERIMENTAL_FEATURES to avoid 'unused variable' warning 386660c61d2d always call VP*EncDeleteAlpha() unconditionnally, for simplicity 38670f8c6384 simply don't call WriteExtensions() if WEBP_EXPERIMENTAL_FEATURES is not defined 386847c661d5 rename swap -> swap_rb 386910d55bbb move chunk[] declaration out of the for() loop 3870517cec21 fix indentation 3871f7d9e261 fix merge problems 38728fd42b3a add a stride 'a_stride' for the alpha plane 3873b8dcbf2f fix alpha-plane copy and crop methods 3874cdef89de fix some 'unused variable' warning 3875fb29c262 SSE2 version of the fwd transform and the squared sum metric 38762ab4b72f EXPERIMENTAL: add support for alpha channel 3877cfbf88a6 add SSE2 functions. ~2x faster encoding on average. 3878e7ff3f9a merge two ITransforms together when applicable and change the TTransform to return the sum directly. 3879ca554137 fix WebPIDecGetRGB() to accept any RGB(A) mode, not just MODE_RGB 38808aa50efd fix some 'man' typos 3881d3f3bdda update ChangeLog (tag: v0.1.2) 3882d7e9a69c update contributor list 3883261abb8e add a 'superclean' section 3884276ae825 Remove files not mean to be in git, and update .gitignore 388524868455 build: prepare libwebp.pc 388614ceb6e8 add "-version" description to man pages 3887b247a3b2 Create the m4 directory, and also place .gitignore in there for libtool. 3888cdd734c9 Resolve automake warnings 3889c5fa726e build: add pkgconfig files 3890b20aaca2 build: just use autoreconf, avoid calling tools manually 38914b0b0d66 cwebp: use modern functions 3892efbc6c41 update Android.mk 38937777570b better version of ChangeLog 3894fa70d2b7 update version number in the DOC 3895f8db5d5d more C89-fixes 38960de013b3 fix typos 3897650ffa3b add version getters for decoder and encoder 3898be4867d2 doc for incremental decoding 389956732a1b add idec.obj in MSVC makefile 3900208afb5e add c++ guards 39018bf76fe0 add incremental decoding 39021f288328 'inline' isn't defined in strict ansi c89 39038b77c632 move the quantization function to dsp.c 3904b2c3575c add a 'last_y' field to WebPDecParams 39052654c3da correctly pass along the exact same status returned from ParsePartitions 39064704146a add missing precision in the man 39076d978a6c add error messages 39086463e6ab add some install instructions, and fix intel-mac flags 390905fb7bfc Merge ".gitignore: initial version" 3910c33f0195 .gitignore: initial version 3911e532b9ab Makefile: allow out of tree builds 39124c0da7aa enable sparse dc/ac transforms 391307dbb8d5 clarify the return logic 39145c69e1bb fix bigger-by-1 array 39157c5267e3 fix a (harmless) typo: non_zero_ -> non_zero_ac_ 3916bc752135 fix missing free() 3917af3e2aaa remove trailing spaces 391813e50da6 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. 3919f4888f77 emit 9 - nb_bits trailing zeros instead of 8 39203db65255 separate block-parsing into a visible VP8DecodeMB() 3921a871de02 add missing extern "C" 3922b3ce8c52 remove a gcc warning about type pun by using a proper union'd type 3923e1863715 update after addition of webpi.h 39243e856e2d Extract some useful functions around decoding buffer WebPDecParams. 3925d5bc05a4 make the filtering process match libvpx and ffvp8 3926dd60138d add man pages for cwebp(1) and dwebp(1) 3927c4fa3644 fix header 39285b70b378 * add an option to bypass_filtering in VP8Io. 3929b97a4003 simplify QuantizeBlock code a bit 393084b58ebb add more checks around picture allocation 3931b65a3e10 remove absolute_delta_ field and syntax code 39320744e842 Dont' open output file until we're sure the input file is valid 3933d5bd54c7 fix typo and buggy line 3934f7a9549d Add a simple top-level makefile.unix for quick & easy build. 39355f36b944 update the doc for the -f option 3936f61d14aa a WebP encoder converts PNG & JPEG to WebP 393781c96621 oops: forgotten call to Initialize() + move the error message to a more useful place 393887ffa005 typo: fix a missing 'R', was confusing. 3939b04b857a * add decoding measurement using stopwatch.h (use -v option) * support PNG output through WIC on Win32 3940746a4820 * make (*put)() hook return a bool for abort request. * add an enum for VP8Status() to make things clearer 394173c973e6 * strengthen riff/chunk size checks * don't consider odd-sized chunks being an error 39421dc4611a add support for PNG output (default) regularize include guards 3943860641df fix a typo: sizeof(kYModeProbaInter0) => sizeof(kUVModeProbaInter0) 39443254fc52 fix some petty constness fix the ./configure file too 3945504d3393 fix eof_ mis-initialization 39462bc0778f leftover Makefile.* from previous commit 3947d2cf04e4 move Makefile.am one level below, to src/dec fix typos here and there dwebp is now an installed program 3948ade92de8 typo: vp8.h -> decode_vp8.h 3949d7241241 forgot to declare types.h to be installed 39506421a7a4 move the decoder sourcetree to a sub-location src/dec to make room for future libs sources 3951a9b3eab6 correct layout name is IMC4. 39522330522c handle corner case of zero-dimensions 3953280c3658 make VP8Init() handle short buffers (< 2 bytes) correctly 3954b1c9e8b4 handle error cases more robustly 39550e94935c Merge "table-less version of clip_8b()" 39561e0a2d25 table-less version of clip_8b() 3957e12109ee dwebp: change -yuv option to -raw change the layout to IMC2 3958d72180a4 speed-up fancy upscaler 39599145f3bc reset eof_ at construction time 3960a7ee0559 simplify the logic of GetCoeffs() 3961f67b5939 lot of cosmetics 3962ea27d7c6 fix endian problem on PowerPC 3963beb0a1ba fix signature of VP8StoreBlock 3964b128c5e2 Merge "fancy chroma upscaling" 39656a37a2aa fancy chroma upscaling 3966ff565edc fix two numeric typos 39675a936a0a use uintptr_t for casting pointers to ints 3968e14a0301 for cross_compiling=yes to prevent executing any binary 396983b545ee add vc9+ makefile 3970296f6914 fix output loop for small height 3971cbfbb5c3 convert to plain-C 3972f09f96ee Fix declaration after statement warning 39735981ee55 Fix UV plane ac/dc quantizer transposition 3974c8d15efa convert to ANSI-C 3975c3f41cb4 Initial commit 3976