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