• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
12ad0916d update NEWS
21287362b bump version to 1.0.3
37b968cc2 update AUTHORS
49d6988f4 Fix the oscillating prediction problem at low quality
5312f74d0 makefile.unix: allow *_LIBS to be overridden w/EXTRA_LIBS
692dbf237 filters_sse2,cosmetics: shorten some long lines
7a277d197 filters_sse2.c: quiet integer sanitizer warnings
8804540f1 Fix cpufeatures in CMake.
9bf00c15b Add CMake option for bittrace.
10a788b498 filters_sse2.c: quiet integer sanitizer warnings
11e6a92c5e filters.c: quiet integer sanitizer warnings
12ec1cc40a lossless.c: remove U32 -> S8 conversion warnings
131106478f remove conversion U32 -> S8 warnings
14812a6b49 lossless_enc: fix some conversion warning
154627c1c9 lossless_enc,TransformColorBlue: quiet uint32_t conv warning
16c84673a6 lossless_enc_sse{2,41}: quiet signed conv warnings
17776a7757 dec_sse2: quiet signed conv warnings
18bd39c063 Merge "thread_utils: release mutex before signaling"
190550576f Merge "(alpha_processing,enc}_sse2: quiet signed conv warnings"
206682f2c4 thread_utils: release mutex before signaling
21e78dea75 (alpha_processing,enc}_sse2: quiet signed conv warnings
229acf18ba iosbuild.sh: add WebP{Demux,Mux}.framework
23b9be7e65 vwebp: remove the -fit option (and make it default)
241394a2bb Merge "README.webp_js: update Emscripten.cmake note"
25dd3e7f8a README.webp_js: update Emscripten.cmake note
2632cf8801 predictor_enc,GetBestGreenRedToBlue: quiet implicit conv warnings
27e1c8acb5 Merge "vwebp: add a -fit option"
28cbd23dd5 vwebp: add a -fit option
292e672351 bit_writer_utils,Flush: quiet implicit conversion warnings
301326988d swig: update libwebp_python_wrap.c
310e7f8548 update generated swig files
3217ed1438 Merge "PutLE{16,24}: quiet implicit conversion warnings"
3324686538 PutLE{16,24}: quiet implicit conversion warnings
34153bb3a0 fix some clang-7 warnings:
35ab2dc893 Rescaler: fix rounding error
36aa65f89a HistogramCombineStochastic: fix free of uninit value
37af0bac64 Merge "encode.h: mention 'exact' default in WebPEncodeLossless*"
386d2e11ec encode.h: mention 'exact' default in WebPEncodeLossless*
398c3f04fe AndroidCPUInfo: reorder terms in conditional
40fcfd9c71 BitTrace: if BITTRACE is > 0, record and print syntax bits used
41067031ea Speedups for unused Huffman groups.
4201ac46ba libwebp: Display "libjpeg error:" in imageio/jpegdec
43d9a662e1 WebPRescalerGetScaledDimensions: round scaled dimension up
4462eb3f08 libwebp: Fix missing '{' in README
45e05f785a Merge "unicode,INIT_WARGV: add missing cast"
4663c9a69f tag the VP8LHashPix() function for potential uint roll-over
472b7214ab unicode,INIT_WARGV: add missing cast
48bf424b46 tag the GetPixPairHash64() function for potential uint roll-over
497d05d6ca Have the color cache computation be u32-bit only.
506bcf8769 Remove BINARYEN_METHOD in wasm settings.
512b98df90 update ChangeLog (tag: v1.0.2-rc1, tag: v1.0.2)
5261e372b7 update NEWS
537ae658a0 bump version to 1.0.2
5451c4907d update AUTHORS
55666bd6c6 man/cwebp.1: refine near-lossless text
56561cdce5 Clarify the doc about GetFeatures.
57aec2cf02 near_lossless: fix fuzzing-detected integer overflow
58928a75de webp: Fix VP8LBitWriterClone() bug
595173d4ee neon IsFlat
605b081219 IsFlat: inline when possible
61381b7b54 IsFlat: use int for thresh
626ed15ea1 fix unprobable leak in webp_sdl.c
6322bbb24e Merge "IsFlat: return int"
648b3fb238 Merge tag 'v1.0.1'
65f435de95 IsFlat: return int
6641521aed utils.h: only define WEBP_NEED_LOG_TABLE_8BIT when needed
679f4d4a3f neon: GetResidualCost
680fd7514b neon: SetResidualCoeffs
69f95a996c Simpler histogram clustering.
70e85d3313 update ChangeLog (tag: v1.0.1-rc2, tag: v1.0.1)
71fa8210e4 Fix pair update in stochastic entropy merging.
72fd198f73 add codereview.settings
73825389ac README.mux: add a reference to the AnimDecoder API
743be698c3 CMake: fix webp_js compilation
75485ff86f Fix pair update in stochastic entropy merging.
764cd0582d CMake: fix webp_js compilation
774cbb4caf update NEWS
78f5a5918d bump version to 1.0.1
79d61385db Speed-up: Make sure we only initialize histograms when needed.
806752904b Speed-up: Make sure we only initialize histograms when needed.
810c570316 update AUTHORS
82301a2dda img2webp: add help note about arguments from a file
83f0abab92 Speedups for empty histograms.
84f2dfd925 Split HistogramAdd to only have the high level logic in C.
8506b7bc7d Fix compilation on windows and clang-cl+ninja.
86b6284d82 img2webp: add help note about arguments from a file
87decf6f6b Speedups for empty histograms.
88dea3e899 Split HistogramAdd to only have the high level logic in C.
89632798ae Merge "Fix compilation on windows and clang-cl+ninja."
90dc1a9518 Merge "libwebp: Unicode command tools on Windows"
919cf9841b libwebp: Unicode command tools on Windows
9298179495 remove some minor TODOs
93a376e7b9 Fix compilation on windows and clang-cl+ninja.
94cbf82cc0 Remove AVX2 files.
955030e902 Merge "TIFF decoder: remove unused KINV definition"
96ac543311 Remove a few more useless #defines
97123d3306 TIFF decoder: remove unused KINV definition
98ef1094b0 Merge "- install pkg-config files during the CMake build"
99b911fbc9 libwebp: Remove duplicate GIFDisplayError in anim_util
100eee00b66 - install pkg-config files during the CMake build
101ac3ec8c9 Merge "Clean-up the common sources in dsp."
1023e13da7b Clean-up the common sources in dsp.
1035c395f1d libwebp: cmake-format all
104e7a69729 libwebp: Add extras targets in CMakeLists.txt
105e52485d6 libwebp: Rename macros in webpmux.c
10692dc0f09 clean-up MakeInputImageCopy()
10739952de2 VP8IteratorImport: add missing 'const'
108382af7a2 clean-up WebPBlendAlpha
10914d020f6 libwebp: Use ExUtilGet*() in anim_diff
1100d92ff25 libwebp: remove useless variable in gif2webp
111556cb1b4 Merge "CMake: Set WEBP_BUILD_GIF2WEBP to off"
112da26ee49 CMake: Set WEBP_BUILD_GIF2WEBP to off
113b2a867c0 cwebp: Don't premultiply during -resize if -exact
114637141bc pngdec: fix build w/libpng < 1.4.x
115bc5092b1 pngdec: set memory functions
11650d8345a Fix CMake math library.
1176aa3e8aa Fix math library on Visual Studio.
118d71df4e2 Fix math library finding in CMake.
119de08d727 cosmetics: normalize include guard comment
120009562b4 vwebp: Fix bug when Dispose then NoBlend frames
121423f2579 Fix up CMake to create targets.
122907208f9 Wait for all threads to be done in DecodeRemaining.
1234649b3c4 vwebp: Add background color display option
12478ad57a3 Fix bad glClearColor parameters
125da96d8d9 Allow for a non-initialized alpha decompressor in DoRemap.
1262563db47 fix rescaling rounding inaccuracy
127211f37ee fix endian problems in pattern copy
1285f0f5c07 Make sure partition #0 is read before VP8 data in IDecode.
129de98732b fix GetColorf() bug
1304338cd36 misc fixes in libwebpmux
131e00af13e fix signatures after a9ceda7ff1
132a9ceda7f Speed-up chunk list operations.
1332281bbf6 Merge "Better handling of bogus Huffman codes."
13439cb9aad Better handling of bogus Huffman codes.
13589cc9d37 Merge "fix read-overflow while parsing VP8X chunk"
13695fd6507 fix read-overflow while parsing VP8X chunk
1379e729fe1 Fix VP8IoTeardownHook being called twice on worker sync failure
13829fb8562 Merge "muxread,anmf: fail on multiple image chunks"
139eb82ce76 muxread,anmf: fail on multiple image chunks
1401344a2e9 fix alpha-filtering crash when image width is larger than radius
141be738c6d muxread,ChunkVerifyAndAssign: validate chunk_size
1422c70ad76 muxread,CreateInternal: fix riff size checks
143569001f1 Fix for thread race heap-use-after-free
144c56a02d9 Android.mk: use LOCAL_EXPORT_C_INCLUDES w/public libs
14515795596 CMakeLists.txt,cosmetics: normalize if() formatting
1461a44c233 Merge "cmake: add support for webpmux"
147e9569ad7 Merge "configure,*am,cosmetics: s/WANT_/BUILD_/"
14835c7de6f cmake: add support for webpmux
1490f25e61c WebpToSDL(): fix the return value in case of error
1505d8985de configure,*am,cosmetics: s/WANT_/BUILD_/
151895fd28f Merge "man/Makefile.am: add img2webp.1"
1525cf3e2af man/Makefile.am: add img2webp.1
1532a9de5b9 Add build rules for anim_diff & anim_dump utils.
15471ed73cf fix invalid check for buffer size
155af0e4fbb gif2webp: fix transcode of loop count=65535
156dce5d764 Limit memory allocation when reading invalid Huffman codes.
157f9df0081 Merge "cmake: quiet glut deprecation warnings on OS X"
158dc39b16f webpmux.1: correct grammar
159c7aa1264 cwebp.c: fix a missing \n
16053aa51e9 Merge tag 'v1.0.0'
161698b8844 update ChangeLog (tag: v1.0.0)
1628d510751 webp-container-spec: correct frame duration=0 note
163e6b2164e vwebp: Copy Chrome's behavior w/frame duration == 0
164094b3b28 cmake: quiet glut deprecation warnings on OS X
16571c39a06 webp-container-spec: correct frame duration=0 note
166fd3d5756 vwebp: Copy Chrome's behavior w/frame duration == 0
167b0c966fb Build vwebp from CMake.
168d20b7707 update ChangeLog (tag: v1.0.0-rc3)
1690d5fad46 add WEBP_DSP_INIT / WEBP_DSP_INIT_FUNC
170d77bf512 add WEBP_DSP_INIT / WEBP_DSP_INIT_FUNC
171c1cb86af fix 16b overflow in SSE2
172e577feb7 makefile.unix: add DEBUG flag for compiling w/ debug-symbol
17399be34b3 cwebp,get_disto: fix bpp output
174e122e511 cwebp,get_disto: fix bpp output
175f5565ca8 cmake: Make sure we use near-lossless by default.
176d898dc14 fix bug in WebPImport565: alpha value was not set
1771c8f358d Fix CMake with WASM.
178a0215fb7 webp_js: fix webp_js demo html
179882784b0 update ChangeLog (tag: v1.0.0-rc2)
1802f930e08 Revert "Use proper targets for CMake."
1818165e8fb Use proper targets for CMake.
1823f157dd5 Remove some very hard TODOs.
183abb47760 Merge "Use proper targets for CMake."
184cd758a17 {de,}mux/Makefile.am: add missing headers
185e155dda0 Use proper targets for CMake.
186b892b8ba makefile.unix,dist: use ascii for text output
18764a57d05 add -version option to anim_dump,anim_diff and img2webp
188994be82d Merge "Remove some very hard TODOs."
1894033e1d7 Remove some very hard TODOs.
190fc1b8e3a webp_js: fix webp_js demo html
19115aa48d9 update ChangeLog (tag: v1.0.0-rc1)
192e607dabc update AUTHORS
19338410c08 [CFI] Remove function pointer casts
194978eec25 [CFI] Remove function pointer casts
195c57b2736 bump version to 1.0.0
196cba28853 update NEWS
197c909d531 Merge "remove some deprecation warning on MacOSX"
198217443c7 remove some deprecation warning on MacOSX
199b672bdfa configure: quiet glut deprecation warnings on OS X
200daa9fcaf configure: use sdl-config if available
201dd174cae Merge "imagedec: support metadata reading for WebP image decoding"
202641cedcc imagedec: support metadata reading for WebP image decoding
203065b2ce1 anim_diff: add a couple missing newlines in Help()
204c4cc1147 Merge "gif2webp: force low duration frames to 100ms"
20509333097 gif2webp: force low duration frames to 100ms
206e03f0ec3 sharp_yuv: use 14b fixed-point precision for gamma
207b2db361c image_enc,WebPWritePNG: move locals after setjmp
20874e82ec6 Merge "WebPPictureDistortion: fix big-endian results order"
209645d04ca Merge "cwebp,get_disto: report bpp"
210120f58c3 Merge "lossless*sse2: improve non-const 16-bit vector creation"
211a7fe9412 WebPPictureDistortion: fix big-endian results order
212e26fe066 cwebp,get_disto: report bpp
2139df64e28 Merge changes Id5b4a1a4,Ia20ce844
2148043504f lossless*sse2: improve non-const 16-bit vector creation
2151e3dfc48 Import: extract condition from loop
2163b07d327 Import,RGBA: fix for BigEndian import
217551948e4 Remove unused argument in VP8LBitsEntropy.
2183005237a ReadWebP: fix for big-endian
219499c395a Merge "anim_diff: expose the -max_diff option"
220f69dcd69 Merge "remove WEBP_EXPERIMENTAL_FEATURES"
22107d884d5 anim_diff: expose the -max_diff option
222f4dd9256 remove WEBP_EXPERIMENTAL_FEATURES
22394a8377b extract the command-line parsing helpers to example_util
224fc09e6e2 PNM decoder: prevent unsupported depth=2 PAM case.
2256de58603 MIPS64: Fix defined-but-not-used errors with WEBP_REDUCE_CSP
226cbde5728 gif2webp: add support for reading from stdin
227cf1c5054 Add an SSE4 version of some lossless color transforms.
22845a8b5eb Fix lint error with man page.
229cff38e8f Merge "PNG decoder: handle gAMA chunk"
23059cb1a48 Merge "enable dc error-diffusion always"
23178318b30 PNG decoder: handle gAMA chunk
232664c21dd Merge "remove some TODOs"
233815652de enable dc error-diffusion always
234aec45cec remove some TODOs
2355715dfce fix block-count[] increment in case of large image
236c2d04f3e enable DC error-diffusion always for multi-pass
23796bf07c5 use DC error diffusion for U/V at low-quality
2381c59020b fix missing sse41 targets in makefile.unix
2397a8e814b cosmetics: s/color_space/colorspace/
24005f6fe24 upsampling: rm asserts w/REDUCE_CSP+OMIT_C_CODE
241b4cf5597 Merge "Upsampling SSE2/SSE4 speedup."
242ccbeb32c Makefile.vc: add missing sse41 files
24355403a9a Upsampling SSE2/SSE4 speedup.
244807b53c4 Implement the upsampling/yuv functions in SSE41
24584101a81 Fix wasm WebP compilation
2468bebd2a3 fix warning on MSVC
247a7f93fe3 webpmux: allow reading argument from a file
248b69f18a7 gif2webp.1: fix -loop_compatibility layout
24972d530c0 Merge "fix lossless decoding w/WEBP_REDUCE_SIZE"
250296c7dc4 fix lossless decoding w/WEBP_REDUCE_SIZE
2510d5d029c Merge "ImgIoUtilReadFile: fix file leak upon error"
252ae568ce7 ImgIoUtilReadFile: fix file leak upon error
253796b5a8a Merge tag 'v0.6.1'
2546b7a95fd update ChangeLog (tag: v0.6.1)
255f66955de WEBP_REDUCE_CSP: restrict colorspace support
2561af0df76 Merge "WEBP_REDUCE_CSP: restrict colorspace support"
2576de20df0 WEBP_REDUCE_CSP: restrict colorspace support
258a289d8e7 update ChangeLog (tag: v0.6.1-rc2)
259c10a493c vwebp: disable double buffering on windows & mac
2600d4466c2 webp_to_sdl.c: fix file mode
2611b27bf8b WEBP_REDUCE_SIZE: disable all rescaler code
262126be109 webpinfo: add -version option
2630df22b9e WEBP_REDUCE_SIZE: disable all rescaler code
2649add62b5 bump version to 0.6.1
265d3e26144 update NEWS
2662edda639 README: add webpinfo section
2679ca568ef Merge "right-size some tables"
26831f1995c Merge "SSE2 implementation of HasAlphaXXX"
269a80c46bd SSE2 implementation of HasAlphaXXX
270083507f2 right-size some tables
2712e5785b2 anim_utils.c: remove warning when !defined(WEBP_HAVE_GIF)
272b299c47e add WEBP_REDUCE_SIZE
273f593d71a enc: disable pic->stats/extra_info w/WEBP_DISABLE_STATS
274541179a9 Merge "predictor_enc: fix build w/--disable-near-lossless"
2755755a7ec predictor_enc: fix build w/--disable-near-lossless
276eab5bab7 add WEBP_DISABLE_STATS
2778052c585 remove some petty TODOs from vwebp.
278c245343d move LOAD8x4 and STORE8x2 closer to their use location
279b9e734fd dec,cosmetics: normalize function naming style
280c188d546 dec: harmonize function suffixes
28128c5ac81 dec_sse41: harmonize function suffixes
282e65b72a3 Merge "introduce WebPHasAlpha8b and WebPHasAlpha32b"
283b94cee98 dec_sse2: remove HE8uv_SSE2
28444a0ee3f introduce WebPHasAlpha8b and WebPHasAlpha32b
285aebf59ac Merge "WebPPictureAllocARGB: align argb allocation"
286c184665e WebPPictureAllocARGB: align argb allocation
2873daf7509 WebPParseHeaders: remove obsolete animation TODO
28880285d97 cmake: avoid security warnings under msvc
289650eac55 cmake: don't set -Wall with MSVC
290c462cd00 Remove useless code.
29101a98217 Merge "remove WebPWorkerImpl declaration from the header"
2923c49fc47 Merge "thread_utils: fix potentially bad call to Execute"
293fde2782e thread_utils: fix potentially bad call to Execute
2942a270c1d remove WebPWorkerImpl declaration from the header
295f1f437cc remove mention of 'lossy-only parameters' from the doc
2963879074d Merge "WebPMemToUint32: remove ptr cast to int"
29704b029d2 WebPMemToUint32: remove ptr cast to int
298b7971d0e dsp: avoid defining _C functions w/NEON builds
2996ba98764 webpdec: correct alloc size check w/use_argb
3005cfb3b0f normalize include guards
301f433205e Merge changes Ia17c7dfc,I75423abb,Ia2f716b4,I161caa14,I4210081a, ...
3028d033b14 {dec,enc}_neon: harmonize function suffixes x2
3030295e981 upsampling_neon: harmonize function suffixes
304d572c4e5 yuv_neon: harmonize function suffixes
305ab9c2500 rescaler_neon: harmonize function suffixes
30693e0ce27 lossless_neon: harmonize function suffixes
30722fbc50e lossless_enc_neon: harmonize function suffixes
308447875b4 filters_neon,cosmetics: fix indent
309e51bdd43 remove unused VP8TokenToStats() function
310785da7ea enc_neon: harmonize function suffixes
311bc1a251f dec_neon: harmonize function suffixes
31261e535f1 dsp/lossless: workaround gcc-4.8 bug on arm
31368b2eab7 cwebp: fix alpha reporting w/lossless & metadata
31430042faa WebPDemuxGetI: add doc details around WebPFormatFeature
3150a17f471 Merge "WIP: list includes as descendants of the project dir"
316a4399721 WIP: list includes as descendants of the project dir
31708275708 Merge "Make sure we reach the full range for alpha blending."
318d361a6a7 yuv_sse2: harmonize function suffixes
3196921aa6f upsampling_sse2: harmonize function suffixes
32008c67d3e ssim_sse2: harmonize function suffixes
321582a1b57 rescaler_sse2: harmonize function suffixes
3222c1b18ba lossless_sse2: harmonize function suffixes
3230ac46e81 lossless_enc_sse2: harmonize function suffixes
324bc634d57 enc_sse2: harmonize function suffixes
325bcb7347c dec_sse2: harmonize function suffixes
326e14ad93c Make sure we reach the full range for alpha blending.
3277038ca8d demux,StoreFrame: restore hdr size check to min req
328fb3daad6 cpu: fix ssse3 check
329be590e06 Merge "Fix CMake redefinition for HAVE_CPU_FEATURES_H"
33035f736e1 Fix CMake redefinition for HAVE_CPU_FEATURES_H
331a5216efc Fix integer overflow warning.
332a9c8916b decode.h,WebPIDecGetRGB: clarify output ptr validity
3333c74c645 gif2webp: handle 1-frame case properly + fix anim_diff
334c7f295d3 Merge "gif2webp: introduce -loop_compatibility option"
335b4e04677 gif2webp: introduce -loop_compatibility option
336f78da3de add LOCAL_CLANG_PREREQ and avoid WORK_AROUND_GCC w/3.8+
33701c426f1 define WEBP_USE_INTRINSICS w/gcc-4.9+
3388635973d use sdl-config (if available) to determine the link flags
339e9459382 use CPPFLAGS before CFLAGS
3404a9d788e Merge "Android.mk,mips: fix clang build with r15"
3414fbdc9fb Android.mk,mips: fix clang build with r15
342a80fcc4a ifdef code not used by Chrome/Android.
3433993af12 Fix signed integer overflows.
344f66f94ef anim_dump: small tool to dump frames from animated WebP
3456eba857b Merge "rationalize the Makefile.am"
346c5e34fba function definition cleanup
3473822762a rationalize the Makefile.am
348501ef6e4 configure style fix: animdiff -> anim_diff
349f8bdc268 Merge "protect against NULL dump_folder[] value in ReadAnimatedImage()"
35023bfc652 protect against NULL dump_folder[] value in ReadAnimatedImage()
3518dc3d71b cosmetics,ReadAnimatedWebP: correct function comment
3525bd40066 Merge changes I66a64a0a,I4d2e520f
3537945575c cosmetics,webpinfo: remove an else after a return
3548729fa11 cosmetics,cwebp: remove an else after a return
355f324b7f9 cosmetics: normalize fn proto & decl param names
356869eb369 CMake cleanups.
357289e62a3 Remove declaration of unimplemented VP8ApplyNearLosslessPredict
35820a94186 pnmdec,PAM: validate depth before calculating bytes_per_px
35934130afe anim_encode: fix integer overflow
36042c79aa6 Merge "Encoder: harmonize function suffixes"
361b09307dc Encoder: harmonize function suffixes
362bed0456d Merge "SSIM: harmonize the function suffix"
36354f6a3cf lossless_sse2.c: fix some missed suffix changes
364088f1dcc SSIM: harmonize the function suffix
36586fc4dd9 webpdec: use ImgIoUtilCheckSizeArgumentsOverflow
36608ea9ecd imageio: add ability restrict max image size
3676f9daa4a jpegdec,ReadError: fix leaks on error
368a0f72a4f VP8LTransformColorFunc: drop an non-respected 'const' from the signature.
3698c934902 Merge "Lossess dec: harmonize the function suffixes"
370622242aa Lossess dec: harmonize the function suffixes
3711411f027 Lossless Enc: harmonize the function suffixes
37224ad2e3c add const to two variables
37346efe062 Merge "Allow the lossless cruncher to work for alpha."
3748c3f9a47 Speed-up LZ77.
3751aef4c71 Allow the lossless cruncher to work for alpha.
376b8821dbd Improve the box LZ77 speed.
3777beed280 add missing ()s to macro parameters
3786473d20b Merge "fix Android standalone toolchain build"
379dcefed95 Merge "build.gradle: fix arm64 build"
3800c83a8bc Merge "yuv: harmonize suffix naming"
381c6d1db4b fix Android standalone toolchain build
382663a6d9d unify the ALTERNATE_CODE flag usage
38373ea9f27 yuv: harmonize suffix naming
384c71b68ac build.gradle: fix arm64 build
385c4568b47 Rescaler: harmonize the suffix naming
3866cb13b05 Merge "alpha_processing: harmonize the naming suffixes to be _C()"
38783a3e69a Merge "simplify WEBP_EXTERN macro"
3887295fde2 Merge "filters: harmonize the suffixes naming to _SSE2(), _C(), etc."
3898e42ba4c simplify WEBP_EXTERN macro
390331ab34b cost*.c: harmonize the suffix namings
391b161f670 filters: harmonize the suffixes naming to _SSE2(), _C(), etc.
392dec5e4d3 alpha_processing: harmonize the naming suffixes to be _C()
3936878d427 fix memory leak in SDL_Init()
394461ae555 Merge "configure: fix warnings in sdl check"
39562486a22 configure: test for -Wundef
39692982609 dsp.h: fix -Wundef w/__mips_dsp_rev
3970265cede configure: fix warnings in sdl check
39888c73d8a backward_references_enc.h: fix WINDOW_SIZE_BITS check
3994ea49f6b rescaler_sse2.c: fix WEBP_RESCALER_FIX -> _RFIX typo
4001b526638 Clean-up some CMake
40187f57a4b Merge "cmake: fix gif lib detection when cross compiling"
402b34a9db1 cosmetics,dec_sse2: remove some redundant comments
403471c5755 cmake: fix gif lib detection when cross compiling
404c793417a cmake: disable gif2webp if gif lib isn't found
405dcbc1c88 cmake: split gif detection from IMG deps
40666ad84f0 Merge "muxread: remove unreachable code"
40750ec3ab7 muxread: remove unreachable code
4087d67a164 Lossy encoding: smoothen transparent areas to improve compression
409e50650c7 Merge "fix signature for DISABLE_TOKEN_BUFFER compilation"
410671d2567 fix signature for DISABLE_TOKEN_BUFFER compilation
411d6755580 cpu.cmake: use unique flag to test simd disable flags
41228914528 Merge "Remove the argb* files."
4138acb4942 Remove the argb* files.
4143b62347b README: correct cmake invocation note
4157ca0df13 Have the SSE2 version of PackARGB use common code.
4167b250459 Merge "Re-use the transformed image when trying several LZ77 in lossless."
417e132072f Re-use the transformed image when trying several LZ77 in lossless.
4185d7a50ef Get code to compile in C++.
4197b012987 configure: test for -Wparentheses-equality
420f0569adb Fix man pages for multi-threading.
421f1d5a397 multithread cruncher: only copy stats when picture->stats != NULL
422f8c2ac15 Multi-thread the lossless cruncher.
423a88c6522 Merge "Integrate a new LZ77 looking for matches in the neighborhood of a pixel only."
4248f6df1d0 Unroll Predictors 10, 11 and 12.
425355c3d1b Integrate a new LZ77 looking for matches in the neighborhood of a pixel only.
426a1779a01 Refactor LZ77 handling in preparation for a new method.
42767de68b5 Android.mk/build.gradle: fix mips build with clang from r14b
428f209a548 Use the plane code and not the distance when computing statistics.
429b903b80c Split cost-based backward references in its own file.
430498cad34 Cosmetic changes in backward reference.
431e4eb4587 lossless, VP8LTransformColor_C: make sure no overflow happens with colors.
432af6deaff webpinfo: handle alpha flag mismatch
4337caef29b Fix typo that creeped in.
43439e19f92 Merge "near lossless: fix unsigned int overflow warnings."
4359bbc0891 near lossless: fix unsigned int overflow warnings.
436e1118d62 Merge "cosmetics,FindClosestDiscretized: use uint in mask creation"
437186bc9b7 Merge "webpinfo: tolerate ALPH+VP8L"
438b5887297 cosmetics,FindClosestDiscretized: use uint in mask creation
439f1784aee near_lossless,FindClosestDiscretized: use unsigned ops
4400d20abb3 webpinfo: tolerate ALPH+VP8L
441972104b3 webpmux: tolerate false positive Alpha flag
442dd7e83cc tiffdec,ReadTIFF: ensure data_size is < tsize_t max
443d988eb7b tiffdec,MyRead: quiet -Wshorten-64-to-32 warning
444dabda707 webpinfo: add support to parse Alpha bitstream
4454c117643 webpinfo: correct background color output, BGRA->ARGB
446defc98d7 Doc: clarify the role of quality in WebPConfig.
447d78ff780 Merge "Fix code to compile with C++."
448c8f14093 Fix code to compile with C++.
449497dc6a7 pnmdec: sanitize invalid header output
450d78e5867 Merge "configure: test for -Wconstant-conversion"
451481e91eb Merge "pnmdec,PAM: set bytes_per_px based on depth when missing"
45293b12753 configure: test for -Wconstant-conversion
453645f0c53 pnmdec,PAM: set bytes_per_px based on depth when missing
454e9154605 Merge "vwebp: activate GLUT double-buffering"
455818d795b vwebp: activate GLUT double-buffering
456d63e6f4b Add a man page for webpinfo
4574d708435 Merge "NEON: implement ConvertRGB24ToY/BGR24/ARGB/RGBA32ToUV/ARGBToUV"
458faf42213 NEON: implement ConvertRGB24ToY/BGR24/ARGB/RGBA32ToUV/ARGBToUV
459b4d576fa Install man pages with CMake.
460cbc1b921 webpinfo: add features to parse bitstream header
461e644c556 Fix bad bit writer initialization.
462b62cdad2 Merge "Implement a cruncher for lossless at method 6."
463da3e4dfb use the exact constant for the gamma transfer function
464a9c701e0 Merge "tiffdec: fix EXTRASAMPLES check"
465adab8ce0 Implement a cruncher for lossless at method 6.
4661b92b237 Merge "Fix VP8ApplyNearLossless to respect const and stride."
4671923ff02 tiffdec: fix EXTRASAMPLES check
46897cce5ba tiffdec: only request EXTRASAMPLES w/> 3 samples/px
4690dcd85b6 Fix VP8ApplyNearLossless to respect const and stride.
470f7682189 yuv: rationalize the C/SSE2 function naming
47152245424 NEON implementation of some Sharp-YUV420 functions
472690efd82 Avoid several backward reference copies.
4734bb1f607 src/dec/vp8_dec.h, cosmetics: fix comments
474285748be cmake: build/install webpinfo
47578fd199c backward_references_enc.c: clear -Wshadow warnings
476ae836410 WebPLog2FloorC: clear -Wshadow warning
477d0b7404e Merge "WASM support"
478134e314f WASM support
479c08adb6f Merge "VP8LEnc: remove use of BitsLog2Ceiling()"
48028c37ebd VP8LEnc: remove use of BitsLog2Ceiling()
4812cb58ab2 webpinfo: output format as a human readable string
482bb175a93 Merge "rename some symbols clashing with MSVC headers"
48339eda658 Remove a duplicated pixel hash implementation.
48436b8274d rename some symbols clashing with MSVC headers
485274daf54 Add webpinfo tool.
486ec5036e4 add explicit reference to /usr/local/{lib,inc}
48718f0dfac Merge "fix TIFF encoder regarding rgbA/RGBA"
4884e2b0b50 Merge "webpdec.h: fix a doc typo"
489e2eeabff Merge "Install binaries, libraries and headers in CMake."
490836607e6 webpdec.h: fix a doc typo
4919273e441 fix TIFF encoder regarding rgbA/RGBA
49217e3c11f Add limited PAM decoding support
4935f624871 Install binaries, libraries and headers in CMake.
494976adac1 Merge "lossless incremental decoding: fix missing eos_ test"
495f8fad4fa lossless incremental decoding: fix missing eos_ test
49627415d41 Merge "vwebp_sdl: fix the makefile.unix"
49749566182 Merge "ImgIoUtilWriteFile(): use ImgIoUtilSetBinaryMode"
4986f75a51b Analyze the transform entropy on the whole image.
499a5e4e3af Use palette only if we can in entropy analysis.
50075a9c3c4 Improve compression by better entropy analysis.
50139cf6f4f vwebp_sdl: fix the makefile.unix
502699b0416 ImgIoUtilWriteFile(): use ImgIoUtilSetBinaryMode
5037d985bd1 Fix small entropy analysis bug.
5046e7caf06 Optimize the color cache size.
505833c9219 More efficient stochastic histogram merge.
5065183326b Refactor the greedy histogram merge.
50799f6f462 Merge "histogram_enc.c,MyRand: s/ul/u/ for unsigned constants"
50880a22186 ssim.c: remove dead include
509a128dfff histogram_enc.c,MyRand: s/ul/u/ for unsigned constants
510693bf74e move the SSIM calculation code in ssim.c / ssim_sse2.c
51110d791ca Merge "Fix the random generator in HistogramCombineStochastic."
512fa63a966 Fix the random generator in HistogramCombineStochastic.
51316be192f VP8LSetBitPos: remove the eos_ setting
514027151ca don't erase the surface before blitting.
5154105d565 disable WEBP_USE_XXX optimisations when EMSCRIPTEN is defined
5169ee32a75 Merge "WebP-JS: emscripten-based Javascript decoder"
517ca9f7b7d WebP-JS: emscripten-based Javascript decoder
518868aa690 Perform greedy histogram merge in a unified way.
5195b393f2d Merge "fix path typo for vwebp_sdl in Makefile.vc"
520e0012bea CMake: only use libwebpdecoder for building dwebp
52184c2a7b0 fix path typo for vwebp_sdl in Makefile.vc
5221b0e4abf Merge "Add a flag to disable SIMD optimizations."
52332263250 Add a flag to disable SIMD optimizations.
524b494fdec optimize the ARGB->ARGB Import to use memcpy
525f1536039 Merge "ReadWebP: decode directly into a pre-allocated buffer"
526e69ed291 ReadWebP: decode directly into a pre-allocated buffer
52757d8de8a Merge "vwebp_sdl: simple viewer based on SDL"
5285cfd4ebc LZ77 interval speedups. Faster, smaller, simpler.
5291e7ad88b PNM header decoder: add some basic numerical validation
53017c7890c Merge "Add a decoder only library for WebP in CMake."
531be733786 Merge "Add clang build fix for MSA"
53203cda0e4 Add a decoder only library for WebP in CMake.
533aa893914 Add clang build fix for MSA
53431a92e97 Merge "imageio: add limited PNM support for reading"
535dcf9d82a imageio: add limited PNM support for reading
5366524fcd6 vwebp_sdl: simple viewer based on SDL
5376cf24a24 get_disto: fix reference file read
53843d472aa Merge tag 'v0.6.0'
53950d1a848 update ChangeLog (tag: v0.6.0, origin/0.6.0)
54020a7fea0 extras/Makefile.am: fix libwebpextras.la reference
541415f3ffe update ChangeLog (tag: v0.6.0-rc3)
5423c6d1224 update NEWS
543ee4a4141 update AUTHORS
54432ed856f Fix "all|no frames are keyframes" settings.
5451c3190b6 Merge "Fix "all|no frames are keyframes" settings."
546f4dc56fd disable GradientUnfilter_NEON
5474f3e3bbd disable GradientUnfilter_NEON
5482dc0bdca Fix "all|no frames are keyframes" settings.
5490d8e0588 img2webp: treat -loop as a no-op w/single images
550b0450139 ReadImage(): restore size reporting
5510ad3b4ef update ChangeLog (tag: v0.6.0-rc2)
5526451709e img2webp,get_disto: fix image decode w/WIC builds
55392504d21 get_disto: make ReadPicture() return a bool
554c3e4b3a9 update NEWS
5553363eb6d man/img2webp.1: fix formatting warning
5564d1312f2 update NEWS
55736c42ea4 bump version to 0.6.0
558bb498a51 update AUTHORS
55984cef16f Makefile.vc: fix CFG=debug-dynamic build
560919f9e2f Merge "add .rc files for windows dll versioning"
561f1ae8af4 Merge ".gitignore: add img2webp"
5624689ce16 cwebp: add a -sharp_yuv option for 'sharp' RGB->YUV conversion
56379bf46f1 rename the pretentious SmartYUV into SharpYUV
564eb1dc89a silently expose use_delta_palette in the WebPConfig API
565c85b0dde .gitignore: add img2webp
56643d3f01a add .rc files for windows dll versioning
567668e1dd4 src/{dec,enc,utils}: give filenames a unique suffix
5680e6b7f33 Merge "iosbuild.sh: only add required headers to framework"
56929ed6f9a iosbuild.sh: only add required headers to framework
57071c53f1a NEON: speed-up strong filtering
57173f567ea Merge "get_disto: remove redundant reader check"
5729e14276f Merge "makefiles: prune get_disto & webp_quality deps"
57399965bac Merge "Makefile.vc: add get_disto.exe, webp_quality.exe"
574d4912238 get_disto: remove redundant reader check
575ea482409 makefiles: prune get_disto & webp_quality deps
5762ede5a19 Makefile.vc: add get_disto.exe, webp_quality.exe
577a345068a ARM: speed up bitreader by avoiding tables
5781dc82a6b Merge "introduce a generic GetCoeffs() function pointer"
5798074b89e introduce a generic GetCoeffs() function pointer
580749a45a5 Merge "NEON: implement alpha-filters (horizontal/vertical/gradient)"
58174c053b5 Merge "NEON: fix overflow in SSE NxN calculation"
5820a3aeff7 Merge "dsp: WebPExtractGreen function for alpha decompression"
5831de931c6 NEON: implement alpha-filters (horizontal/vertical/gradient)
5849b3aca40 NEON: fix overflow in SSE NxN calculation
5851c07a3c6 dsp: WebPExtractGreen function for alpha decompression
5869ed5e3e5 use pointers for WebPRescaler's in WebPDecParams
587db013a8d Merge "ARM: don't use USE_GENERIC_TREE"
588fcd4784d use a 8b table for C-version for clz()
589fbb5c473 ARM: don't use USE_GENERIC_TREE
5908fda5612 Merge "add a kSlowSSSE3 feature for CPUInfo"
59186bbd245 add a kSlowSSSE3 feature for CPUInfo
5927c2779e9 Get code to fully compile in C++.
593250c3586 Merge "When compiling as C++, avoid narrowing warnings."
594c0648ac2 When compiling as C++, avoid narrowing warnings.
5950d55f60c 40% faster ApplyAlphaMultiply_SSE2
59649d0280d NEON: implement several alpha-processing functions
59748b1e85f SSE2: 15% faster alpha-processing functions
598e3b8abbc fix warning from static analysis.
59928fe054e SSE2: 30% faster ApplyAlphaMultiply()
600f44acd25 Merge "Properly compute the optimal color cache size."
601527844fe Properly compute the optimal color cache size.
602be0ef639 fix a comment typo
6038874b162 Fix a non-deterministic color cache size computation.
604d712e20d Do not allow a color cache size bigger than the number of colors.
605ecff04f6 re-introduce some comments in Huffman Cost.
606259e9828 replace 'ptr + y * stride' by 'ptr += stride'
60700b08c88 Merge "NEON: 5% faster conversion to RGB565 and RGBA4444"
6080e7f4447 Merge "NEON: faster fancy upsampling"
609b016cb91 NEON: faster fancy upsampling
6101cb63801 Call the C function to finish off lossless SSE loops only when necessary.
611875fafc1 Implement BundleColorMap in SSE2.
6123674d49e Merge "remove Clang warnings with unused arch arguments."
613f04eb376 Merge tag 'v0.5.2'
614341d711c NEON: 5% faster conversion to RGB565 and RGBA4444
615abb54827 remove Clang warnings with unused arch arguments.
616ece9684f update ChangeLog (tag: v0.5.2-rc2, tag: v0.5.2, origin/0.5.2)
617aa7744ca anim_util: quiet implicit conv warnings in 32-bit
618d9120271 jpegdec: correct ContextFill signature
61924eb3940 Remove some errors when compiling the code as C++.
620a4a8e5f3 vwebp: clear canvas during resize w/o animation
62167c25ad5 vwebp: clear canvas during resize w/o animation
622a4bbe4b3 fix indentation
62331ca2a80 tiffdec: restore libtiff 3.9.x compatibility
624b2f77b57 update NEWS
6255ab6d9de AnimEncoder: avoid freeing uninitialized memory pointer.
626f29bf582 WebPAnimEncoder: If 'minimize_size' and 'allow_mixed' on, try lossy + lossless.
6273ebe1c00 AnimEncoder: avoid freeing uninitialized memory pointer.
628df780e0e fix a potential overflow with MALLOC_LIMIT
62958fc5078 Merge "PredictorSub: implement fully-SSE2 version"
6309cc42167 PredictorSub: implement fully-SSE2 version
6310aa1f35c remove dependency of imageio/ to stopwatch.h
632cb9ec84b Merge "remove the dependency to stop_watch.[ch] in imageio"
633dc0c01fb Merge "anim_util: quiet implicit conv warnings in 32-bit"
634827d3c50 Merge "fix a potential overflow with MALLOC_LIMIT"
6351e2e25b0 anim_util: quiet implicit conv warnings in 32-bit
636218460cd bump version to 0.5.2
637de7d654d update AUTHORS & .mailmap
638273367c1 Merge "dsp/lossless.c,cosmetics: fix indent"
63976bbcf2e fix a potential overflow with MALLOC_LIMIT
6408ac1abfe Merge "jpegdec: correct ContextFill signature"
641cb215aed remove the dependency to stop_watch.[ch] in imageio
6422423017a dsp/lossless.c,cosmetics: fix indent
64374a12b10 iosbuild.sh: add WebPDecoder.framework + encoder
644a9cc7621 Merge "iosbuild.sh: add WebPDecoder.framework + encoder"
645fbba5bc2 optimize predictor #1 in plain-C For some reason, gcc has hard time inlining this one...
6469ae0b3f6 Merge "SSE2: slightly (~2%) faster Predictor #1"
647c1f97bd7 SSE2: slightly (~2%) faster Predictor #1
648ea664b89 SSE2: 10% faster Predictor #11
649be7dcc08 AnimEncoder: Correctly skip a frame when sub-rectangle is empty.
65040885830 Fix assertions in WebPRescalerExportRow()
6511d5046d1 iosbuild.sh: add WebPDecoder.framework + encoder
652cec72014 jpegdec: correct ContextFill signature
6538f38c72e fix a typo in WebPPictureYUVAToARGB's doc
65433ca93f9 systematically call WebPDemuxReleaseIterator() on dec->prev_iter_
65576e19073 doc: use two's complement explicitly for uint8->int8 conversion
656f91ba963 Anim_encoder: correctly handle enc->prev_candidate_undecided_
65725d74e65 WebPPictureDistortion(): free() -> WebPSafeFree()
65803f1c008 mux/Makefile.am: add missing -lm
65958410cd6 fix bug in RefineUsingDistortion()
660e168af8c fix filtering auto-adjustment
661ed9dec41 fix doc and code snippet for WebPINewDecoder() doc
6623c49178f prevent 32b overflow for very large canvas_width / height
6639595f290 fix anim_util.c compilation when HAVE_GIF is not defined.
6647ec9552c Make gif transparent color to be transparent black
665b3fb8bb6 slightly faster Predictor #11 in NEON
6669871335f Add a CMake option for WEBP_SWAP_16BIT_CSP.
6670ae32226 Fix missing cpu-features for Android.
668ab4c8056 cpu.cmake: improve webp_check_compiler_flag output
669eec5fa3a Provide support for CMake on Android studio 2.2.
670004d5690 Split the main CMake file.
6714fe5d588 Android.mk: use -fvisibility=hidden
672bd63a31a vwebp: ensure setenv() is available in stdlib.h
673363a5681 vwebp: handle window resizing properly
674a0d2753f lower WEBP_MAX_ALLOCABLE_MEMORY default
67531fe11a5  fix infinite loop in case of PARTITION0 overflow
676532215dd Change the rule of picking UV mode in MBAnalyzeBestUVMode()
6779c75dbd3 cwebp.1: improve some grammar
678af2e05cb vwebp: Clear previous frame when a key triggers a redraw
67926ffa296 Add descriptions of default configuration in help info.
6807416280d Fix an unsigned integer overflow error in enc/cost.h
68113cf1d2e Do token recording and counting in a single loop
682eb9a4b97 Reset segment id if we decide not to update segment map
68342ebe3b7 configure: fix NEON flag detection under gcc 6
68476ebbfff NEON: implement predictor #13
68595b12a08 Merge "Revert Average3 and Average4"
68654ab2e75 Revert Average3 and Average4
687fe12330c 3-5% faster Predictor #5, #6, #7 and #10 for NEON
688fbfb3bef ~2% faster predictor #10 for NEON
689d4b7d801 lossless_sse2: use the local functions
690a5e3b225 Lossless decoder SSE2 improvements.
69158a1f124 ~2% faster predictor #12 in NEON.
692906c3b63 Merge "Implement lossless transforms in NEON."
693d23abe4e Implement lossless transforms in NEON.
6942e6cb6f3 Give more flexibility to the predictor generating macro.
69528e0bb70 Merge "Fix race condition in multi-threading initialization."
69664704530 Fix race condition in multi-threading initialization.
697bded7848 img2webp: fix default -lossless value and use pic.argb=1
6980e61a513 Merge "img2webp: convert a sequence of images to an animated webp"
6991cc79e92 AnimEncoder: Correctly skip a frame when sub-rectangle is empty.
70003f40955 img2webp: convert a sequence of images to an animated webp
701ea72cd60 add missing 'extern' keyword for predictor dcl
70267879e6d SSE implementation of decoding predictors.
70334aee990 Merge "vwebp: make 'd' key toggle the debugging of fragments"
704a41296ae Fix potentially uninitialized value.
705c85adb33 vwebp: make 'd' key toggle the debugging of fragments
7064239a148 Make the lossless predictors work on a batch of pixels.
707bc18ebad fix extra 'const's in signatures
70871e2f5ca Remove memcpy in lossless decoding.
7097474d46e Do not use a register array in SSE.
71067748b41 Improve latency of FTransform2.
71116951b19 Merge "Provide an SSE implementation of ConvertBGRAToRGB"
7126540cd0e Provide an SSE implementation of ConvertBGRAToRGB
713de568abf Android.mk: use -fvisibility=hidden
7143c2a61b0 remove some unneeded casts
7159ac063c3 add dsp functions for SmartYUV
71622efabdd Merge "smart_yuv: switch to planar instead of packed r/g/b processing"
7171d6e7bf3 smart_yuv: switch to planar instead of packed r/g/b processing
7180a3838ca fix bug in RefineUsingDistortion()
719c0699515 webpmux -duration: set default 'end' value equal to 'start'
72083cbfa09 Import: use relative pointer offsets
721a1ade40e PreprocessARGB: use relative pointer offsets
722fd4d090f ConvertWRGBToYUV: use relative pointer offsets
7239daad459 ImportYUVAFromRGBA: use relative pointer offsets
724f90c60d1 Merge "add a "-duration duration,start,end" option to webpmux"
7253f182d36 add a "-duration duration,start,end" option to webpmux
726342e15f0 Import: use relative pointer offsets
7271147ab4e PreprocessARGB: use relative pointer offsets
728e4cd4daf fix filtering auto-adjustment
729e7152856 fix doc and code snippet for WebPINewDecoder() doc
730de9fa507 ConvertWRGBToYUV: use relative pointer offsets
731deb1b831 ImportYUVAFromRGBA: use relative pointer offsets
732c284780f imageio_util: add ImgIoUtilCheckSizeArgumentsOverflow
733e375080d gifdec,Remap: avoid out of bounds colormap read
734c222a053 additional fix for stride type as size_t
735bb233617 fix potential overflow when width * height * 4 >= (1<<32)
736883d41fb gif2webp: fix crash with NULL extension data
737cac9a36a gifdec,Remap: avoid out of bounds colormap read
7384595e01f Revert "gifdec,Remap: avoid out of bounds colormap read"
739fb52d443 gifdec: make some constants unsigned
740f048d38d gifdec,Remap: avoid out of bounds colormap read
74131b1e343 fix SSIM metric ... by ignoring too-dark area
7422f51b614 introduce WebPPlaneDistortion to compute plane distortion
7430104d730 configure: fix NEON flag detection under gcc 6
744265abbe9 Merge "additional fix for stride type as size_t"
745f7601aa6 Merge "Introduce a generic WebPGetImageReader(type) function"
746ce873320 Introduce a generic WebPGetImageReader(type) function
7472a2773ea imageio/*dec,Read*: add input parameter checks
7489f5c8eca additional fix for stride type as size_t
7494eb5df28 remove unused stride fields from VP8Iterator
75011bc423a MIN_LENGTH cleanups.
751273d035a Merge "fix a typo in WebPPictureYUVAToARGB's doc"
7524db82a17 Merge "fix potential overflow when width * height * 4 >= (1<<32)"
753e2affacc fix potential overflow when width * height * 4 >= (1<<32)
754dc789ada fix a typo in WebPPictureYUVAToARGB's doc
755539f5a68 Fix non-included header in config.c.
756aaf2a6a6 systematically call WebPDemuxReleaseIterator() on dec->prev_iter_
75720ef9915 Merge "imageio_util: add ImgIoUtilCheckSizeArgumentsOverflow"
758bc86b7a8 imageio_util: add ImgIoUtilCheckSizeArgumentsOverflow
759806f6279 gif2webp: fix crash with NULL extension data
76068ae5b67 Add libwebp/src/mux/animi.h
76128ce3043 Remove some errors when compiling the code as C++.
762b34abcb8 Favor keeping the areas locally similar in spatial prediction mode selection
763ba843a92 fix some SSIM calculations
76451b71fd2 Merge "vwebp: ensure setenv() is available in stdlib.h"
765fb01743a get_disto: fix the r/g/b order for luma calculation
766bfab8947 vwebp: ensure setenv() is available in stdlib.h
7679310d192 vwebp: handle window resizing properly
768f79450ca Speedup ApplyMap.
769cfdda7c6 Merge "prevent 32b overflow for very large canvas_width / height"
770e36396ba Merge "get_disto: new option to compute SSIM map and convert to gray"
77118a9a0ab Add an API to import a color-mapped image.
77230d43706 Speed-up Combined entropy for palettized histograms.
77336aa087b get_disto: new option to compute SSIM map and convert to gray
77486a84b35 2x faster SSE2 implementation of SSIMGet
775b8384b53 lower WEBP_MAX_ALLOCABLE_MEMORY default
7761c364400 prevent 32b overflow for very large canvas_width / height
777eee0cce1 Merge "Small LZ77 speedups."
7785f1caf29 Small LZ77 speedups.
7791effde7b fix anim_util.c compilation when HAVE_GIF is not defined.
780a2fe9bf4 Speedup TrellisQuantizeBlock().
781573cce27 smartYUV improvements
78221e7537a  fix infinite loop in case of PARTITION0 overflow
783053a1565 Merge "Change the rule of picking UV mode in MBAnalyzeBestUVMode()"
7841377ac2e Change the rule of picking UV mode in MBAnalyzeBestUVMode()
7857c1fb7d0 fix uint32_t initialization (0. -> 0)
786bfff0bf3 speed-up SSIM calculation
78764577de8 De-VP8L-ize GetEntropUnrefinedHelper.
788a7be7328 Merge "refactor the PSNR / SSIM calculation code"
78950c3d7da refactor the PSNR / SSIM calculation code
790d6228aed indentation fix after I7055d3ee3bd7ed5e78e94ae82cb858fa7db3ddc0
791dd538b19 Remove unused declaration.
7926cc48b17 Move some lossless logic out of dsp.
79378363e9e Merge "Remove a redundant call to InitLeft() in VP8IteratorReset()"
794ffd01929 Refactor VP8IteratorNext().
795c4f6d9c9 Remove a redundant call to InitLeft() in VP8IteratorReset()
796c27d8210 Merge "smartYUV: simplify main loop"
79707795296 smartYUV: simplify main loop
798c9b45863 Split off common lossless dsp inline functions.
799490ae5b1 smartYUV: improve initial state for faster convergence
800894232be smartYUV: fix and simplify the over-zealous stop criterion
8018de08483 Remove unused code in webpi.h
80241cab7fe imageio/Android.mk: correct imagedec dependencies
80382c91c70 Merge "libimageenc.a: extract image-saving code from dwebp"
804af1ad3e2 libimageenc.a: extract image-saving code from dwebp
805dd7309e3 Merge "doc: use two's complement explicitly for uint8->int8 conversion"
8066105777e Merge "add gif2webp to CMake"
80713ae011e doc: use two's complement explicitly for uint8->int8 conversion
8084bda0cfb add gif2webp to CMake
8096029c7fe Merge "remove mention of fragment, frgm, FRGM, etc."
810545c147f remove mention of fragment, frgm, FRGM, etc.
8115b46f7fc cwebp.1: improve some grammar
8129e478f80 dec/vp8l.c: add assertions in EmitRescaledRowsRGBA/YUVA
81343bd8958 Make gif transparent color to be transparent black
8140887fc2d Merge "get_disto: add a '-o file' option to save a diff map"
8150de48e18 get_disto: add a '-o file' option to save a diff map
8160a57ad0d cosmetics: WebPSafeAlloc -> WebPSafeMalloc
8170a4699bc Merge "WebPPictureDistortion(): free() -> WebPSafeFree()"
81829fedbf5 Anim_encoder: correctly handle enc->prev_candidate_undecided_
81932dead4e WebPPictureDistortion(): free() -> WebPSafeFree()
82085cd5d06 Smarter LZ77 for uniform regions.
8216585075f Change PixelsAreSimilar() to handle black pixels correctly.
822c0a27fd2 vwebp: Clear previous frame when a key triggers a redraw
82357a5e3b6 webp_quality should return '0' in case of success.
8247f1b897b Faster stochastic histogram merging.
82548c810b8 Merge "remove WEBP_FORCE_ALIGNED and use memcpy() instead."
8263884972e remove WEBP_FORCE_ALIGNED and use memcpy() instead.
827485cac1a switch libimagedec.a and libimageio_util.a to avoid undefined symbol
828005e15b1 Merge "{extras,mux}/Makefile.am: add missing -lm"
8296ab496ed fix some 'unsigned integer overflow' warnings in ubsan
8308a4ebc6a Revert "fix 'unsigned integer overflow' warnings in ubsan"
8319d4f209f Merge changes I25711dd5,I43188fab
832e44f5248 fix 'unsigned integer overflow' warnings in ubsan
83327b5d991 Fix assertions in WebPRescalerExportRow()
83474f6f9e7 Add descriptions of default configuration in help info.
835aaf2530c {extras,mux}/Makefile.am: add missing -lm
8361269dc7c Refactor VP8LColorCacheContains()
83740872fb2 dec_neon,NeedsHev: micro optimization
8387b54e26b Add a CMake option for WEBP_SWAP_16BIT_CSP.
839d2223d8d Fix missing cpu-features for Android.
840bf16a4b4 Merge "cpu.cmake: improve webp_check_compiler_flag output"
841ee1057e3 cpu.cmake: improve webp_check_compiler_flag output
842b551e587 cosmetics: add {}s on continued control statements
843d2e4484e dsp/Makefile.am: put msa source in correct lib
844c7f66c82 Merge "utils/thread.c,cosmetics: join a few lines"
84598d8f295 Merge "examples/Makefile.am,cosmetics: sort binary targets"
84639f4ffbc utils/thread.c,cosmetics: join a few lines
847a86ce2b1 Merge "extras/Makefile.am: don't install libwebpextras"
8486fa9fe24 extras/Makefile.am: don't install libwebpextras
8490b2c58a9 Fix an unsigned integer overflow error in enc/cost.h
850d7ce4a2e examples/Makefile.am,cosmetics: sort binary targets
851386e4ba2 Reset segment id if we decide not to update segment map
8527b87e848 Merge "Add MSA optimized YUV to RGB upsampling functions"
853d3ddacb6 Add MSA optimized YUV to RGB upsampling functions
854eb98d8d8 webp_quality: detect lossless format and features
855ebee57f4 move imageio/example_util.[hc] (back to) examples/
85699542bbf webpdec: s/ExUtil//
857da573cf4 imageio_util: s/ExUtil/ImgIoUtil/
858bdda5bd4 split example_util.h
85915ed462b .gitignore: add extras/{get_disto,webp_quality}
8607be57489 Merge "VP8EstimateQuality(): roughty estimate webp bitstream quality factor"
86157020525 Makefile.vc: add missing imageio target
862e8ab6a82 VP8EstimateQuality(): roughty estimate webp bitstream quality factor
863fee7b3d6 Merge "'extras/get_disto' example: compute PSNR between two files"
8641e7d4401 'extras/get_disto' example: compute PSNR between two files
8654cecab63 pngdec.c,jpegdec.[hc]: remove unnecessary includes
866259f0434 makefile.unix: normalize image decode lib name
867ed34c39b fix: examples/libexample_dec.a => imageio/libexample_dec.a
86833d8d0d4 Merge "move examples/{example_util,image_dec} to imageio/"
869c960b82e Merge "extras.h: correct include guard"
870fe3cd28a Merge ".gitignore: add .gradle, /build"
87145fbeba5 Merge "Do token recording and counting in a single loop"
8724f33c820 .gitignore: add .gradle, /build
873c379b55a move examples/{example_util,image_dec} to imageio/
8745108d9aa extras.h: correct include guard
875ad497fbc move src/extras to the top-level
8760c0fb832 Do token recording and counting in a single loop
8779ac74f92 Add MSA optimized rescaling functions
878cb19dbc1 Add MSA optimized color transform functions
8793f4042b5 WebPAnimEncoder: If 'minimize_size' and 'allow_mixed' on, try lossy + lossless.
8805e2eb89e cosmetics,dsp/*msa.c: associate '*' with the type
8815b60db5c FastMBAnalyze() for quick i16/i4 decision
882567e6977 Add MSA optimized CollectHistogram function
883c54ab8dd Add MSA optimized quantization functions
884ec6f68c5 Merge "Remove QuantizeBlockWHT() in enc.c"
8852a5c417c Apply the RLE heuristic to LZ77.
88691b59e88 Remove QuantizeBlockWHT() in enc.c
887fe572737 Add MSA optimized SSE functions
8886b53ca87 cosmetics,(dec|enc)_sse2.c: fix indent
889b15d00d9 Merge "Add MSA optimized encoder IntraChromaPreds function"
890afe3cec8 Add MSA optimized encoder IntraChromaPreds function
891fc8cad9f reduce the number of malloc/free cycles in huffman.c
8927b4b05e0 Add MSA optimized encoder Intra16Preds function
893c18787a0 Add MSA optimized encoder Intra4Preds function
894479d1908 webpmux: Also print compression info per frame.
895a80e8cfd Provide support for CMake on Android studio 2.2.
8966c628410 Split the main CMake file.
897bbb6ecd9 Merge "Add MSA optimized distortion functions"
8987915396f Add MSA optimized distortion functions
899652e944f Merge "build.gradle: remove tab"
900c0991a14 io,EmitRescaledAlphaYUV: factor out a common expr
90148bf5ed1 build.gradle: remove tab
902bfef6c9f Merge tag 'v0.5.1'
9033d97bb75 update ChangeLog (tag: v0.5.1, origin/0.5.1)
904deb54d91 Clarify the expected 'config' lifespan in WebPIDecode()
905435308e0 Add MSA optimized encoder transform functions
906dce64bfa Add MSA optimized alpha filter functions
907429120d0 Add MSA optimized color transform functions
908c7e2d245 update ChangeLog (tag: v0.5.1-rc5)
90955b2fede normalize the macros' "do {...} while (0)" constructs
910701c772e Add MSA optimized colorspace conversion functions
911c7eb06f7 Fix corner case in CostManagerInit.
912f918cb10 fix rescaling bug: alpha plane wasn't filled with 0xff
913ab7937a5 gif2webp: normalize the number of .'s in the help message
9143cdec847 vwebp: normalize the number of .'s in the help message
915bdf6241e cwebp: normalize the number of .'s in the help message
91606a38c7b fix rescaling bug: alpha plane wasn't filled with 0xff
917319e37be Improve lossless compression.
9186a197937 Add MSA optimized intra pred chroma functions
919447adbce 'our bug tracker' -> 'the bug tracker'
92097b9e644 normalize the number of .'s in the help message
921293d786f Added MSA optimized intra prediction 16x16 functions
9220afa0ce2 Added MSA optimized intra prediction 4x4 functions
923a6621bac Added MSA optimized simple edge filtering functions
924bb50bf42 pngdec,ReadFunc: throw an error on invalid read
92538063af1 decode.h,WebPGetInfo: normalize function comment
9261ebf193c Added MSA optimized chroma edge filtering functions
9279ad2352d Merge "Added MSA optimized edge filtering functions"
92860751096 Added MSA optimized edge filtering functions
9299e8e1b7b Inline GetResidual for speed.
9307d58d1b7 Speed-up uniform-region processing.
9318ec7032b simplify HistogramCombineEntropyBin()
93223e29cb1 Merge "Fix a boundary case in BackwardReferencesHashChainDistanceOnly." into 0.5.1
933472a049b remove bin_map[] allocation altogether
9340bb23b2c free -> WebPSafeFree()
935a977b4b5 Merge "rewrite the bin_map clustering to use less memory"
9363591ba66 rewrite the bin_map clustering to use less memory
937e6ac450c utils.[hc]: s/MAX_COLOR_COUNT/MAX_PALETTE_SIZE/
938e7b91772 Merge "DecodeImageData(): change the incorrect assert" into 0.5.1
9392abfa54f DecodeImageData(): change the incorrect assert
9405a48fcd8 Merge "configure: test for -Wfloat-conversion"
9410174d18d Fix a boundary case in BackwardReferencesHashChainDistanceOnly.
9426a9c262a Merge "Added MSA optimized transform functions"
943cfbcc5ec Make sure to consider small distances in LZ77.
9445e60c42a Added MSA optimized transform functions
9453dc28d76 configure: test for -Wfloat-conversion
946f2a0946a add some asserts to delimit the perimeter of CostManager's operation
9479a583c66 fix invalid-write bug for alpha-decoding
948f66512db make gradlew executable
9496fda58f1 backward_references: quiet double->int warning
950a48cc9d2 Merge "Fix a compression regression for images with long uniform regions." into 0.5.1
951cc2720c1 Merge "Revert an LZ77 boundary constant." into 0.5.1
952059aab4f Fix a compression regression for images with long uniform regions.
953b0c7e49e Check more backward matches with higher quality.
954a3611513 Revert an LZ77 boundary constant.
9558190374c README: fix typo
9567551db44 update NEWS
9570fb2269c bump version to 0.5.1
958f4537610 update AUTHORS & .mailmap
9593259571e Refactor GetColorPalette method.
9601df5e260 avoid using tmp histogram in PreparePair()
9617685123a fix comment typos
962a246b921 Speedup backward references.
96376d73f18 Merge "CostManager: introduce a free-list of ~10 intervals"
964eab39d81 CostManager: introduce a free-list of ~10 intervals
9654c59aac0 Merge "mips msa webp configuration"
966043c33f1 Merge "Improve speed and compression in backward reference for lossless."
96771be9b8c Merge "clarify variable names in HistogramRemap()"
9680ba7fd70 Improve speed and compression in backward reference for lossless.
9690481d42a CostManager: cache one interval and re-use it when possible
97041b7e6b5 Merge "histogram: fix bin calculation"
97196c3d624 histogram: fix bin calculation
972fe9e31ef clarify variable names in HistogramRemap()
973ce3c8247 disable near-lossless quantization if palette is used
974e11da081 mips msa webp configuration
9755f8f998d mux: Presence of unknown chunks should trigger VP8X chunk output.
976cadec0b1 Merge "Sync mips32 and dsp_r2 YUV->RGB code with C verison"
977d9637758 Compute the hash chain once and for all for lossless compression.
97850a48665 Sync mips32 and dsp_r2 YUV->RGB code with C verison
979eee788e2 Merge "introduce a common signature for all image reader function"
980d77b877c introduce a common signature for all image reader function
981ca8d9519 remove some obsolete TODOs
982ae2a7222 collect all decoding utilities from examples/ in libexampledec.a
9830b8ae852 Merge "Move DitherCombine8x8 to dsp/dec.c"
98477cad885 Merge "ReadWebP: avoid conversion to ARGB if final format is YUVA"
985ab8d6698 ReadWebP: avoid conversion to ARGB if final format is YUVA
986f8b7ce9e Merge "test pointer to NULL explicitly"
9875df6f214 test pointer to NULL explicitly
98877f21c9c Move DitherCombine8x8 to dsp/dec.c
989c9e6d865 Add gradle support
990c65f41e8 Revert "Add gradle support"
991bf731ede Add gradle support
99208333b85 WebPAnimEncoder: Detect when canvas is modified, restore only when needed.
9930209d7e6 Merge "speed-up MapToPalette() with binary search"
994fdd29a3d speed-up MapToPalette() with binary search
995cf4a651b Revert "Refactor GetColorPalette method."
9960a27aca3 Merge changes Idfa8ce83,I19adc9c4
997f25c4406 WebPAnimEncoder: Restore original canvas between multiple encodes.
998169004b1 Refactor GetColorPalette method.
999576362ab VP8LDoFillBitWindow: support big-endian in fast path
1000ac49e4e4 bit_reader.c: s/VP8L_USE_UNALIGNED_LOAD/VP8L_USE_FAST_LOAD/
1001d39ceb58 VP8LDoFillBitWindow: remove stale TODO
10022ec2de14 Merge "Speed-up BackwardReferencesHashChainDistanceOnly."
10033e023c17 Speed-up BackwardReferencesHashChainDistanceOnly.
1004f2e1efbe Improve near lossless compression when a prediction filter is used.
1005e15afbce dsp.h: fix ubsan macro name
1006e53c9ccb dsp.h: add WEBP_UBSAN_IGNORE_UNSIGNED_OVERFLOW
1007af81fdb7 utils.h: quiet -fsanitize=undefined warnings
1008ea0be354 dsp.h: remove utils.h include
1009cd276aec utils/*.c: ../utils/utils.h -> ./utils.h
1010c8927131 utils/Makefile.am: add some missing headers
1011ea24e026 Merge "dsp.h: add WEBP_UBSAN_IGNORE_UNDEF"
1012369e264e dsp.h: add WEBP_UBSAN_IGNORE_UNDEF
10130d020a78 Merge "add runtime NEON detection"
10145ee2136a Merge "add VP8LAddPixels() to lossless.h"
101547435a61 add VP8LAddPixels() to lossless.h
10168fa6ac68 remove two ubsan warnings
101774fb56fb add runtime NEON detection
10184154a839 MIPS update to new Unfilter API
1019c80b9fc8 Merge "cherry-pick decoder fix for 64-bit android devices"
10206235147e cherry-pick decoder fix for 64-bit android devices
1021d41b8c43 configure: test for -Wformat-* w/-Wformat present
10225f95589f Fix WEBP_ALIGN in case the argument is a pointer to a type larger than a byte.
10232309fd5c replace num_parts_ by num_parts_minus_one_ (unsigned)
10249629f4bc SimplifySegments: quiet -Warray-bounds warning
1025de47492e Merge "update the Unfilter API in dsp to process one row independently"
10262102ccd0 update the Unfilter API in dsp to process one row independently
1027e3912d56 WebPAnimEncoder: Restore canvas before evaluating blending possibility.
10286e12e1e3 WebPAnimEncoder: Fix for single-frame optimization.
1029602f344a Merge changes I1d03acac,Ifcb64219
103095ecccf6 only apply color-mapping for alpha on the cropped area
103147dd0708 anim_diff: Add an experimental option for max inter-frame diff.
1032aa809cfe only allocate alpha_plane_ up to crop_bottom row
103331f2b8d8 WebPAnimEncoder: FlattenSimilarPixels(): look for similar
1034774dfbdc perform alpha filtering within the decoding loop
1035a4cae68d lossless decoding: only process decoded row up to last_row
1036238cdcdb Only call WebPDequantizeLevels() on cropped area
1037cf6c713a alpha: preparatory cleanup
1038b95ac0a2 Merge "VP8GetHeaders(): initialize VP8Io with sane value for crop/scale dimensions"
103989231394 VP8GetHeaders(): initialize VP8Io with sane value for crop/scale dimensions
10405828e199 use_8b_decode -> use_8b_decode_
10418dca0247 fix bug in alpha.c that was triggering a memory error in incremental mode
10429a950c53 WebPAnimEncoder: Disable filtering when blending is used with lossy encoding.
1043eb423903 WebPAnimEncoder: choose max diff for framerect based on quality.
1044ff0a94be WebPAnimEncoder lossy: ignore small pixel differences for frame rectangles.
1045f8040084 gif2webp: Remove the 'prev_to_prev_canvas' buffer.
10466d8c07d3 Merge "WebPDequantizeLevels(): use stride in CountLevels()"
1047d96fe5e0 WebPDequantizeLevels(): use stride in CountLevels()
1048ec1b2407 WebPPictureImport*: check output pointer
1049c0768769 Merge "Revert "Re-enable encoding of alpha plane with color cache for next release.""
105041f14bcb WebPPictureImport*: check src pointer
105164eed387 Pass stride parameter to WebPDequantizeLevels()
105297934e24 Revert "Re-enable encoding of alpha plane with color cache for next release."
1053e88c4ca0 fix -m 2 mode-cost evaluation (causing partition0 overflow)
10544562e83d Merge "add extra meaning to WebPDecBuffer::is_external_memory"
1055abdb109f add extra meaning to WebPDecBuffer::is_external_memory
1056875aec70 enc_neon,cosmetics: break long comment
105771e856cf GetMBSSIM,cosmetics: fix alignment
1058a90edffb fix missing 'extern' for SSIM function in dsp/
1059423ecaf4 move some SSIM-accumulation function for dsp/
1060f08e6624 Merge "Fix FindClosestDiscretized in near lossless:"
10610d40cc5e enc_neon,Disto4x4: remove an unnecessary transpose
1062e8feb20e Fix FindClosestDiscretized in near lossless:
106382006430 anim_util: quiet static analysis warning
1064a6f23c49 Merge "AnimEncoder: Support progress hook and user data."
1065a5193774 Merge "Near lossless feature: fix some comments."
1066da98d31c AnimEncoder: Support progress hook and user data.
106733357131 Near lossless feature: fix some comments.
10680beed01a cosmetics: fix indent after 2f5e898
10696753f35c Merge "FTransformWHT optimization."
10706583bb1a Improve SSE4.1 implementation of TTransform.
10717561d0c3 FTransformWHT optimization.
10727ccdb734 fix indentation after patch #328220
10736ec0d2a9 clarify the logic of the error path when decoding fails.
10748aa352b2 Merge "Remove an unnecessary transposition in TTransform."
1075db860884 Merge "remove useless #include"
10769960c316 Remove an unnecessary transposition in TTransform.
10776e36b511 Small speedup in FTransform.
10789dbd4aad Merge "fix C and SIMD flags completion."
1079e60853ea Add missing common_sse2.h file to makefile.unix
1080696eb2b0 fix C and SIMD flags completion.
10812b4fe33e Merge "fix multiple allocation for transform buffer"
10822f5e8986 fix multiple allocation for transform buffer
1083bf2b4f11 Regroup common SSE code + optimization.
10844ed650a1 force "-pass 6" if -psnr or -size is used but -pass isn't.
10853ef1ce98 yuv_sse2: fix -Wconstant-conversion warning
1086a7a03e9f Merge changes I4852d18f,I51ccb85d
10875e122bd6 gif2webp: set enc_options.verbose = 0 w/-quiet
1088ab3c2583 anim_encode,DefaultEncoderOptions: init verbose
10898f0dee77 Merge "configure: fix builtin detection w/-Werror"
10904a7b85a9 cmake: fix builtin detection w/-Werror
1091b74657fb configure: fix builtin detection w/-Werror
10923661b980 Add a CMakeLists.txt
109375f4af4d remove useless #include
10946c1d7631 avoid Yoda style for comparison
10958ce975ac SSE optimization for vector mismatch.
10967db53831 Merge tag 'v0.5.0'
109737f04949 update ChangeLog (tag: v0.5.0-rc1, tag: v0.5.0, origin/0.5.0)
10987e7b6ccc faster rgb565/rgb4444/argb output
10994c7f565f update NEWS
11001f62b6b2 update AUTHORS
1101e224fdc8 update mailmap
110271100500 bump version to 0.5.0
1103230a685e README: update help text, repo link
1104d48e427b Merge "demux: accept raw bitstreams"
110599a01f4f Merge "Unify some entropy functions."
11064b025f10 Merge "configure: disable asserts by default"
110792cbddf8 Merge "fix PrintBlockInfo()"
1108ca509a33 Unify some entropy functions.
1109367bf903 fix PrintBlockInfo()
1110b0547ff0 move back common constants for lossless_enc*.c into the .h
1111fb4c7832 lossless: simpler alpha cleanup preprocessing
1112ba7f4b68 Merge "anim_diff: add brief description of options"
111347ddd5a4 Move some codec logic out of ./dsp .
1114b4106c44 anim_diff: add brief description of options
1115357f455d yuv_sse2: fix 32-bit visual studio build
1116b9d80fa4 configure: disable asserts by default
11177badd3da cosmetic fix: sizeof(type) -> sizeof(*var)
111880ce27d3 Speed up 24-bit packing / unpacking in YUV / RGB conversions.
111968eebcb0 remove a TODO about rotation
11202dee2966 remove few obsolete TODO about aligned loads in SSE2
1121e0c0bb34 remove TODO about unused ref_lf_delta[]
11229cf1cc2b remove few TODO:   * 256 -> RD_DISTO_MULT   * don't use TDisto for UV mode picking
112379189645 Merge changes from topic 'demux-fragment-cleanup'
112447399f92 demux: remove GetFragment()
1125d3cfb79a demux: remove dead fragment related TODO
1126ab714b8a demux, Frame: remove is_fragment_ field
1127b105921c yuv_sse2, cosmetics: fix indent
1128466c92e8 demux,WebPIterator: remove fragment_num/num_fragments
112911714ff1 demux: remove WebPDemuxSelectFragment
1130c0f7cc47 fix for bug #280: UMR in next->bits
1131578beeb8 Merge "enc/Makefile.am: add missing headers"
11321a819f00 makefile.unix: make visibility=hidden the default
1133d4f9c2ef enc/Makefile.am: add missing headers
1134846caff4 configure: check for -fvisibility=hidden
11353f3ea2c5 demux: accept raw bitstreams
1136d6dad5d0 man cwebp: add precision about exactness of the 'lossless' mode
113746bb1e34 Merge "gifdec: remove utils.h include"
11382b882e94 Merge "Makefile.vc: define WEBP_HAVE_GIF for gifdec.c"
1139892b9238 Merge "man/*, AUTHORS: clarify origin of the tool"
1140e5687a18 Merge "fix optimized build with -mcmodel=medium"
1141e56e6859 Makefile.vc: define WEBP_HAVE_GIF for gifdec.c
11424077d944 gifdec: remove utils.h include
1143b5e30dac man/*, AUTHORS: clarify origin of the tool
1144b275e598 fix optimized build with -mcmodel=medium
114564da45a9 cosmetics, cwebp: fix indent
1146038a060d Merge "add disto-based refinement for UV mode (if method = 1 or 2)"
11472835089d Provide an SSE2 implementation of CombinedShannonEntropy.
1148e6c93519 add disto-based refinement for UV mode (if method = 1 or 2)
114904507dc9 Merge "fix undefined behaviour during shift, using a cast"
1150793c5261 Merge "wicdec: add support for reading from stdin"
1151d3d16397 Optimize the heap usage in HistogramCombineGreedy.
1152202a710b fix undefined behaviour during shift, using a cast
115314d27a46 improve method #2 by merging DistoRefine() and  SimpleQuantize()
1154cb1ce996 Merge "10% faster table-less SSE2/NEON version of YUV->RGB conversion"
1155ac761a37 10% faster table-less SSE2/NEON version of YUV->RGB conversion
115679fcf29a wicdec: add support for reading from stdin
1157015f173f Merge "cwebp: add support for stdin input"
1158a9947c32 cwebp: add support for stdin input
11597eb01ff3 Merge "Improved alpha cleanup for the webp encoder when prediction transform is used."
1160fb8c9106 Merge "introduce WebPMemToUint32 and WebPUint32ToMem for memory access"
1161bd91af20 Merge "bit_reader: remove aarch64 BITS TODO"
11626c702b81 Speed up hash chain initialization using memset.
11634c60f63c make ReadPNG and ReadJPEG take a filename instead of a FILE
1164464ed10f bit_reader: remove aarch64 BITS TODO
1165d478e589 Merge "configure: update issue tracker"
116669381113 Improved alpha cleanup for the webp encoder when prediction transform is used.
11672c08aac8 introduce WebPMemToUint32 and WebPUint32ToMem for memory access
1168010ca3d1 Fix FindMatchLength with non-aligned buffers.
1169a90e1e3f README: add prerequisites for an autoconf build
1170458f0866 configure: update issue tracker
117133914595 vwebp: work around the transparent background with GLUT bug
1172e4a7eed4 cosmetics: fix indent
117308375129 Merge "Make a separate case for low_effort in CopyImageWithPrediction"
1174aa2eb2d4 Merge "cosmetics: fix indent"
1175b7551e90 cosmetics: fix indent
11765bda52d4 Make a separate case for low_effort in CopyImageWithPrediction
117766fa598a Merge "configure: fix intrinsics build w/older gcc"
11785ae220be backward_references.c: Fixed compiler warning
11791556da09 Merge "configure: restore 2 warnings"
118071a17e58 configure: restore 2 warnings
11819eeabc07 configure: fix intrinsics build w/older gcc
1182363babe2 Merge "fix some warning about unaligned 32b reads"
1183a1411782 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.
1184829bd141 Combine Huffman cost and bit entropy into one loop
1185a7a954c8 Merge "lossless: make prediction in encoder work per scanline"
118661b605b4 Merge "fix of undefined multiply (int32 overflow)"
1187239421c5 lossless: make prediction in encoder work per scanline
1188f5ca40e0 fix of undefined multiply (int32 overflow)
11895cd2ef4c Merge changes from topic 'win-threading-compat'
119076ce9187 Makefile.vc: enable WEBP_USE_THREAD for windows phone
1191d2afe974 thread: use CreateThread for windows phone
11920fd0e12b thread: use WaitForSingleObjectEx if available
119363fadc9f thread: use InitializeCriticalSectionEx if available
1194110ad583 thread: use native windows cond var if available
1195912c9fdf dec/webp: use GetLE(24|32) from utils
1196f1694481 utils/GetLE32: correct uint32 promotion
1197158763de Merge "always call WebPInitSamplers(), don't try to be smart"
11983770f3bb Merge "cleanup the YFIX/TFIX difference by removing some code and #define"
1199a40f60a9 Merge "3% speed improvement for lossless webp encoder for low effort mode:"
1200ed1c2bc6 always call WebPInitSamplers(), don't try to be smart
1201b8c44f1a 3% speed improvement for lossless webp encoder for low effort mode:
1202997e1038 cleanup the YFIX/TFIX difference by removing some code and #define
1203d73d1c8b Merge "Make discarding invisible RGB values (cleanup alpha) the default."
12041f9be97c Make discarding invisible RGB values (cleanup alpha) the default.
1205f240117b Make dwebp listen more to the -quiet flag
1206b37b0179 fix for issue #275: don't compare to out-of-bound pointers
120721735e06 speed-up trivial one-symbol decoding case for lossless
1208397863bd Refactor CopyPlane() and CopyPixels() methods: put them in utils.
12096ecd72f8 Re-enable encoding of alpha plane with color cache for next release.
12101f7148a4 Merge "remove unused fields from WebPDecoderOptions and WebPBitstreamFeatures"
12116ae395fa Merge "use ExReadFile() for ReadYUV()"
12128076a00e gitignore list: add anim_diff.
12131c1702d8 use ExReadFile() for ReadYUV()
1214775d3a37 remove unused fields from WebPDecoderOptions and WebPBitstreamFeatures
1215c13245c7 AnimEncoder: Add a GetError() method.
1216688b265d AnimDecoder API: Add a GetDemuxer() method.
12171aa4e3d6 WebPAnimDecoder: add an option to enable multi-threaded decoding.
12183584abca AnimDecoder: option to decode to common color modes.
1219afd5a62c Merge "mux.h does NOT need to include encode.h"
12208550d443 Merge "migrate anim_diff tool from C++ to C89"
122196201e50 migrate anim_diff tool from C++ to C89
1222945cfa3b mux.h does NOT need to include encode.h
12238da07e8d Merge "~2x faster SSE2 RGB24toY, BGR24toY, ARGBToY|UV"
1224bfd3fc02 ~2x faster SSE2 RGB24toY, BGR24toY, ARGBToY|UV
122502432427 man/cwebp.1, cosmetics: escape '-'s
122696f5b423 man/cwebp: group lossy-only options
122752fdbdfe extract some RGB24 to Luma conversion function from enc/ to dsp/
1228ab8c2300 add missing \n
12298304179a sync NEWS with 0.4.4
12305bd04a08 sync versions with 0.4.4
12318f1fcc15 Merge "Move ARGB->YUV functions from dec/vp8l.c to dsp/yuv.c"
123225bf2ce5 fix some warning about unaligned 32b reads
1233922268fd s/TIFF/WebP
1234fa8927ef Move ARGB->YUV functions from dec/vp8l.c to dsp/yuv.c
12359b373598 Merge "for ReadXXXX() image-readers, use the value of pic->use_argb"
1236f7c507a5 Merge "remove unnecessary #include "yuv.h""
12377861578b for ReadXXXX() image-readers, use the value of pic->use_argb
123814e4043b remove unnecessary #include "yuv.h"
1239469ba2cd vwebp: fix incorrect clipping w/NO_BLEND
12404b9186b2 update issue tracker url
1241d64d376c change WEBP_ALIGN_CST value to 31
1242f717b828 vp8l.c, cosmetics: fix indent after 95509f9
1243927ccdc4 Merge "fix alignment of allocated memory in AllocateTransformBuffer"
1244fea94b2b fix alignment of allocated memory in AllocateTransformBuffer
12455aa8d61f Merge "MIPS: rescaler code synced with C implementation"
1246e7fb267d MIPS: rescaler code synced with C implementation
124793c86ed5 Merge "format_constants.h: MKFOURCC, correct cast"
12485d791d26 format_constants.h: MKFOURCC, correct cast
124965726cd3 dsp/lossless: Average2, make a constant unsigned
1250d26d9def Use __has_builtin to check clang support
125112ec204e moved ALIGN_CST into util/utils.h and renamed WEBP_ALIGN_xxx
1252a2640838 Merge "rescaler: ~20% faster SSE2 implementation for lossless ImportRowExpand"
12533fb600d5 Merge "wicdec: fix alpha detection w/64bpp BGRA/RGBA"
125467c547fd rescaler: ~20% faster SSE2 implementation for lossless ImportRowExpand
125599e3f812 Merge "large re-organization of the delta-palettization code"
125695509f99 large re-organization of the delta-palettization code
125774fb458b fix for weird msvc warning message
1258ae49ad86 Merge "SSE2 implementation of ImportRowShrink"
1259932fd4df SSE2 implementation of ImportRowShrink
1260badfcbaa wicdec: fix alpha detection w/64bpp BGRA/RGBA
126135cafa6c Merge "iosbuild: fix linking with Xcode 7 / iOS SDK 9"
1262b0c9d8af label rename: NO_CHANGE -> NoChange
1263b4e731cd neon-implementation for rescaler code
1264db1321a6 iosbuild: fix linking with Xcode 7 / iOS SDK 9
12656dfa5e3e rescaler: better handling of the fxy_scale=0 special case.
126655c05293 Revert "rescaler: better handling of the fxy_scale=0 special case."
12679f226bf8 rescaler: better handling of the fxy_scale=0 special case.
1268f7b8f907 delta_palettization.*: add copyright
1269c1e1b710 Changed delta palette to compress better
12700dd28267 Merge "Add delta_palettization feature to WebP"
127148f66b66 Add delta_palettization feature to WebP
127227933e2a anim_encoder: drop a frame if it has same pixels as the prev frame.
1273df9f6ec8 Merge "webpmux/DisplayInfo: send non-error output to stdout"
12748af4993b Merge "rescaler_mips_dsp_r2: cosmetics, fix indent"
12752b9d2495 Merge "rescaler: cosmetics, join two lines"
1276cc020a8c webpmux/DisplayInfo: send non-error output to stdout
1277a288e746 configure: add -Wshorten-64-to-32
1278c4c3cf2d pngdec: fix type conversion warnings
1279bef8e97d webpmux: fix type conversion warning
12805a84460d rescaler_mips_dsp_r2: cosmetics, fix indent
1281acde0aae rescaler: cosmetics, join two lines
1282306ce4fd rescaler: move the 1x1 or 2x1 handling one level up
1283cced974b remove _mm_set_epi64x(), which is too specific
128456668c9f fix warnings about uint64_t -> uint32_t conversion
128576a7dc39 rescaler: add some SSE2 code
12861df1d0ee rescaler: harmonize function protos
12879ba1894b rescaler: simplify ImportRow logic
12885ff0079e fix rescaler vertical interpolation
1289cd82440e VP8LAllocateHistogramSet: align histogram[] entries
1290a406b1dd Merge "fix memory over-allocation in lossless rescaler init"
12910fde33e3 add missing const in VP8InitFrame signature
1292ac7d5e8d fix memory over-allocation in lossless rescaler init
1293017f8ccc Loosen the buffer size checks for Y/U/V/A too.
129415ca5014 loosen the padding check on buffer size
1295d623a870 dec_neon: add whitespace around stringizing operator
129629377d55 dsp/mips: cosmetics: add whitespace around XSTR macro
1297eebaf97f dsp/mips: add whitespace around stringizing operator
1298d39dc8f3 Create a WebPAnimDecoder API.
129903fb7522 gif2webp: print output file size
130014efabbf Android: limit use of cpufeatures
13017b83adbe preparatory cosmetics for Rescaler code fix and clean-up
130277fb41c2 dec/vp8l/DecodeAlphaData: remove redundant cast
130390fcfcd9 Insert less hash chain entries from the beginnings of long copies.
1304bd55604d SSE2: add yuv444 converters, re-using yuv_sse2.c
130541a5d99d add a -quiet option to 'dwebp'
130680ab3edb Merge "README: update dwebp help output after 1e595fe"
130732b71b2e README: update dwebp help output after 1e595fe
13083ec11827 use the DispatchAlpha() call from dsp
1309c5f00621 incorporate bzero() into WebPRescalerInit() instead of call site
13103ebcdd41 remove duplicate "#include <stdlib.h>"
13111e595fe1 dwebp: add -resize as a synonym for -scale
131224a96932 dec: allow 0 as a scaling dimension
1313b9187242 utils/rescaler: add WebPRescalerGetScaledDimensions
1314923e8eda Merge "update NEWS"
1315020fd099 Merge "WebPPictureDistortion: support ARGB format for 'pic' when computing distortion."
13166a5292f6 update NEWS
131756a2e9f5 WebPPictureDistortion: support ARGB format for 'pic' when computing distortion.
13180ae582e4 configure: test and add -Wunreachable-code
1319c2f9dc06 bit_writer: convert VP8L macro values to immediates
1320b969f888 Reduce magic in palette reordering
1321acb297e9 anim_diff: add a -raw_comparison flag
1322155c1b22 Merge changes I76f4d6fe,I45434639
1323717e4d5a mips32/mipsDSPr2: function ImportRow rebased
13247df93893 fix rescaling bug (uninitialized read, see bug #254).
13255cdcd561 lossless_enc_neon: add VP8LTransformColor
1326a53c3369 lossless_neon: add VP8LTransformColorInverse
132799131e7f Merge changes I9fb25a89,Ibc648e9e
1328c4556766 simplify the main loop for downscaling
13292a010f99 lossless_neon: remove predictors 5-13
1330ca221bbc ll_enc_neon: enable VP8LSubtractGreenFromBlueAndRed
1331585d93db Container spec: clarify ordering of ALPH chunk.
133201d61fd9 lossless: ~20 % speedup
1333f722c8f0 lossless: Speed up ComputeCacheEntropy by 40 %
13341ceecdc8 add a VP8LColorCacheSet() method for color cache
133517eb6099 lossless: Allow copying from prev row in rle-mode.
1336f3a7a5bf lossless: bit writer optimization
1337d97b9ff7 Merge changes from topic 'lossless-enc-improvements'
13380250dfcc msvc: fix pointer type warning in BitsLog2Floor
133952931fd5 lossless: combine the Huffman code with extra bits
1340c4855ca2 lossless: Inlining add literal
13418e9c94de lossless: simplify HashChainFindCopy heuristics
1342888429f4 lossless: 0.5 % compression density improvement
13437b23b198 lossless: Add zeroes into the predicted histograms.
134485b44d8a lossless: encoding, don't compute unnecessary histo
1345d92453f3 lossless: Remove about 25 % of the speed degradation
13462cce0317 Faster alpha coding for webp
13475e75642e lossless: rle mode not to accept lengths smaller than 4.
134884326e4a lossless: Less code for the entropy selection
134916ab951a lossless: 0.37 % compression density improvement
1350822f113e add WebPFree() to the API
13510ae2c2e4 SSE2/SSE41: optimize SSE_16xN loops
135239216e59 cosmetics: fix indent after 32462a07
1353559e54ca Merge "SSE2: slightly faster FTransformWHT"
13548ef9a63b SSE2: slightly faster FTransformWHT
1355f27f7735 lossless_neon: enable VP8LAddGreenToBlueAndRed
135636e9c4bc SSE2: minor cosmetrics on in-loop filter code
13574741fac4 dsp/lossless_*sse2: remove some unnecessary inlines
13581819965e fix warning ("left shift of negative value") using a cast
135970170014 SSE2: speed-up some lossless-encoding functions
1360abcb0128 Merge "SSE2: slightly faster (~5%) AddGreenToBlueAndRed()"
13612df5bd30 Merge "Speedup to HuffmanCostCombinedCount"
13629e356d6b SSE2: slightly faster (~5%) AddGreenToBlueAndRed()
1363fc6c75a2 SSE2: 53% faster TransformColor[Inverse]
136449073da6 SSE2: 46% speed-up of TransformColor[Inverse]
136532462a07 Speedup to HuffmanCostCombinedCount
1366f3d687e3 SSE4.1 implementation of some lossless encoding functions
1367bfc300c7 SSE4.1 implementation of some alpha-processing functions
13687f9c98f2 Merge "sse2 in-loop: simplify SignedShift8b() a bit"
1369ef314a5d dec_sse2/GetNotHEV: micro optimization
1370a729cff9 sse2 in-loop: simplify SignedShift8b() a bit
1371422ec9fb simplify Load8x4() a bit
13728df238ec Merge "remove some duplicate FlipSign()"
1373751506c4 remove some duplicate FlipSign()
137465ef5afc Merge "lossless: 0.13% compression density gain"
13752beef2f2 lossless: 0.13% compression density gain
13763033f24c lossless: 0.06 % compression density improvement
137764960da9 dec_neon: add VE8uv / VE16
137814dbd87b dec_neon: add HE8uv / HE16
1379ac768011 introduce FTransform2 to perform two transforms at a time.
1380aa6065ae dec_neon: use vld1_dup(mem) rather than vdup(mem[0])
13818b63ac78 Merge "dec_neon: add TM16"
1382f51be09e Merge "dec_neon/TrueMotion: simply left border load"
1383dc48196b dec_neon: add TM16
1384ea95b305 dec_neon/TrueMotion: simply left border load
1385f262d612 speed-up SetResidualSSE2
1386bf46d0ac fix mips2 build target
1387929a0fdc enc_sse2/TTransform: simplify abs calculation
138817dbd058 enc_sse2/CollectHistogram: simplify abs calculation
1389a6c15936 dec_neon: add DC16 intra predictors
139003b4f50d Makefile.vc: add anim_diff build support.
13911b989874 Merge changes I9cd84125,Iee7e387f,I7548be72
1392acd7b5af Introduce a test tool anim_diff.
1393f274a96c dsp/enc_sse2: add luma4 intra predictors
1394040b11bd dsp/enc_sse2: add chroma intra predictors
1395aee021bb dsp/enc_sse2: add luma16 intra predictors
13969e00a499 makefile.unix: remove superclean target
1397cefc9c09 makefile.unix: clean up after extras target
13984c9af023 dec_neon: add DC8uvNoTopLeft
1399dd55b873 Merge "doc/webp-container-spec: update repo browser link"
1400f0486968 doc/webp-container-spec: update repo browser link
14019287761d Merge "GetResidualCostSSE2: simplify abs calculation"
14020e009366 dsp/cpu.c(x86): check maximum supported cpuid feature
1403b243a4bc GetResidualCostSSE2: simplify abs calculation
14046d4602b8 Merge "fix typo: constitutes -> constitute"
14055fe1fe37 fix typo: constitutes -> constitute
1406b83bd7c4 Merge "populate 'libwebpextras' with: import gray, rgb565 and rgb4444 functions"
1407b0114a32 Merge "histogram.h: cosmetics: remove unnecessary includes"
1408feab45ef gifdec: Move inclusion of webp/config.h to header.
1409dbba67d1 histogram.h: cosmetics: remove unnecessary includes
1410e978fec6 Merge "VP8LBitReader: fix remaining ubsan error with large shifts"
1411d6fe5884 Merge "ReconstructRow: move some one-time inits out of the main loop"
1412a21d647c ReconstructRow: move some one-time inits out of the main loop
14137a01c3c3 VP8LBitReader: fix remaining ubsan error with large shifts
14147fa67c9b change GetPixPairHash64() return type to uint32_t
1415ec1fb9f8 Merge "dsp/enc.c: cosmetics: move DST() def closer to use"
14167073bfb3 Merge "split 64-mult hashing into two 32-bit multiplies"
14170768b252 dsp/enc.c: cosmetics: move DST() def closer to use
14186a48b8f0 Merge "fix MSVC size_t->int conversion warning"
14191db07cde Merge "anim_encode: cosmetics: fix alignment"
1420e28271a3 anim_encode: cosmetics: fix alignment
14217fe357b8 split 64-mult hashing into two 32-bit multiplies
1422af74c145 populate 'libwebpextras' with: import gray, rgb565 and rgb4444 functions
142361214134 remove VP8Residual::cost unused field
1424e2544823 fix MSVC size_t->int conversion warning
1425b69a6c35 vwebp: don't redefine snprintf with VS2015+
14260ac29c51 AnimEncoder API: Consistent use of trailing underscores in struct.
1427d4845550 AnimEncoder API: Use timestamp instead of duration as input to Add().
14289904e365 dsp/dec_sse2: DC8uv / DC8uvNoLeft speedup
14297df20497 dsp/dec_sse2: DC16 / DC16NoLeft speedup
14308e515dfe Merge "makefile.unix: add some missing headers"
1431db12250f cosmetics: vp8enci.h: break long line
1432bf516a87 makefile.unix: add some missing headers
1433b44eda3f dsp: add DSP_INIT_STUB
143403e76e96 clarify the comment about double-setting the status in SetError()
14359fecdd71 remove unused EmitRGB()
143643f010dd move ReconstructRow to top
143782d98020 add a dec/common.h header to collect common enc/dec #defines
14385d4744a2 Merge "enc_sse41: add Disto4x4 / Disto16x16"
1439e38886a7 mux.h: Bump up ABI version
144046305ca6 configure: add --disable-<avx2|sse4.1|sse2>
14412fc8b658 CPPFLAGS->CFLAGS for detecting sse4.1 in preprocessor
14421a338fb3 enc_sse41: add Disto4x4 / Disto16x16
144394055503 encoding SSE4.1 stub for StoreHistogram + Quantize + SSE_16xN
1444c64659e1 remove duplicate variables after the lossless{_enc}.c split
144567ba7c7a enc_sse2: call local FTransform in CollectHistogram
144618249799 dsp: s/VP8LSetHistogramData/VP8SetHistogramData/
1447ede5e158 cosmetics: dsp/lossless.h: reorder prototypes
1448553051f7 dsp/lossless: split enc/dec functions
14499064adc8 Merge "conditionally add -msse4.1 in Makefile.unix"
1450cecf5096 dsp/yuv*.c: rework WEBP_USE_<arch> ifdef
14516584d398 dsp/upsampling*.c: rework WEBP_USE_<arch> ifdef
145280809422 dsp/rescaler*.c: rework WEBP_USE_<arch> ifdef
14531d93ddec dsp/lossless*.c: rework WEBP_USE_<arch> ifdef
145473805ff2 dsp/filters*.c: rework WEBP_USE_<arch> ifdef
1455fbdcef24 dsp/enc*.c: rework WEBP_USE_<arch> ifdef
145666de69c1 dsp/dec*.c: rework WEBP_USE_<arch> ifdef
145748e4ffd1 dsp/cost*.c: rework WEBP_USE_<arch> ifdef
145829fd6f90 dsp/argb*.c: rework WEBP_USE_<arch> ifdef
145980ff3813 dsp/alpha*.c: rework WEBP_USE_<arch> ifdef
1460bf09cf1e conditionally add -msse4.1 in Makefile.unix
1461e9570dd9 stub for SSE4.1 support.
14624a95384b Merge "dsp: add sse4.1 detection"
1463cabf4bd2 dsp: add sse4.1 detection
14644ecba1ab thread.h: rename interface param
1465b8d706c8 Merge "sync versions with 0.4.3"
1466ae64a711 Merge "add shell for libwebpextras"
146792a5da9c sync versions with 0.4.3
14689d4e2d16 Merge "~30% faster smart-yuv (-pre 4) with early-out criterion"
1469b1bdbbab ~30% faster smart-yuv (-pre 4) with early-out criterion
14707efb9748 Merge "Disable NEON code on Native Client"
1471ac4f5784 Disable NEON code on Native Client
14720873f85b AnimEncoder API: Support input frames in YUV(A) format.
14735c176d2d add shell for libwebpextras
147444bd9561 fix signature for VP8RecordCoeffTokens()
1475c9b8ea0e small cosmetics on TokenBuffer.
147676394c09 Merge "MIPS: dspr2: added optimization for TrueMotion"
14770f773693 WebPPictureRescale: add a note about 0 width/height
1478241bb5d9 MIPS: dspr2: added optimization for TrueMotion
14796cef0e4f examples/Android.mk: add webpmux_example target
148053c16ff0 Android.mk: add webpmux target
148121852a00 Android.mk: add webpdemux target
14828697a3bc Android.mk: add webpdecoder{,_static} targets
14834a670491 Android.mk: split source lists per-directory
1484b5e79422 MIPS: dspr2: Added optimization for some convert functions
14850f595db6 MIPS: dspr2: Added optimization for some convert functions
14868a218b4a MIPS: [mips32|dspr2]: GetResidualCost rebased
1487ef987500 Speedup method StoreImageToBitMask by 5%.
1488602a00f9 fix iOS arm64 build with Xcode 6.3
148923820507 1-2% faster encoding by removing an indirection in GetResidualCost()
1490eddb7e70 MIPS: dspr2: added otpimization for DC8uv, DC8uvNoTop and DC8uvNoLeft
149173ba2915 MIPS: dspr2: added optimization for functions RD4 and LD4
1492c7129da5 Merge "4-5% faster encoding using SSE2 for GetResidualCost"
149394380d00 MIPS: dspr2: added optimizaton for functions VE4 and DC4
14942a407092 4-5% faster encoding using SSE2 for GetResidualCost
149517e19862 Merge "MIPS: dspr2: added optimization for simple filtering functions"
14963ec404c4 Merge "dsp: normalize WEBP_TSAN_IGNORE_FUNCTION usage"
1497b969f5df dsp: normalize WEBP_TSAN_IGNORE_FUNCTION usage
1498d7b8e711 MIPS: dspr2: added optimization for simple filtering functions
1499235f774e Merge "MIPS: dspr2: Added optimization for function VP8LTransformColorInverse_C"
150042a8a628 MIPS: dspr2: Added optimization for function VP8LTransformColorInverse_C
1501b442bef3 Merge "ApplyFiltersAndEncode: only copy lossless stats"
1502b510fbfe doc/webp-container-spec: note MSB order for chunk diagrams
15039bc0f922 ApplyFiltersAndEncode: only copy lossless stats
15043030f115 Merge "dsp/mips: add some missing TSan annotations"
1505dfcf4593 Merge "MIPS: dspr2: Added optimization for function VP8LAddGreenToBlueAndRed_C"
150655c75a25 dsp/mips: add some missing TSan annotations
15072cb879f0 MIPS: dspr2: Added optimization for function VP8LAddGreenToBlueAndRed_C
1508e1556010 move some cost tables from enc/ to dsp/
1509c3a03168 Merge "picture_csp: fix build w/USE_GAMMA_COMPRESSION undefined"
151039537d7c Merge "VP8LDspInitMIPSdspR2: add missing TSan annotation"
15111dd419ce picture_csp: fix build w/USE_GAMMA_COMPRESSION undefined
151243fd3543 VP8LDspInitMIPSdspR2: add missing TSan annotation
1513c7233dfc Merge "VP8LDspInit: remove memcpy"
15140ec4da96 picture_csp::InitGammaTables*: add missing TSan annotations
151535579a49 VP8LDspInit: remove memcpy
151697f6aff8 VP8YUVInit: add missing TSan annotation
1517f9016d66 dsp/enc::InitTables: add missing TSan annotation
1518e3d9771a VP8EncDspCostInit*: add missing TSan annotations
1519d97c143d Merge "doc/webp-container-spec: cosmetics"
1520309b7908 MIPS: mips32: Added optimization for function SetResidualCoeffs
1521a987faed MIPS: dspr2: added optimization for function GetResidualCost
1522e7d3df23 doc/webp-container-spec: cosmetics
1523be6635e9 Merge "VP8TBufferClear: remove some misleading const's"
152402971e72 Merge "VP8EmitTokens: remove unnecessary param void cast"
15253b77e5a7 VP8TBufferClear: remove some misleading const's
1526aa139c8f VP8EmitTokens: remove unnecessary param void cast
1527c24d8f14 cosmetics: upsampling_sse2: add const to some casts
15281829c42c cosmetics: lossless_sse2: add const to some casts
1529183168f3 cosmetics: enc_sse2: add const to some casts
1530860badca cosmetics: dec_sse2: add const to some casts
15310254db97 cosmetics: argb_sse2: add const to some casts
15321aadf856 cosmetics: alpha_processing_sse2: add const to some casts
15331579de3c vwebp: clear canvas at the beginning of each loop
15344b9fa5d0 Merge "webp-container-spec: clarify background clear on loop"
15354c82284d Updated the near-lossless level mapping.
153656039479 webp-container-spec: clarify background clear on loop
153719f0ba0e Implement true-motion prediction in SSE2
1538774d4cb7 make VP8PredLuma16[] array non-const
1539d7eabb80 Merge "MIPS: dspr2: Added optimization for function CollectHistogram"
1540fe42739c Use integers for kmin/kmax for simplicity.
1541b9df35f7 AnimEncode API: kmax=0 should imply all keyframes.
15426ce296da MIPS: dspr2: Added optimization for function CollectHistogram
15432c906c40 vwebp: remove unnecessary static Help() prototype
1544be0fd1d5 Merge "dec/vp8: clear 'dither_' on skipped blocks"
1545e96170fe Merge "vwebp/animation: display last frame on end-of-loop"
15460f017b56 vwebp/animation: display last frame on end-of-loop
1547c86b40cc enc/near_lossless.c: fix alignment
154866935fb9 dec/vp8: clear 'dither_' on skipped blocks
1549b7de7946 Merge "lossless_neon: enable subtract green for aarch64"
155077724f70 SSE2 version of GradientUnfilter
1551416e1cea lossless_neon: enable subtract green for aarch64
155272831f6b Speedup AnalyzeAndInit for low effort compression.
1553a6597483 Speedup Analyze methods for lossless compression.
155498c81386 Enable Near-lossless feature.
1555c6b24543 AnimEncoder API: Fix for kmax=1 and default kmin case.
1556022d2f88 add SSE2 variants for alpha filtering functions
15572db15a95 Temporarily disable encoding of alpha plane with color cache.
15581d575ccd Merge "Lossless decoding: Remove an unnecessary if condition."
1559cafa1d88 Merge "Simplify backward refs calculation for low-effort."
15607afdaf84 Alpha coding: reorganize the filter/unfiltering code
15614d6d7285 Simplify backward refs calculation for low-effort.
1562ec0d1be5 Cleaup Near-lossless code.
15639814ddb6 Remove the post-transform near-lossless heuristic.
15644509e32e Lossless decoding: Remove an unnecessary if condition.
1565f2ebc4a8 Merge "Regression fix for lossless decoding"
1566783a8cda Regression fix for lossless decoding
15679a062b8e AnimEncoder: Bugfix for kmin = 1 and kmax = 2.
15680f027a72 simplify smart RGB->YUV conversion code
15690d5b334e BackwardReferencesHashChainFollowChosenPath: remove unused variable
1570f480d1a7 Fix to near lossless artefacts on palettized images.
1571d4615d08 Merge changes Ia1686828,I399fda40
1572cb4a18a7 rename HashChainInit into HashChainReset
1573f079e487 use uint16_t for chosen_path[]
1574da091212 MIPS: dspr2: Added optimization for function FTransformWHT
1575b8c20135 Merge "wicdec: (msvs) quiet some /analyze warnings"
15769b228b54 wicdec: (msvs) quiet some /analyze warnings
1577daeb276a Merge "MIPS: dspr2: Added optimization for MultARGBRow function"
1578cc087424 Merge "dsp/cpu: (msvs) add include for __cpuidex"
15794a82aab5 Merge changes I87544e92,I0bb6cda5
15807a191398 dwebp/WritePNG: mark png variables volatile
1581775dfad2 dwebp: include setjmp.h w/WEBP_HAVE_PNG
158247d26be7 dwebp: correct sign in format strings
1583f0e0677b VP8LEncodeStream: add an assert
1584c5f7747f VP8LColorCacheCopy: promote an int before shifting
15850de5f33e dsp/cpu: (msvs) add include for __cpuidex
15867d850f7b MIPS: dspr2: Added optimization for MultARGBRow function
158754875293 MIPS: dspr2: added optimization for function QuantizeBlock
15884fbe9cf2 dsp/cpu: (msvs) avoid immintrin.h on _M_ARM
15893fd59039 simplify/reorganize arguments for CollectColorBlueTransforms
1590b9e356b9 Disable costly TraceBackwards for method=0.
1591a7e7caa4 MIPS: dspr2: added optimization for function TransformColorRed
15922cb39180 Merge "MIPS: dspr2: added optimization for function TransformColorBlue"
1593279e6613 Merge "dsp/cpu: add include for _xgetbv() w/MSVS"
1594b6c0428e dsp/cpu: add include for _xgetbv() w/MSVS
1595d1c4ffae gif2webp: Move GIF decoding related code to a support library.
159607c39559 Merge "AnimEncoder API: Add info in README.mux"
15977b161973 MIPS: dspr2: added optimization for function TransformColorBlue
1598d7c4b02a cpu: fix AVX2 detection for gcc/clang targets
15999d299469 AnimEncoder API: Add info in README.mux
1600d581ba40 follow-up: clean up WebPRescalerXXX dsp function
1601f8740f0d dsp: s/USE_INTRINSICS/WEBP_USE_INTRINSICS/
1602ce73abe0 Merge "introduce a separate WebPRescalerDspInit to initialize pointers"
1603ab66beca introduce a separate WebPRescalerDspInit to initialize pointers
1604205c7f26 fix handling of zero-sized partition #0 corner case
1605cbcdd5ff Merge "move rescaler functions to rescaler* files in src/dsp/"
1606bf586e88 Merge changes I230b3532,Idf3057a7
16076dc79dc2 Merge "anim_encode: fix type conversion warnings"
160811fce25a Merge "dec_neon: remove returns from void functions"
1609c4e63f99 Makefile.vc: add gif2webp target
16104f43d38c enable NEON for Windows ARM builds
16113f6615ac Makefile.vc: add rudimentary Windows ARM support
1612e7c5954c dec_neon: remove returns from void functions
1613f79c163b anim_encode: fix type conversion warnings
16140f54f1ec Remove gif2webp_util which is no longer needed.
1615cbcbedd0 move rescaler functions to rescaler* files in src/dsp/
1616ac79ed19 webpmux: remove experimental fragment handling
1617e8694d4d mux: remove experimental FRGM parsing
16189e92b6ea AnimEncoder API: Optimize single-frame animated images
1619abbae279 Merge "Move over gif2webp to the new AnimEncoder API."
1620a28c4b36 MIPS: move WORK_AROUND_GCC define to appropriate place
1621012d2c60 MIPS: dspr2: added optimization for functions SSEAxB
162267720c8b Move over gif2webp to the new AnimEncoder API.
16239241ecf4 MIPS: dspr2: added optimization for function Average
16249422211d Merge "Tune BackwardReferencesLz77 for low_effort (m=0)."
1625df40057b Merge "Speedup VP8LGetHistoImageSymbols for low effort (m=0) mode."
1626ea08466d Tune BackwardReferencesLz77 for low_effort (m=0).
1627b0b973c3 Speedup VP8LGetHistoImageSymbols for low effort (m=0) mode.
1628c6d32927 argb_sse2: cosmetics
162967f601cd make the 'last_cpuinfo_used' variable names unique
1630b9489861 AnimEncoder API: Init method for default options.
1631856f8ec1 Merge "AnimEncoder API: Remove AnimEncoderFrameOptions."
1632c537514d Merge "AnimEncoder API: GenerateCandidates bugfix."
1633dc0ce039 Merge "AnimEncoder API: Compute change rectangle for first frame too."
1634f00b639b Merge "AnimEncoder API: In Assemble(), always set animation parameters."
163529ed796c Merge "AnimEncoder lib cleanup: prev to prev canvas not needed."
16369f0dd6e5 Merge "WebPAnimEncoder API: Header and implementation"
16375e56bbe0 AnimEncoder API: Remove AnimEncoderFrameOptions.
1638b902c3ea AnimEncoder API: GenerateCandidates bugfix.
1639ef3c39bb AnimEncoder API: Compute change rectangle for first frame too.
1640eec423ab AnimEncoder API: In Assemble(), always set animation parameters.
1641ae1c046e AnimEncoder lib cleanup: prev to prev canvas not needed.
16424b997ae4 WebPAnimEncoder API: Header and implementation
164372208bec move argb_*.o build target to encoder list
164495920538 Merge "multi-thread fix: lock each entry points with a static var"
16454c1b300a Merge "SSE2 implementation of VP8PackARGB"
1646fbcc2004 Merge "add -Wformat-nonliteral and -Wformat-security"
164780d950d9 add -Wformat-nonliteral and -Wformat-security
164804c20e75 Merge "MIPS: dspr2: added optimization for function Intra4Preds"
1649a437694a multi-thread fix: lock each entry points with a static var
1650ca7f60db SSE2 implementation of VP8PackARGB
165172d573f6 simplify the PackARGB signature
16524e2589ff demux: restore strict fragment flag check
16534ba8e074 Merge "webp-container-spec: remove references to fragments"
1654e752f0a6 Merge "demux: remove experimental FRGM parsing"
1655f8abb112 Merge changes I109ec4d9,I73fe7743
1656ae2188a4 MIPS: dspr2: added optimization for function Intra4Preds
16571f4b8642 move VP8EncDspARGBInit() call closer to where it's needed
165814108d78 dec_neon: add DC8uvNoTop / DC8uvNoLeft
1659d8340da7 dec_neon: add DC8uv
1660a66e66c7 webp-container-spec: remove references to fragments
16617ce8788b MIPS: dspr2: added optimization for function MakeARGB32
1662012e623d demux: remove experimental FRGM parsing
166387c3d531 method=0: Don't evaluate any predictor
16646f4fcb98 Merge "MIPS: dspr2: added optimization for function ImportRow"
166524284459 replace unneeded calls to HistogramCopy() by swaps
1666bdf7b40c MIPS: dspr2: added optimization for function ImportRow
1667e66a9225 Merge "MIPS: dspr2: added optimization for function ExportRowC"
1668c279fec1 MIPS: dspr2: added optimization for function ExportRowC
166931a9cf64 Speedup WebP lossless compression for low effort (m=0) mode with following: - Disable Cross-Color transform. - Evaluate predictors #11 (paeth), #12 and #13 only.
16709275d91c MIPS: dspr2: added optimization for function TrueMotion
167126106d66 Merge "enc_neon: fix building with non-Xcode clang (iOS)"
16721c4e3efe unroll the kBands[] indirection to remove a dereference in GetCoeffs()
1673a3946b89 enc_neon: fix building with non-Xcode clang (iOS)
16748ed9c00d Merge "simplify the Histogram struct, to only store max_value and last_nz"
1675bad77571 simplify the Histogram struct, to only store max_value and last_nz
16763cca0dc7 MIPS: dspr2: Added optimization for DCMode function
167737e395fd MIPS: fix functions to use generic BPS istead of hardcoded value
16789475bef4 PickBestUV: fix VP8Copy16x8 invocation
1679441f273f Merge changes I55f8da52,Id73a1e96
16804a279a68 cosmetics: add some missing != NULL comparisons
168166ad3725 factorize BPS definition in dsp.h and add VP8Copy16x8
1682432e5b55 make ALIGN_xxx naming consistent
168357606047 encoder: switch BPS to 32 instead of 16
16841b66bbe9 MIPS: dspr2: added optimization for function TransformColor_C
1685c6d0f9e7 histogram: cosmetics
1686f399d307 Merge changes I6eac17e5,I32d2b514
16879de9074c dec_neon: add TM8uv
16888e517eca bit_reader/kVP8NewRange: range_t -> uint8_t
1689e1857139 dsp: initialize VP8PredChroma8 in VP8DspInit()
1690e0c809ad Move Entropy methods to lossless.c
1691a96ccf8f iosbuild: add x64_64 simulator support
1692a0df5510 Remove handling for WEBP_HINT_GRAPH
1693413dfc0c Move static method definition before its usage.
16940f235665 Update BackwardRefsWithLocalCache.
1695d69e36ec Remove TODOs from lossless encoder code.
1696fdaac8e0 Optmize VP8LGetBackwardReferences LZ77 references.
16972f0e2ba8 MIPS: dspr2: added optimization for function Select
1698a3e79a46 Merge "WebPEncode: Support encoding same pic twice (even if modified)"
1699e4f4dddb WebPEncode: Support encoding same pic twice (even if modified)
1700cbc3fbb4 Merge "Updated VP8LGetBackwardReferences and color cache."
170195a9bd85 Updated VP8LGetBackwardReferences and color cache.
170254f2c14c MIPS: dspr2: added optimization for function FTransform
1703aa42f423 MIPS: dspr2: Added optimization for function VP8LSubtractGreenFromBlueAndRed
170411a25f75 Merge "FlattenSimilarBlocks should only be tried when blending is possible."
17055cccdadf FlattenSimilarBlocks should only be tried when blending is possible.
170695ca44a7 MIPS: dspr2: added optimization for Disto4x4
17074171b672 backward_references.c: reindent after c8581b0
1708c8581b06 Optimize BackwardReferences for RLE encoding.
17095798eee6 MIPS: dspr2: unfilters bugfix (Ie7b7387478a6b5c3f08691628ae00f059cf6d899)
17104167a3f5 Optimize backwardreferences
1711d18554c3 Merge "webp/types.h: use inline for clang++/-std=c++11"
17127489b0e7 gif2webp: Add '-min-size' option to get best compression.
171377bdddf0 Speed up BackwardReferences
17146638710b webp/types.h: use inline for clang++/-std=c++11
1715abf04205 Enable entropy based merge histo for (q<100)
1716572022a3 filters_mips_dsp_r2.c: disable unfilters
1717a28e21b1 MIPS: dspr2: Added optimization for function ClampedAddSubtractFull
171818d5a1ef MIPS: dspr2: added optimization for function ClampedAddSubtractHalf
1719829a8c19 MIPS: dspr2: added optimization for ITransform
1720c94ed49e gif2webp: Use the default hint instead of WEBP_HINT_GRAPH.
1721653ace55 Increase the MAX_COLOR_CACHE_BITS from 9 to 10.
1722919220c7 Change the logic adjusting the Histogram bits.
172353b096c0 Merge "Fix bug in VP8LCalculateEstimateForCacheSize."
1724e912bd55 Fix bug in VP8LCalculateEstimateForCacheSize.
1725541d7839 Merge "dec_neon: add RD4 intra predictor"
1726f8cd0672 Merge "Makefile.vc: add a 'legacy' RTLIBCFG option"
172722881c99 dec_neon: add RD4 intra predictor
1728613d281e update NEWS
17291304eb34 Merge "dec_neon: DC4: use pair-wise adds for top row"
173034c20c06 Makefile.vc: add a 'legacy' RTLIBCFG option
17317083006b Merge "dsp/dec_{neon,sse2}: VE4: normalize variable names"
17320db9031c dsp/dec_{neon,sse2}: VE4: normalize variable names
1733b5bc1530 dec_neon: DC4: use pair-wise adds for top row
17345b90d8fe Unify the API between VP8BitWriter and VP8LBitWriter
1735f7ada560 Merge changes I2e06907b,Ia9ed4ca6,I782282ff
17365beb6bf0 Merge "dec_neon: add VE4 intra predictor"
1737eba6ce06 dec_neon: add DC4 intra predictor
173879abfbd9 dec_neon: add TM4 intra predictor
1739fe395f0e dec_neon: add LD4 intra predictor
174032de385e dec_neon: add VE4 intra predictor
174172395ba9 Merge "Modify CostModel to allocate optimal memory."
174265e5eb8a gif2webp: Support GIF_DISPOSE_RESTORE_PREVIOUS
1743e4c829ef gif2webp: Handle frames with odd offsets + disposal to background.
1744c2b5a039 Modify CostModel to allocate optimal memory.
1745b7a33d7e implement VE4/HE4/RD4/... in SSE2
174697c76f1f make VP8PredLuma4[] non-const and initialize array in VP8DspInit()
17470ea8c6c2 Merge "PrintReg: output to stderr"
1748d7ff2f97 Merge "stopwatch.h: fix includes"
1749f85ec712 PrintReg: output to stderr
175054edbf65 stopwatch.h: fix includes
1751139142e4 Optimize BackwardReferenceHashChainFollowPath.
17525f36b68d enc/backward_references.c: fix indent
1753e0e9960d Merge "sync version numbers to 0.4.2 release"
175464ac5144 sync version numbers to 0.4.2 release
1755c24f8954 Simplify and speedup Backward refs computation.
1756d1c359ef fix shared object build with -fvisibility=hidden
1757a4c3a31b WEBP_TSAN_IGNORE_FUNCTION: fix gcc compat warning
1758f358eeb8 add code for testing random incremental decoding in dwebp
175980247291 mark some init function as being safe for thread_sanitizer.
176079b5bdbf bit_reader.h: cosmetics: fix a typo
17616c673681 Improved near-lossless mode.
17620ce27e71 enc_mips32: workaround gcc-4.9 bug
1763aca1b98f enc/vp8l.c: fix indent
1764ca005027 Evaluate non-palette compression for palette image
1765c8a87bb6 AssignSegments: quiet -Warray-bounds warning
176632f67e30 Merge "enc_neon: initialize vectors w/vdup_n_u32"
1767fabc65da 1-3% faster encoding optimizing SSE_NxN functions
17687534d716 enc_neon: initialize vectors w/vdup_n_u32
17695f813912 Merge "Fix return code of EncodeImageInternal()"
1770e321abe4 Fix return code of EncodeImageInternal()
1771f82cb06a optimize palette ordering
1772f545feee don't set the alpha value for histogram index image
17732d9b0a44 add WebPDispatchAlphaToGreen() to dsp
17741bd4c2ad Merge "Change Entropy based Histogram Combine heuristic."
1775e295b8f1 Merge "iosbuild: cleanup"
17761be4e760 Merge "iosbuild: output autoconf req. on failure"
1777d5e498d4 Change Entropy based Histogram Combine heuristic.
177847a2d8e1 fix MSVC float->int conversion warning
1779041956f6 iosbuild: cleanup
1780767eb402 iosbuild: output autoconf req. on failure
178135ad48b8 HistoHeapInit: correct positions allocation size
178245d9635f lossless: entropy clustering for high qualities.
1783dc37df8c fix type warning for VS9_x64
17849f7d9e6d iosbuild: make iOS 6 the minimum requirement
1785fdd6528b Remove unused VP8LDecoder member variable
1786ea3bba5a Merge "rewrite Disto4x4 in enc_neon.c with intrinsic"
1787f060dfc4 add lossless incremental decoding support
1788ab70794d rewrite Disto4x4 in enc_neon.c with intrinsic
1789d4471637 MIPS: dspr2: added optimization for function FilterLoop24
17902aef54d4 Merge "prepare VP8LDecodeImage for incremental decode"
1791aed0f5a2 Merge "MIPS: dspr2: added optimization for function FilterLoop26"
179228630685 prepare VP8LDecodeImage for incremental decode
1793248f3aed remove br->error_ field
179449e15044 MIPS: dspr2: added optimization for function FilterLoop26
179538128cb9 iobuild.sh: only install .h files in Headers
1796c792d412 Premultiply with alpha during U/V downsampling
17970cc811d7 gif2webp: Background color correction
1798d7167ff7 Amend the lossless spec according to issue #205, #206 and #224
1799b901416b Record the lossless size stats.
1800cddd3340 Add a WebPExtractAlpha function to dsp
18010716a98e fix indent after I0204949917836f74c0eb4ba5a7f4052a4797833b
1802f9ced95a Optimize lossless decoding for trivial(ARB) codes.
1803924fcfd9 Merge "webpmux: simplify InitializeConfig()"
1804c0a462ca webpmux: simplify InitializeConfig()
18056986bb5e webpmux: fix indent
1806f89e1690 webpmux: fix exit status on numeric value parse error
18072172cb62 Merge "webpmux: fix loop_count range check"
1808e3b343ec Merge "examples: warn on invalid numeric parameters"
18090e23c487 webpmux: fix loop_count range check
18106208338a Merge "fix loop bug in DispatchAlpha()"
1811d51f3e40 gif2webp: Handle frames with missing  graphic control extension
1812690b491a fix loop bug in DispatchAlpha()
181396d43a87 examples: warn on invalid numeric parameters
18143101f537 MIPS: dspr2: added optimization for TransformOne
1815a6bb9b17 SSE2 for inverse Mult(ARGB)Row and ApplyAlphaMultiply
1816d84a8ffd Remove default initialization of decoder status.
1817be70b86c configure: simplify libpng-config invocation
1818e0a99321 Rectify bug in lossless incremental decoding.
1819e2502a97 MIPS: dspr2: added optimization for TransformAC3
182024e1072a MIPS: dspr2: added optimization for TransformDC
1821c0e84df8 Merge "Slightly faster lossless decoding (1%)"
18228dd28bb5 Slightly faster lossless decoding (1%)
1823f0103595 MIPS: dspr2: added optimization for ColorIndexInverseTransforms
1824d3242aee make VP8LSetBitPos() set br->eos_ flag
1825a9decb55 Lossless decoding: fix eos_ flag condition
18263fea6a28 fix erroneous dec->status_ setting
182780b8099f MIPS: dspr2: add some specific mips code to commit I2c3f2b12f8df15b785fad5a9c56316e954ae0c53
1828e5640625 Merge "further refine the COPY_PATTERN optim for DecodeAlpha"
1829854509fe enc/histogram.c: reindent after f4059d0
183034421964 Merge "~3-5% faster encoding optimizing PickBestIntra*()"
1831865069c1 further refine the COPY_PATTERN optim for DecodeAlpha
1832a5956228 added C-level optimization for DecodeAlphaData function
1833187d379d add a fallback to ALPHA_NO_COMPRESSION
1834a48a2d76 ~3-5% faster encoding optimizing PickBestIntra*()
1835a6140194 ExUtilReadFromStdin: (windows) open stdin in bin mode
1836e80eab1f webpmux: (windows) open stdout in binary mode
1837e9bfb116 cwebp: (windows) open stdout in binary mode
18385927e15b example_util: add ExUtilSetBinaryMode
183930f3b75b webpmux man page: Clarify some title, descriptions and examples
184077d4c7e3 address cosmetic comments from patch #71380
1841f75dfbf2 Speed up Huffman decoding for lossless
1842637b3888 dsp/lossless: workaround gcc-4.9 bug on arm
18438323a903 dsp.h: collect gcc/clang version test macros
1844e6c4b52f move static initialization of WebPYUV444Converters[] to the Init function.
184549911d4d Merge "fix indentation"
1846f4059d0c Code cleanup for HistogramRemap.
1847e632b092 fix indentation
1848f5c04d64 Merge "add a DispatchAlpha() for SSE2 that handles 8 pixels at a time"
1849fc98edd9 add a DispatchAlpha() for SSE2 that handles 8 pixels at a time
185073d361dd introduce VP8EncQuantize2Blocks to quantize two blocks at a time
18510b21c30b MIPS: dspr2: added optimization for EmitAlphaRGB
1852953acd56 enc_neon: enable QuantizeBlock for aarch64
1853f4ae1437 MIPS: mips32: code rebase
185456977154 MIPS: dspr2: added optimizations for VP8YuvTo*
18552523aa73 SmartRGBYUV: fix odd-width problem with pixel replication
1856ee52dc4e fix some MSVC64 warning about float conversion
18573fca851a cpu: check for _MSC_VER before using msvc inline asm
1858e2a83d71 faster RGB->YUV conversion function (~7% speedup)
1859de2d03e1 Merge "Add smart RGB->YUV conversion option -pre 4"
18603fc4c539 Add smart RGB->YUV conversion option -pre 4
1861b4dc4069 MIPS: dspr2: added optimization for (un)filters
1862137e6090 Merge "configure: add work around for gcc-4.9 aarch64 bug"
1863b61c9cec MIPS: dspr2: Optimization of some simple point-sampling functions
1864e2b8cec0 configure: add work around for gcc-4.9 aarch64 bug
186598c54107 MIPS: mips32r2: added optimization for BSwap32
1866dab702b3 Update PATENTS to reflect s/VP8/WebM/g
1867b564f7c7 Merge "MIPS: detect mips32r6 and disable mips32r1 code"
1868b7e5a5c4 MIPS: detect mips32r6 and disable mips32r1 code
186963c2fc02 Correctly use the AC_CANONICAL_* macros
1870bb07022b Merge "cosmetics"
1871e300c9d8 cosmetics
18720e519eea Merge "cosmetics: remove some extraneous 'extern's"
18733ef0f08a Merge "vp8enci.h: cosmetics: fix '*' placement"
18744c6dde37 bit_writer: cosmetics: rename kFlush() -> Flush()
1875f7b4c48b cosmetics: remove some extraneous 'extern's
1876b47fb00a vp8enci.h: cosmetics: fix '*' placement
1877b5a36cc9 add -near_lossless [0..100] experimental option
18780524d9e5 dsp: detect mips64 & disable mips32 code
1879d3485d96 cwebp.1: fix quality description placement
188029a9fe22 Merge tag 'v0.4.1'
18818af27718 update ChangeLog (tag: v0.4.1, origin/0.4.1)
1882e09e9ff6 Record & log the image pre-processing time.
1883f59c0b4b iosbuild.sh: specify optimization flags
18848d34ea3e update ChangeLog (tag: v0.4.1-rc1)
1885dbc3da66 makefile.unix: add vwebp.1 to the dist target
188689a7c83c update ChangeLog
1887ffe67ee9 Merge "update NEWS for the next release" into 0.4.1
18882def1fe6 gif2webp: dust up the help message
1889fb668d78 remove -noalphadither option from README/vwebp.1
1890e49f693b update NEWS for the next release
1891cd013580 Merge "update AUTHORS" into 0.4.1
1892268d01eb update AUTHORS
189385213b9b bump version to 0.4.1
1894695f80ae Merge "restore mux API compatibility" into 0.4.1
1895862d296c restore mux API compatibility
18968f6f8c5d remove the !WEBP_REFERENCE_IMPLEMENTATION tweak in Put8x8uv
1897d713a696 Merge changes If4debc15,I437a5d5f into 0.4.1
1898c2fc52e4 restore encode API compatibility
1899793368e8 restore decode API compatibility
1900b8984f31 gif2webp: fix compile with giflib 5.1.0
1901222f9b1a gif2webp: simplify giflib version checking
1902d2cc61b7 Extend MakeARGB32() to accept Alpha channel.
19034595b62b Merge "use explicit size of kErrorMessages[] arrays"
1904157de015 Merge "Actuate memory stats for PRINT_MEMORY_INFO"
1905fbda2f49 JPEG decoder: delay conversion to YUV to WebPEncode() call
19060b747b1b use explicit size of kErrorMessages[] arrays
19073398d81a Actuate memory stats for PRINT_MEMORY_INFO
19086f3202be Merge "move WebPPictureInit to picture.c"
19096c347bbb move WebPPictureInit to picture.c
1910fb3acf19 fix configure message for multi-thread
191140b086f7 configure: check for _beginthreadex
19121549d620 reorder the YUVA->ARGB and ARGB->YUVA functions correctly
1913c6461bfd Merge "extract colorspace code from picture.c into picture_csp.c"
1914736f2a17 extract colorspace code from picture.c into picture_csp.c
1915645daa03 Merge "configure: check for -Wformat-security"
1916abafed86 configure: check for -Wformat-security
1917fbadb480 split monolithic picture.c into picture_{tools,psnr,rescale}.c
1918c76f07ec dec_neon/TransformAC3: initialize vector w/vcreate
1919bb4fc051 gif2webp: Allow single-frame animations
192046fd44c1 thread: remove harmless race on status_ in End()
19215a1a7264 Merge "configure: check for __builtin_bswapXX()"
19226781423b configure: check for __builtin_bswapXX()
19236450c48d configure: fix iOS builds
19246422e683 VP8LFillBitWindow: enable fast path for 32-bit builds
19254f7f52b2 VP8LFillBitWindow: respect WEBP_FORCE_ALIGNED
1926e458badc endian_inl.h: implement htoleXX with BSwapXX
1927f2664d1a endian_inl.h: add BSwap16
19286fbf5345 Merge "configure: add --enable-aligned"
1929dc0f479d configure: add --enable-aligned
19309cc69e2b Merge "configure: support WIC + OpenGL under mingw64"
1931257adfb0 remove experimental YUV444 YUV422 and YUV400 code
193210f4257c configure: support WIC + OpenGL under mingw64
1933380cca4f configure.ac: add AC_C_BIGENDIAN
1934ee70a901 endian_inl.h: add BSwap64
193547779d46 endian_inl.h: add BSwap32
1936d5104b1f utils: add endian_inl.h
193758ab6224 Merge "make alpha-detection loop in IsKeyFrame() in good x/y order"
19389d562902 make alpha-detection loop in IsKeyFrame() in good x/y order
1939516971b1 lossless: Remove unaligned read warning
1940b8b596f6 Merge "configure.ac: add an autoconf version prerequisite"
194134b02f8c configure.ac: add an autoconf version prerequisite
1942e59f5360 neon: normalize vdup_n_* usage
19436ee7160d Merge changes I0da7b3d3,Idad2f278,I4accc305
1944abc02f24 Merge "fix (uncompiled) typo"
1945bc03670f neon: add INIT_VECTOR4
19466c1c632b neon: add INIT_VECTOR3
1947dc7687e5 neon: add INIT_VECTOR2
19484536e7c4 add WebPMuxSetCanvasSize() to the mux API
1949824eab10 fix (uncompiled) typo
19501f3e5f1e remove unused 'shift' argument and QFIX2 define
19518e867051 Merge "VP8LoadNewBytes: use __builtin_bswap32 if available"
19521b6a2635 Merge "Fix handling of weird GIF with canvas dimension 0x0"
19531da3d461 VP8LoadNewBytes: use __builtin_bswap32 if available
19541582e402 Fix handling of weird GIF with canvas dimension 0x0
1955b8811dac Merge "rename interface -> winterface"
1956db8b8b5f Fix logic in the GIF LOOP-detection parsing
195725aaddc8 rename interface -> winterface
19585584d9d2 make WebPSetWorkerInterface() check its arguments
1959a9ef7ef9 Merge "cosmetics: update thread.h comments"
1960c6af9991 Merge "dust up the help message"
19610a8b8863 dust up the help message
1962a9cf3191 cosmetics: update thread.h comments
196327bfeee4 QuantizeBlock SSE2 Optimization:
19642bc0dc3e Merge "webpmux: warn when odd frame offsets are used"
19653114ebe4 Merge changes Id8edd3c1,Id418eb96,Ide05e3be
1966c0726634 webpmux: warn when odd frame offsets are used
1967c5c6b408 Merge "add alpha dithering for lossy"
1968d5146784 examples/Android.mk: add cwebp
1969ca0fa7c7 Android.mk: move dwebp to examples/Android.mk
197073d8fca0 Android.mk: add ENABLE_SHARED flag
19716e93317f muxread: fix out of bounds read
19728b0f6a48 Makefile.vc: fix CFLAGS assignment w/HAVE_AVX2=1
1973bbe32df1 add alpha dithering for lossy
197479020767 Merge "make error-code reporting consistent upon malloc failure"
197577bf4410 make error-code reporting consistent upon malloc failure
19767a93c000 **/Makefile.am: remove unused AM_CPPFLAGS
197724e30805 Add an interface abstraction to the WebP worker thread implementation
1978d6cd6358 Merge "fix orig_rect==NULL case"
19792bfd1ffa fix orig_rect==NULL case
1980059e21c1 Merge "configure: move config.h to src/webp/config.h"
1981f05fe006 properly report back encoding error code in WebPFrameCacheAddFrame()
198232b31379 configure: move config.h to src/webp/config.h
198390090d99 Merge changes I7c675e51,I84f7d785
1984ae7661b3 makefiles: define WEBP_HAVE_AVX2 when appropriate
198569fce2ea remove the special casing for res->first in VP8SetResidualCoeffs
19866e61a3a9 configure: test for -msse2
1987b9d2efc6 rename upsampling_mips32.c to yuv_mips32.c
1988bdfeebaa dsp/yuv: move sse2 functions to yuv_sse2.c
198946b32e86 Merge "configure: set WEBP_HAVE_AVX2 when available"
199088305db4 Merge "VP8RandomBits2: prevent signed int overflow"
199173fee88c VP8RandomBits2: prevent signed int overflow
1992db4860b3 enc_sse2: prevent signed int overflow
19933fdaf4d2 Merge "real fix for longjmp warning"
1994385e3340 real fix for longjmp warning
1995230a0555 configure: set WEBP_HAVE_AVX2 when available
1996a2ac8a42 restore original value_/range_ field order
19975e2ee56f Merge "remove libwebpdspdecode dep on libwebpdsp_avx2"
199861362db5 remove libwebpdspdecode dep on libwebpdsp_avx2
199942c447ae Merge "lossy bit-reader clean-up:"
2000479ffd8b Merge "remove unused #include's"
20019754d39a Merge "strong filtering speed-up (~2-3% x86, ~1-2% for NEON)"
2002158aff9b remove unused #include's
200309545eea lossy bit-reader clean-up:
2004ea8b0a17 strong filtering speed-up (~2-3% x86, ~1-2% for NEON)
20056679f899 Optimize VP8SetResidualCoeffs.
2006ac591cf2 fix for gcc-4.9 warnings about longjmp + local variables
20074dfa86b2 dsp/cpu: NaCl has no support for xgetbv
20084c398699 Merge "cwebp: fallback to native webp decode in WIC builds"
200933aa497e Merge "cwebp: add some missing newlines in longhelp output"
2010c9b340a2 fix missing WebPInitAlphaProcessing call for premultiplied colorspace output
201157897bae Merge "lossless_neon: use vcreate_*() where appropriate"
20126aa4777b Merge "(enc|dec)_neon: use vcreate_*() where appropriate"
20130d346e41 Always reinit VP8TransformWHT instead of hard-coding
20147d039fc3 cwebp: fallback to native webp decode in WIC builds
2015d471f424 cwebp: add some missing newlines in longhelp output
2016bf0e0030 lossless_neon: use vcreate_*() where appropriate
20179251c2f6 (enc|dec)_neon: use vcreate_*() where appropriate
2018399b916d lossy decoding: correct alpha-rescaling for YUVA format
201978c12ed8 Merge "Makefile.vc: add rudimentary avx2 support"
2020dc5b122f try to remove the spurious warning for static analysis
2021ddfefd62 Makefile.vc: add rudimentary avx2 support
2022a8911643 Merge "simplify VP8LInitBitReader()"
2023fdbcd44d simplify VP8LInitBitReader()
20247c004287 makefile.unix: add rudimentary avx2 support
2025515e35cf Merge "add stub dsp/enc_avx2.c"
2026a05dc140 SSE2: yuv->rgb speed-up for point-sampling
2027178e9a69 add stub dsp/enc_avx2.c
20281b99c09c Merge "configure: add a test for -mavx2"
2029fe728071 configure: add a test for -mavx2
2030e46a247c cpu: fix check for __cpuidex availability
2031176fda26 fix the bit-writer for lossless in 32bit mode
2032541784c7 dsp.h: add a check for AVX2 / define WEBP_USE_AVX2
2033bdb151ee dsp/cpu: add AVX2 detection
2034ab9f2f86 Merge "revamp the point-sampling functions by processing a full plane"
2035a2f8b289 revamp the point-sampling functions by processing a full plane
2036ef076026 use decoder's DSP functions for autofilter
20372b5cb326 Merge "dsp/cpu: add AVX detection"
2038df08e67e dsp/cpu: add AVX detection
2039e2f405c9 Merge "clean-up and slight speed-up in-loop filtering SSE2"
2040f60957bf clean-up and slight speed-up in-loop filtering SSE2
20419fc3ae46 .gitattributes: treat .ppm as binary
20423da924b5 Merge "dsp/WEBP_USE_NEON: test for __aarch64__"
2043c7164490 Android.mk: always include *_neon.c in the build
2044a577b23a dsp/WEBP_USE_NEON: test for __aarch64__
204554bfffca move RemapBitReader() from idec.c to bit_reader code
204634168ecb Merge "remove all unused layer code"
2047f1e77173 remove all unused layer code
2048b0757db7 Code cleanup for VP8LGetHistoImageSymbols.
20495fe628d3 make the token page size be variable instead of fixed 8192
2050f948d08c memory debug: allow setting pre-defined malloc failure points
2051ca3d746e use block-based allocation for backward refs storage, and free-lists
20521ba61b09 enable NEON intrinsics in aarch64 builds
2053b9d2bb67 dsp/neon.h: coalesce intrinsics-related defines
2054b5c75258 iosbuild: add support for iOSv7/aarch64
20559383afd5 Reduce number of memory allocations while decoding lossless.
2056888e63ed Merge "dsp/lossless: prevent signed int overflow in left shift ops"
20578137f3ed Merge "instrument memory allocation routines for debugging"
20582aa18736 instrument memory allocation routines for debugging
2059d3bcf72b Don't allocate VP8LHashChain, but treat like automatic object
2060bd6b8619 dsp/lossless: prevent signed int overflow in left shift ops
2061b7f19b83 Merge "dec/vp8l: prevent signed int overflow in left shift ops"
206229059d51 Merge "remove some uint64_t casts and use."
2063e69a1df4 dec/vp8l: prevent signed int overflow in left shift ops
2064cf5eb8ad remove some uint64_t casts and use.
206538e2db3e MIPS: MIPS32r1: Added optimization for HistogramAdd.
2066e0609ade dwebp: fix exit code on webp load failure
2067bbd358a8 Merge "example_util.h: avoid forward declaring enums"
20688955da21 example_util.h: avoid forward declaring enums
20696d6865f0 Added SSE2 variants for Average2/3/4
2070b3a616b3 make HistogramAdd() a pointer in dsp
2071c8bbb636 dec_neon: relocate some inline-asm defines
20724e393bb9 dec_neon: enable intrinsics-only functions
2073ba99a922 dec_neon: use positive tests for USE_INTRINSICS
207469058ff8 Merge "example_util: add ExUtilDecodeWebPIncremental"
2075a7828e8b dec_neon: make WORK_AROUND_GCC conditional on version
20763f3d717a Merge "enc_neon: enable intrinsics-only functions"
2077de3cb6c8 Merge "move LOCAL_GCC_VERSION def to dsp.h"
20781b2fe14d example_util: add ExUtilDecodeWebPIncremental
2079ca49e7ad Merge "enc_neon: move Transpose4x4 to dsp/neon.h"
2080ad900abd Merge "fix warning about size_t -> int conversion"
20814825b436 fix warning about size_t -> int conversion
208242b35e08 enc_neon: enable intrinsics-only functions
2083f937e012 move LOCAL_GCC_VERSION def to dsp.h
20845e1a17ef enc_neon: move Transpose4x4 to dsp/neon.h
2085c7b92a5a dec_neon: (WORK_AROUND_GCC) delete unused Load4x8
20868e5f90b0 Merge "make ExUtilLoadWebP() accept NULL bitstream param."
208705d4c1b7 Merge "cwebp: add webpdec"
2088ddeb6ac8 cwebp: add webpdec
208935d7d095 Merge "Reduce memory footprint for encoding WebP lossless."
20900b896101 Reduce memory footprint for encoding WebP lossless.
2091f0b65c9a make ExUtilLoadWebP() accept NULL bitstream param.
20929c0a60cc Merge "dwebp: move webp decoding to example_util"
20931d62acf6 MIPS: MIPS32r1: Added optimization for HuffmanCost functions.
20944a0e7390 dwebp: move webp decoding to example_util
2095c0220460 Merge "Bugfix: Incremental decode of lossy-alpha"
20968c7cd722 Bugfix: Incremental decode of lossy-alpha
20977955152d MIPS: fix error with number of registers.
2098b1dabe37 Merge "Move the HuffmanCost() function to dsp lib"
209975b12006 Move the HuffmanCost() function to dsp lib
21002772b8bd MIPS: fix assembler error revealed by clang's debug build
21016653b601 enc_mips32: fix unused symbol warning in debug
21028dec1209 enc_mips32: disable ITransform(One) in debug builds
210398519dd5 enc_neon: convert Disto4x4 to intrinsics
2104fe9317c9 cosmetics:
2105953b0746 enc_neon: cosmetics
2106a9fc697c Merge "WIP: extract the float-calculation of HuffmanCost from loop"
21073f84b521 Merge "replace some mult-long (vmull_u8) with mult-long-accumulate (vmlal_u8)"
21084ae0533f MIPS: MIPS32r1: Added optimizations for ExtraCost functions.
2109b30a04cf WIP: extract the float-calculation of HuffmanCost from loop
2110a8fe8ce2 Merge "NEON intrinsics version of CollectHistogram"
211195203d2d NEON intrinsics version of CollectHistogram
21127ca2e74b replace some mult-long (vmull_u8) with mult-long-accumulate (vmlal_u8)
211341c6efbd fix lossless_neon.c
21148ff96a02 NEON intrinsics version of FTransform
21150214f4a9 Merge "MIPS: MIPS32r1: Added optimizations for FastLog2"
2116baabf1ea MIPS: MIPS32r1: Added optimizations for FastLog2
21173d49871d NEON functions for lossless coding
21183fe02915 MIPS: MIPS32r1: Added optimizations for SSE functions.
2119c503b485 Merge "fix the gcc-4.6.0 bug by implementing alternative method"
2120abe6f487 fix the gcc-4.6.0 bug by implementing alternative method
21215598bdec enc_mips32.c: fix file mode
21222b1b4d5a MIPS: MIPS32r1: Add optimization for GetResidualCost
2123f0a1f3cd Merge "MIPS: MIPS32r1: Added optimization for FTransform"
21247231f610 MIPS: MIPS32r1: Added optimization for FTransform
2125869eaf6c  ~30% encoding speedup: use NEON for QuantizeBlock()
2126f758af6b enc_neon: convert FTransformWHT to intrinsics
21277dad095b MIPS: MIPS32r1: Added optimization for Disto4x4 (TTransform)
21282298d5f3 MIPS: MIPS32r1: Added optimization for QuantizeBlock
2129e88150c9 Merge "MIPS: MIPS32r1: Add optimization for ITransform"
2130de693f25 lossless_neon: disable VP8LConvert* functions
21314143332b NEON intrinsics for encoding
21320ca2914b MIPS: MIPS32r1: Add optimization for ITransform
213371bca5ec dec_neon: use vst_lane instead of vget_lane
2134bf061052 Intrinsics NEON version of TransformOne
213519c6f1ba Merge "dec_neon: use vld?_lane instead of vset?_lane"
21367a94c0cf upsampling_neon: drop NEON suffix from local functions
2137d14669c8 upsampling_sse2: drop SSE2 suffix from local functions
21382ca42a4f enc_sse2: drop SSE2 suffix from local functions
2139d038e619 dec_sse2: drop SSE2 suffix from local functions
2140fa52d752 dec_neon: use vld?_lane instead of vset?_lane
2141c520e77d cosmetic: fix long line
21424b0f2dae Merge "add intrinsics NEON code for chroma strong-filtering"
2143e351ec07 add intrinsics NEON code for chroma strong-filtering
2144aaf734b8 Merge "Add SSE2 version of forward cross-color transform"
2145c90a902e Add SSE2 version of forward cross-color transform
2146bc374ff3 Use histogram_bits to initalize transform_bits.
21472132992d Merge "Add strong filtering intrinsics (inner and outer edges)"
21485fbff3a6 Add strong filtering intrinsics (inner and outer edges)
2149d4813f0c Add SSE2 function for Inverse Cross-color Transform
215026029568 dec_neon: add strong loopfilter intrinsics
2151cca7d7ef Merge "add intrinsics version of SimpleHFilter16NEON()"
21521a05dfa7 windows: fix dll builds
2153d6c50d8a Merge "add some colorspace conversion functions in NEON"
21544fd7c82e SSE2 variants of Subtract-Green: Rectify loop condition
215597e5fac3 add some colorspace conversion functions in NEON
2156b9a7a45f add intrinsics version of SimpleHFilter16NEON()
2157daccbf40 add light filtering NEON intrinsics
2158af444608 fix typo in STORE_WHT
21596af6b8e1 Tune HistogramCombineBin for large images.
2160af93bdd6 use WebPSafe[CM]alloc/WebPSafeFree instead of [cm]alloc/free
216151f406a5 lossless_sse2: relocate VP8LDspInitSSE2 proto
21620f4f721b separate SSE2 lossless functions into its own file
2163514fc251 VP8LConvertFromBGRA: use conversion function pointers
21646d2f3527 dsp/dec: TransformDCUV: use VP8TransformDC
2165defc8e1b Merge "fix out-of-bound read during alpha-plane decoding"
2166fbed3643 Merge "dsp: reuse wht transform from dec in encoder"
2167d8467084 Merge "Add SSE2 version of ARGB -> BGR/RGB/... conversion functions"
2168207d03b4 fix out-of-bound read during alpha-plane decoding
2169d1b33ad5 2-5% faster trellis with clang/MacOS (and ~2-3% on ARM)
2170369c26dd Add SSE2 version of ARGB -> BGR/RGB/... conversion functions
2171df230f27 dsp: reuse wht transform from dec in encoder
217280e218d4 Android.mk: fix build with APP_ABI=armeabi-v7a-hard
217359daf083 Merge "cosmetics:"
217453622008 cosmetics:
21753e7f34a3 AssignSegments: quiet array-bounds warning
21763c2ebf58 Merge "UpdateHistogramCost: avoid implicit double->float"
2177cf821c82 UpdateHistogramCost: avoid implicit double->float
2178312e638f Extend the search space for GetBestGreenRedToBlue
21791c58526f Fix few nits
2180fef22704 Optimize and re-structure VP8LGetHistoImageSymbols
2181068b14ac Optimize lossless decoding.
21825f0cfa80 Do a binary search to get the optimum cache bits.
218324ca3678 Merge "allow 'cwebp -o -' to emit output to stdout"
2184e12f874e allow 'cwebp -o -' to emit output to stdout
21852bcad89b allow some more stdin/stout I/O
218684ed4b3a fix cwebp.1 typos after patch #69199
218765b99f1c add a -z option to cwebp, and WebPConfigLosslessPreset() function
218830176619 4-5% faster trellis by removing some unneeded calculations.
2189687a58ec histogram.c: reindent after b33e8a0
219006d456f6 Merge "~3-4% faster lossless encoding"
2191c60de260 ~3-4% faster lossless encoding
219242eb06fc Merge "few cosmetics after patch #69079"
219382af8264 few cosmetics after patch #69079
2194b33e8a05 Refactor code for HistogramCombine.
2195ca1bfff5 Merge "5-10% encoding speedup with faster trellis (-m 6)"
21965aeeb087 5-10% encoding speedup with faster trellis (-m 6)
219782ae1bf2 cosmetics: normalize VP8GetCPUInfo checks
2198e3dd9243 Merge "Refactor GetBestPredictorForTile for future tuning."
2199206cc1be Refactor GetBestPredictorForTile for future tuning.
22003cb84062 Merge "speed-up trellis quant (~5-10% overall speed-up)"
2201b66f2227 Merge "lossy encoding: ~3% speed-up"
22024287d0d4 speed-up trellis quant (~5-10% overall speed-up)
2203390c8b31 lossy encoding: ~3% speed-up
22049a463c4a Merge "dec_neon: convert TransformWHT to intrinsics"
2205e8605e96 Merge "dec_neon: add ConvertU8ToS16"
22064aa3e412 MIPS: MIPS32r1: rescaler bugfix
2207c16cd99a Speed up lossless encoder.
22089d6b5ff1 dec_neon: convert TransformWHT to intrinsics
22092ff0aae2 dec_neon: add ConvertU8ToS16
221077a8f919 fix compilation with USE_YUVj flag
22114acbec1b Merge changes I3b240ffb,Ia9370283,Ia2d28728
22122719bb7e dec_neon: TransformAC3: work on packed vectors
2213b7b60ca1 dec_neon: add SaturateAndStore4x4
2214b7685d73 Rescale: let ImportRow / ExportRow be pointer-to-function
2215e02f16ef dec_neon.c: convert TransformDC to intrinsics
22169cba963f add missing file
22178992ddb7 use static clipping tables
22180235d5e4 1-2% faster quantization in SSE2
2219b2fbc36c fix VC12-x64 warning
22206e37cb94 Merge "cosmetics: backward_references.c: reindent after a7d2ee3"
2221a42ea974 cosmetics: backward_references.c: reindent after a7d2ee3
22226c327442 Merge "fix missing __BIG_ENDIAN__ definition on some platform"
2223a8b6aad1 fix missing __BIG_ENDIAN__ definition on some platform
2224fde2904b Increase initial buffer size for VP8L Bit Writer.
2225a7d2ee39 Optimize cache estimate logic.
22267fb6095b Merge "dec_neon.c: add TransformAC3"
2227bf182e83 VP8LBitWriter: use a bit-accumulator
22283f40b4a5 Merge "MIPS: MIPS32r1: clang macro warning resolved"
22291684f4ee WebP Decoder: Mark some truncated bitstreams as invalid
2230acbedac4 MIPS: MIPS32r1: clang macro warning resolved
2231228e4877 dec_neon.c: add TransformAC3
2232393f89b7 Android.mk: avoid gcc-specific flags with clang
223332aeaf11 revamp VP8LColorSpaceTransform() a bit
22340c7cc4ca Merge "Don't dereference NULL, ensure HashChain fully initialized"
2235391316fe Don't dereference NULL, ensure HashChain fully initialized
2236926ff402 WEBP_SWAP_16BIT_CSP: remove code dup
22371d1cd3bb Fix decode bug for rgbA_4444/RGBA_4444 color-modes.
2238939e70e7 update AUTHORS file
22398934a622 cosmetics: *_mips32.c
2240dd438c9a MIPS: MIPS32r1: Optimization of some simple point-sampling functions. PATCH [6/6]
224153520911 Added support for calling sampling functions via pointers.
2242d16c6974 MIPS: MIPS32r1: Optimization of filter functions. PATCH [5/6]
224304336fc7 MIPS: MIPS32r1: Optimization of function TransformOne. PATCH [4/6]
224492d8fc7d MIPS: MIPS32r1: Optimization of function WebPRescalerImportRow. PATCH [3/6]
2245bbc23ff3 parse one row of intra modes altogether
2246a2f608f9 Merge "MIPS: MIPS32r1: Optimization of function WebPRescalerExportRow. [2/6]"
224788230854 MIPS: MIPS32r1: Optimization of function WebPRescalerExportRow. [2/6]
2248c5a5b028 decode mt+incremental: fix segfault in debug builds
22499882b2f9 always use fast-analysis for all methods.
2250000adac0 Merge "autoconf: update ax_pthread.m4"
22512d2fc37d update .gitignore
22525bf4255a Merge "Make it possible to avoid automagic dependencies"
2253c1cb1933 disable NEON for arm64 platform
225473a304e9 Make it possible to avoid automagic dependencies
22554d493f8d MIPS: MIPS32r1: Decoder bit reader function optimized. PATCH [1/6]
2256c741183c make WebPCleanupTransparentArea work with argb picture
22575da18552 add a decoding option to flip image vertically
225800c3c4e1 Merge "add man/vwebp.1"
22592c6bb428 add man/vwebp.1
2260ea59a8e9 Merge "Merge tag 'v0.4.0'"
22617574bed4 fix comments related to array sizes
22620b5a90fd dwebp.1: fix option formatting
2263effcb0fd Merge tag 'v0.4.0'
22647c76255d autoconf: update ax_pthread.m4
2265fff2a11b make -short work with -print_ssim, -print_psnr, etc.
226668e7901d update ChangeLog (tag: v0.4.0-rc1, tag: v0.4.0, origin/0.4.0)
2267256e4333 update NEWS description with new general features
226829625340 Merge "gif2webp: don't use C99 %zu" into 0.4.0
22693b9f9dd0 gif2webp: don't use C99 %zu
2270b5b2e3c7 cwebp: fix metadata output w/lossy+alpha
2271ad26df1a makefile.unix: clean up libgif2webp_util.a
2272c3b45570 update Changelog
2273ca841121 Merge "bump version to 0.4.0" into 0.4.0
22748c524db8 bump version to 0.4.0
2275eec2398c update AUTHORS & .mailmap
2276b9bbf6a1 update NEWS for 0.4.0
2277c72e0811 Merge "dec/webp.c: don't wait for data before reporting w/h"
22785ad65314 dec/frame.c: fix formatting
2279f7fc4bc8 dec/webp.c: don't wait for data before reporting w/h
228066a32af5 Merge "NEON speed up"
228126d842eb NEON speed up
2282f307f98b Merge "webpmux: let -- stop parameter parsing"
2283fe051da7 Merge "README: add a section on gif2webp"
22846fd2bd62 Merge "manpage pedantry"
22854af19007 README: add a section on gif2webp
22866f36ade9 manpage pedantry
2287f9016cb9 README: update dwebp options
2288b4fa0a47 webpmux: let -- stop parameter parsing
2289a9a20acf gif2webp: Add a multi-threaded encode option
2290495bef41 fix bug in TrellisQuantize
2291605a7127 simplify __cplusplus ifdef
229233109f99 Merge "drop: ifdef __cplusplus checks from C files"
22937f9de0b9 Merge changes I994a5587,I8467bb71,I13b50688,I1e2c9c7b
22945459030b gif2webp: let -- stop parameter parsing
2295a4b0aa06 vwebp: let -- stop parameter parsing
229698af68fe cwebp: let -- stop parameter parsing
2297a33831e2 dwebp: let -- stop parameter parsing
229836301249 add some checks on error paths
2299ce4c7139 Merge "autoconf: add --disable-wic"
23005227d991 drop: ifdef __cplusplus checks from C files
2301f6453559 dwebp.1: fix typo
2302f91034f2 Merge "cwebp: print metadata stats when no output file is given"
2303d4934553 gif2webp: Backward compatibility for giflib version <= 4.1.3
23044c617d32 gif2webp: Disable output of ICC profile by default
230573b731fb introduce a special quantization function for WHT
230641c0cc4b Make Forward WHT transform use 32bit fixed-point calculation
2307a3359f5d Only compute quantization params once
230870490437 cwebp: print metadata stats when no output file is given
2309d513bb62 * fix off-by-one zthresh calculation * remove the sharpening for non luma-AC coeffs * adjust the bias a little bit to compensate for this
2310ad9dec0c Merge "cosmetics: dwebp: fix local function name format"
2311f737f037 Merge "dwebp: remove a dead store"
23123c3a70da Merge "makefile.unix: install binaries in $(DESTDIR)/bin/"
2313150b655f Merge "Android.mk: add some release compile flags"
2314dbebd33b cosmetics: dwebp: fix local function name format
231527749951 dwebp: remove a dead store
2316a01e04fe autoconf: add --disable-wic
23175009b227 makefile.unix: install binaries in $(DESTDIR)/bin/
2318bab30fca Merge "fix -print_psnr / ssim options"
2319ebef7fb3 fix -print_psnr / ssim options
2320cb637855 Merge "fix bug due to overzealous check in WebPPictureYUVAToARGB()"
23218189885b Merge "EstimateBestFilter: use an int to iterate WEBP_FILTER_TYPE"
23224ad7d335 Android.mk: add some release compile flags
2323c12e2369 cosmetics: fix a few typos
23246f104034 fix bug due to overzealous check in WebPPictureYUVAToARGB()
23253f6c35c6 EstimateBestFilter: use an int to iterate WEBP_FILTER_TYPE
2326cc55790e Merge changes I8bb7a4dc,I2c180051,I021a014f,I8a224a62
2327c536afb5 Merge "cosmetics: fix some typos"
2328cbdd3e6e add a -dither dithering option to the decoder
2329e8124012 Updated iosbuild.sh for XCode 5.x
23304931c329 cosmetics: fix some typos
233105aacf77 mux: add some missing casts
2332617d9348 enc/vp8l: add a missing cast
233346db2865 idec: add some missing casts
2334b524e336 ErrorStatusLossless: correct return type
2335cb261f79 fix a descaling bug for vertical/horizontal U/V interpolation
2336bcb3955c Merge changes I48968468,I181bc736
233773f52133 gif2webp: Add a mixed compression mode
23386198715e demux: split chunk parsing from ParseVP8X
2339d2e3f4e6 demux: add a tail pointer for chunks
234087cffcc3 demux: cosmetics: s/has_frames/is_animation/
2341e18e6677 demux: strictly enforce the animation flag
2342c4f39f4a demux: cosmetics: remove a useless break
234361cb884d demux: (non-exp) fail if the fragmented flag is set
2344ff379db3 few % speedup of lossless encoding
2345df3649a2 remove all disabled code related to P-frames
23466d0cb3de Merge "gif2webp: kmin = 0 should suppress key-frame addition."
234736555983 gif2webp: kmin = 0 should suppress key-frame addition.
23487708e609 Merge "detect flatness in blocks and favor DC prediction"
234906b1503e Merge "add comment about the kLevelsFromDelta[][] LUT generation"
23505935259c add comment about the kLevelsFromDelta[][] LUT generation
2351e3312ea6 detect flatness in blocks and favor DC prediction
2352ebc9b1ee Merge "VPLBitReader bugfix: Catch error if bit_pos > LBITS too."
235396ad0e0a VPLBitReader bugfix: Catch error if bit_pos > LBITS too.
2354a014e9c9 tune quantization biases toward higher precision
23551e898619 add helpful PrintBlockInfo() function
2356596a6d73 make use of 'extern' consistent in function declarations
2357c8d48c6e Merge "extract random utils to their own file util/random.[ch]"
235898aa33cf extract random utils to their own file util/random.[ch]
2359432a723e Merge "swig: add basic go bindings"
2360fab618b5 Merge "rename libwebp.i -> libwebp.swig"
2361e4e7fcd6 swig: add basic go bindings
2362d3408720 Merge "fast auto-determined filtering strength"
2363f8bfd5cd fast auto-determined filtering strength
2364ac0bf951 small clean-up in ExpandMatrix()
23651939607e rename libwebp.i -> libwebp.swig
236643148b6c filtering: precompute ilimit and hev_threshold
236718f992ec simplify f_inner calculation a little
2368241d11f1 add missing const
236986c0031e add a 'format' field to WebPBitstreamFeatures
2370dde91fde Demux: Correct the extended format validation
23715d6c5bd2 add entry for '-resize' option in cwebp's man
23727c098d18 Use some gamma-curve range compression when computing U/V average
23730b2b0504 Use deterministic random-dithering during RGB->YUV conversion
23748a2fa099 Add a second multi-thread method
23757d6f2da0 Merge "up to 20% faster multi-threaded decoding"
2376266f63ea Merge "libwebp.jar: build w/Java 1.6 for Android compat"
23770532149c up to 20% faster multi-threaded decoding
237838efdc2e Simplify the gif2webp tool: move the optimization details to util
2379de899516 libwebp.jar: build w/Java 1.6 for Android compat
2380cb221552 Decode a full row of bitstream before reconstructing
2381dca8a4d3 Merge "NEON/simple loopfilter: avoid q4-q7 registers"
23829e84d901 Merge "NEON/TransformWHT: avoid q4-q7 registers"
2383fc10249b NEON/simple loopfilter: avoid q4-q7 registers
23842f09d63e NEON/TransformWHT: avoid q4-q7 registers
238577585a2b Merge "use a macrofunc for setting NzCoeffs bits"
2386d155507c Merge "use HINT_GRAPH as image_hint for gif source"
23879c561646 Merge "only print GIF_DISPOSE_WARNING once"
238805879865 use HINT_GRAPH as image_hint for gif source
23890b28d7ab use a macrofunc for setting NzCoeffs bits
2390f9bbc2a0 Special-case sparse transform
239100125196 gif2webp: detect and flatten uniformly similar blocks
23920deaf0fa only print GIF_DISPOSE_WARNING once
23936a8c0eb7 Merge "small optimization in segment-smoothing loop"
2394f7146bc1 small optimization in segment-smoothing loop
23955a7533ce small gif2webp fix
23964df0c89e Merge changes Ic697660c,I27285521
23975b2e6bd3 Android.mk: add a dwebp target
2398f910a84e Android.mk: update build flags
239963f9aba4 special-case WHT transform when there's only DC
240080911aef Merge "7-8% faster decoding by rewriting GetCoeffs()"
2401606c4304 gif2webp: Improved compression for lossy animated WebP
2402fb887f7f gif2webp: Different kmin/kmax defaults for lossy and lossless
24032a981366 7-8% faster decoding by rewriting GetCoeffs()
240492d47e4c improve VP8L signature detection by checking the version bits too
24055cd43e43 Add -incremental option to dwebp
240654b8e3f6 webpmux: DisplayInfo(): remove unnecessary error checks.
240740ae3520 fix memleak in WebPIDelete()
2408d9662658 mux.h doc: WebPMuxGetFrame() can return WEBP_MUX_MEMORY_ERROR too.
24090e6747f8 webpmux -info: display dimensions and has_alpha per frame
2410d78a82c4 Sanity check for underflow
24118498f4bf Merge "remove -Wshadow warnings"
2412e89c6fc8 Avoid a potential memleak
24133ebe1757 Merge "break down the proba 4D-array into some handy structs"
24146a44550a break down the proba 4D-array into some handy structs
24152f5e8934 remove -Wshadow warnings
2416bf3a29b3 Merge "add proper WEBP_HAVE_GIF and WEBP_HAVE_GL flags"
24172b0a7593 Merge "fix some warnings from static analysis"
241822dd07ce mux.h: Some doc corrections
241979ff0346 add proper WEBP_HAVE_GIF and WEBP_HAVE_GL flags
2420d51f45f0 fix some warnings from static analysis
2421d134307b fix conversion warning on MSVC
2422d538cea8 gif2webp: Support a 'min' and 'max'  key frame interval
242380b54e1c allow search with token buffer loop and fix PARTITION0 problem
2424b7d4e042 add VP8EstimateTokenSize()
242510fddf53 enc/quant.c: silence a warning
2426399cd456 Merge "fix compile error on ARM/gcc"
24279f24519e encoder: misc rate-related fixes
2428c663bb21 Merge "simplify VP8IteratorSaveBoundary() arg passing"
2429fa46b312 Demux.h: Correct a method name reference
2430f8398c9d fix compile error on ARM/gcc
2431f691f0e4 simplify VP8IteratorSaveBoundary() arg passing
243242542be8 up to 6% faster encoding with clang compiler
243393402f02 multi-threaded segment analysis
24347e2d6595 Merge "remove the PACK() bit-packing tricks"
2435c13fecf9 remove the PACK() bit-packing tricks
24362fd091c9 Merge "use NULL for lf_stats_ testing, not bool"
2437b11c9d62 dwebp: use default dct_method
24384bb8465f Merge "(de)mux.h: wrap pseudo-code in /* */"
2439cfb56b17 make -pass option work with token buffers
24405416aab4 (de)mux.h: wrap pseudo-code in /* */
244135dba337 use NULL for lf_stats_ testing, not bool
2442733a7faa enc->Iterator memory cleanup
2443e81fac86 Add support for "no blend" in webpmux binary
24443b80bc48 gif2webp: Separate out each step into a method
2445bef7e9cc Add doc precision about demux object keeping pointers to data.
244661405a14 dwebp: enable stdout output with WIC
24476eabb886 Merge "Animated WebP: add "do no blend" option to spec"
2448be20decb fix compilation for BITS 24
2449e58cc137 Merge "dwebp: s/unsigned char/uint8_t/"
245072501d43 dwebp: s/unsigned char/uint8_t/
24512c9633e8 Merge "gif2webp: Insert independent frames at regular intervals."
2452f0d6a14b gif2webp: Insert independent frames at regular intervals.
2453b25a6fbf yuv.h: fix indent
2454ede3602e Merge "cosmetics: fix indent"
24553a65122a dwebp: fix stdout related output
2456388a7249 cosmetics: fix indent
24574c7322c8 Merge "dsp: msvc compatibility"
2458d50c7e32 Merge "5-7% faster SSE2 versions of YUV->RGB conversion functions"
2459b8ab7847 Merge "simplify upsampler calls: only allow 'bottom' to be NULL"
2460df6cebfa 5-7% faster SSE2 versions of YUV->RGB conversion functions
2461ad6ac32d simplify upsampler calls: only allow 'bottom' to be NULL
2462a5e8afaf output to stdout if file name is "-"
2463f358450f dsp: msvc compatibility
246443a7c8eb Merge "cosmetics"
24654c5f19c1 Merge "bit_reader.h: cosmetics"
2466f72fab70 cosmetics
246714dd5e78 fix const-ness
2468b20aec49 Merge "Support for 'do not blend' option in vwebp"
2469dcf65222 Support for 'do not blend' option in vwebp
2470d5bad033 Animated WebP: add "do no blend" option to spec
2471a2f5f73d Merge "Support for "Do not blend" in mux and demux libraries"
2472e081f2f3 Pack code & extra_bits to Struct (VP8LPrefixCode).
24736284854b Support for "Do not blend" in mux and demux libraries
2474f486aaa9 Merge "slightly faster ParseIntraMode"
2475d1718632 slightly faster ParseIntraMode
24763ceca8ad bit_reader.h: cosmetics
247769257f70 Create LUT for PrefixEncode.
2478988b7084 add WebPWorkerExecute() for convenient bypass
247906e24987 Merge "VP8EncIterator clean-up"
2480de4d4ad5 VP8EncIterator clean-up
24817bbe9529 Merge "cosmetics: thread.c: drop a redundant comment"
2482da411485 cosmetics: thread.c: drop a redundant comment
2483feb4b6e6 thread.h: #ifdef when checking WEBP_USE_THREAD
24848924a3a7 thread.c: drop WebPWorker prefix from static funcs
24851aed8f2a Merge "fix indent"
24864038ed15 fix indent
24871693fd9b Demux: A new state WEBP_DEMUX_PARSE_ERROR
24888dcae8b3 fix rescaling-with-alpha inaccuracy
248911249abf Merge changes I9b4dc36c,I4e0eef4d
249052508a1f Mux: support parsing unknown chunks within a frame/fragment.
249105db0572 WebPMuxSetChunk: remove unused variable
24928ba1bf61 Stricter check for presence of alpha when writing lossless images
2493a03c3516 Demux: WebPIterator now also denotes if the frame has alpha.
24946df743a3 Decoder: handle fragments case correctly too.
2495faa4b07e Support for unknown chunks in mux library
24967d60bbc6 Speed up HashChainFindCopy function.
249766740140 Speedup Alpha plane encoding.
2498b7346a1e 0.1 % speedup to decoding
2499c606182e webp-container-spec: Tighten language added by last
2500a34a5029 pngdec: output error messages from libpng
2501e84c625d Merge "Detect canvas and image size mismatch in decoder."
2502f626fe2e Detect canvas and image size mismatch in decoder.
2503f5fbdee0 demux: stricter image bounds check
250430c8158a add extra assert in Huffman decode code
25058967b9f3 SSE2 for lossless decoding (critical) functions.
2506699d80ea Jump-lookup for Huffman coding
2507c34307ab fix some VS9 warnings about type conversion
2508eeada35c pngdec: add missing include
250954b65108 gif2webp: If aligning to even offsets, extra pixels should be transparent
25100bcf5ce3 Merge "remove a malloc() in case we're using only FILTER_NONE for alpha"
25112c07143b remove a malloc() in case we're using only FILTER_NONE for alpha
2512a4d5f59d Faster lossless decoding
2513fd53bb75 Merge "alternate LUT-base reverse-bits code"
2514d1c166ef Merge "Container spec: a clarification on background color."
2515fdb91779 Rename a method
25165e967532 Container spec: a clarification on background color.
251730e77d0f Merge branch '0.3.0'
25181b631e29 alternate LUT-base reverse-bits code
251924cc307a ~20% faster lossless decoding
2520313d853f Speedup for decoding lossless WebP photographs:
252124ee098a change the bytes_per_pixels_ field into more evocative use_8b_decode
25222a04b034 update ChangeLog (tag: v0.3.1-rc2, tag: v0.3.1)
25237288950b Regression fix for alpha channels using color cache:
25242e377b53 wicdec: silence a format warning
2525ad9e42a6 muxedit: silence some uninitialized warnings
25263307c163 Don't set alpha-channel to 0xff for alpha->green uplift
25275130770c Merge "wicdec: silence a format warning"
2528a37eff47 Regression fix for alpha channels using color cache:
2529241cf99b Merge "muxedit: silence some uninitialized warnings"
2530c8f9c84d Regression fix for alpha unfiltering:
253114cd5c6c muxedit: silence some uninitialized warnings
2532a368db81 dec/vp8l: quiet vs9 x64 type conversion warning
2533ffae9f31 wicdec: silence a format warning
25348cf0701e Alpha encoding: never filter in case of NO_COMPRESSION
2535825e73b1 update ChangeLog (tag: v0.3.1-rc1)
2536abf6f691 update NEWS
25375a92c1a5 bump version to 0.3.1
253886daf77c store top Y/U/V samples in packed fashion
253967bc353e Revert "add WebPBlendAlpha() function to blend colors against background"
2540068db59e Intertwined decoding of alpha and RGB
254138cc0114 Simplify forward-WHT + SSE2 version
25423fa595a5 Support decoding upto given row in DECODE_DATA_FUNC
2543520f005f DequantizeLevels(): Add 'row' and 'num_rows' args
254447374b82 Alpha unfilter for given set of rows
2545f32097e0 probe input file and quick-check for WebP format.
2546a2aed1d0 configure: improve gl/glut library test
2547c7e89cbb update copyright text
2548a00380d2 configure: remove use of AS_VAR_APPEND
2549a94a88dd fix EXIF parsing in PNG
2550a71e5d84 add doc precision for WebPPictureCopy() and WebPPictureView()
25518287012e remove datatype qualifier for vmnv
2552e1908430 fix a memory leak in gif2webp
25530b18b9ee fix two minor memory leaks in webpmux
2554db5095d5 remove some cruft from swig/libwebp.jar
2555850e956f README: update swig notes
2556bddd9b0a swig/python: add minimal documentation
2557d573a8d5 swig: add python encode support
25586b931875 swig/java: reduce wrapper function code duplication
25596fe536f4 swig/java: rework uint8_t typemap
2560a2ea4643 Fix the bug in ApplyPalette.
25617bb28d2a webp/lossless: fix big endian BGRA output
2562f036d4bf Speed up ApplyPalette for ARGB pixels.
25638112c8cf remove some warnings:
2564cc128e0b Further reduce memory to decode lossy+alpha images
256507db70d2 fix for big-endian
2566eda8a7de gif2webp: Fix signed/unsigned comparison mismatch
256731f346fe Makefile.vc: fix libwebpdemux dll variable typo
25686c76d28e swig: add python (decode) support
2569b4f5bb6c swig: cosmetics
2570498d4dd6 WebP-Lossless encoding improvements.
257126e72442 swig: ifdef some Java specific code
25728ecec686 configure: add warning related flags
2573e676b043 configure: add GLUT detection; build vwebp
2574b0ffc437 Alpha decoding: significantly reduce memory usage
257520aa7a8d configure: add --enable-everything
2576b8307cc0 configure.ac: add some helper macros
2577980e7ae9 Remove the gcc compilation comments
25787f25ff99 gif2webp: Fix ICC and XMP support
2579d8e53211 Add missing name to AUTHORS
258011edf5e2 Demux: Fix a potential memleak
2581c7b92184 don't forward declare enums
25827a650c6a prevent signed int overflow in left shift ops
258331bea324 add precision about dynamic output reallocation with IDecoder
2584c22877f7 Add incremental support for extended format files
25855051245f Makefile.vc: have 'all' target build everything
25868191deca Makefile.vc: flags cleanup
2587b9d74735 Makefile.vc: drop /FD flag
25885568dbcf update gitignore
2589f4c7b654 WebPEncode: An additional check. Start VP8EncLoop/VP8EncTokenLoop only if VP8EncStartAlpha succeeded.
25901fb04bec pngdec: Avoid a double-free.
2591dcbb1ca5 add WebPBlendAlpha() function to blend colors against background
2592bc9f5fbe configure.ac: add AM_PROG_AR for automake >= 1.12
2593bf867bf2 Tuned cross_color parameter (step) for lower qual
259490e2ec5a Merge "probe input file and quick-check for WebP format."
25957180d7ff Merge "update copyright text"
2596830f72b7 probe input file and quick-check for WebP format.
25972ccf58d6 configure: improve gl/glut library test
2598d640614d update copyright text
2599c2113ad4 Merge "configure: remove use of AS_VAR_APPEND"
26009326a56f configure: remove use of AS_VAR_APPEND
2601ea63d619 fix a type warning on VS9 x86
2602bec11092 fix EXIF parsing in PNG
2603b6e65f3d Merge "fix warnings for vs9 x64"
2604438946dc fix warnings for vs9 x64
2605f4710e3b collect macroblock reconstruction data in VP8MBData struct
260623d28e21 add doc precision for WebPPictureCopy() and WebPPictureView()
2607518f2cd7 cosmetics: gif2webp: fix indent
2608af358e68 Merge "remove datatype qualifier for vmnv"
26093fe91635 remove datatype qualifier for vmnv
2610764fdffa fix a memory leak in gif2webp
26113e59a74d fix two minor memory leaks in webpmux
261247b9862f Merge "README: update swig notes"
2613325d15ff remove some cruft from swig/libwebp.jar
26144a7627c2 README: update swig notes
26155da81e33 Merge "swig/python: add minimal documentation"
2616f39e08f2 Merge "swig: add python encode support"
26176ca4a3e3 Merge "swig/java: reduce wrapper function code duplication"
26188f8702b0 Merge "swig/java: rework uint8_t typemap"
261991413be2 reduce memory for VP8MB and remove bitfields use
26207413394e Fix the memory leak in ApplyFilters.
26212053c2cf simplify the alpha-filter testing loop
2622825b64db swig/python: add minimal documentation
262314677e11 swig: add python encode support
2624a5c297c8 swig/java: reduce wrapper function code duplication
2625ad4a367d swig/java: rework uint8_t typemap
26260d25876b use uint8_t for inv_palette[]
2627afa3450c Fix the bug in ApplyPalette.
26282d6ac422 Merge "webp/lossless: fix big endian BGRA output"
26292ca83968 webp/lossless: fix big endian BGRA output
2630742110cc Speed up ApplyPalette for ARGB pixels.
26312451e47d misc code cleanup
263283db4043 Merge "swig: add python (decode) support"
2633eeeea8b5 Merge "swig: cosmetics"
2634d5f9b8f3 Merge "libwebp: fix vp8 encoder mem alloc offsetting"
2635d8edd835 libwebp: fix vp8 encoder mem alloc offsetting
26368983b83e remove use of bit-fields in VP8FInfo
263787a4fca2 remove some warnings:
2638ba8f74e2 Merge "fix for big-endian"
2639a65067fa Merge "Further reduce memory to decode lossy+alpha images"
264064c84486 Further reduce memory to decode lossy+alpha images
2641332130b9 Mux: make a few methods static
264244370617 fix for big-endian
26435199eab5 Merge "add uncompressed TIFF output support"
2644a3aede97 add uncompressed TIFF output support
2645f975b67f Merge "gif2webp: Fix signed/unsigned comparison mismatch"
26465fbc734b Merge "GetFeatures: Detect invalid VP8X/VP8/VP8L data"
2647d5060c87 Merge "mux.h: A comment fix + some consistency fixes"
2648352d0dee GetFeatures: Detect invalid VP8X/VP8/VP8L data
26493ef79fef Cosmetic: "width * height"
2650043e1ae4 gif2webp: Fix signed/unsigned comparison mismatch
26515818cff7 mux.h: A comment fix + some consistency fixes
26521153f888 Merge "swig: ifdef some Java specific code"
26533eeedae1 Makefile.vc: fix libwebpdemux dll variable typo
2654f980faf4 swig: add python (decode) support
26557f5f42bb swig: cosmetics
26568eae188a WebP-Lossless encoding improvements.
2657c7247c4c swig: ifdef some Java specific code
26584cb234d5 Merge "Mux: make ValidateForSingleImage() method static"
2659ed6f5308 Merge "Add GetCanvasSize() method to mux"
26601d530c9a Mux: make ValidateForSingleImage() method static
2661bba4c2b2 configure: add warning related flags
2662fffefd18 Add GetCanvasSize() method to mux
2663732da8d0 Merge "configure: add GLUT detection; build vwebp"
26640e513f7a configure: add GLUT detection; build vwebp
266555d1c150 Merge "Alpha decoding: significantly reduce memory usage"
266613d99fb5 Merge "configure: add --enable-everything"
26672bf698fe Merge "configure.ac: add some helper macros"
2668edccd194 Alpha decoding: significantly reduce memory usage
26693cafcc9a configure: add --enable-everything
26704ef14477 configure.ac: add some helper macros
2671a4e1cdbb Remove the gcc compilation comments
26726393fe4b Cosmetic fixes
26739c4ce971 Simplify forward-WHT + SSE2 version
2674878b9da5 fix missed optim
267500046171 VP8GetInfo(): Check for zero width or height.
26769bf31293 align VP8Encoder::nz_ allocation
26775da165cf fix CheckMode() signature
26780ece07dc Merge "explicitly pad bitfields to 32-bits"
26799dbc9d19 explicitly pad bitfields to 32-bits
26805369a80f Merge "prevent signed int overflow in left shift ops"
268170e39712 Merge "cosmetics: remove unnecessary ';'s"
2682d3136ce2 Merge "don't forward declare enums"
2683b26e5ad5 gif2webp: Fix ICC and XMP support
268446089b20 Add missing name to AUTHORS
268594328d64 Demux: Fix a potential memleak
268696e948d7 don't forward declare enums
2687f4f90880 prevent signed int overflow in left shift ops
26880261545e cosmetics: remove unnecessary ';'s
26897ebdf110 Merge "Fix few missing comparisons to NULL"
26901579989e Fix few missing comparisons to NULL
2691ea1b21cf Cleaned up VP8GetHeaders() so that it parses only frame header
2692b66caee4 dwebp: add support for BMP output
2693ff885bfe add precision about dynamic output reallocation with IDecoder
269479241d5a Merge "Makefile.vc: have 'all' target build everything"
2695ac1c729b Merge "Makefile.vc: flags cleanup"
2696118a055c Merge "Makefile.vc: drop /FD flag"
2697ecad0109 Merge "update gitignore"
2698a681b4f4 Rename PRE_VP8 state to WEBP_HEADER
2699ead4d478 Add incremental support for extended format files
270069d0f926 Makefile.vc: have 'all' target build everything
270152967498 Makefile.vc: flags cleanup
2702c61baf0c Makefile.vc: drop /FD flag
27033a15125d update gitignore
27045167ca47 Merge "WebPEncode: An additional check. Start VP8EncLoop/VP8EncTokenLoop only if VP8EncStartAlpha succeeded."
270567708d67 WebPEncode: An additional check. Start VP8EncLoop/VP8EncTokenLoop only if VP8EncStartAlpha succeeded.
2706b68912af pngdec: Avoid a double-free.
270782abbe12 Merge "configure.ac: add AM_PROG_AR for automake >= 1.12"
2708e7d9548c add WebPBlendAlpha() function to blend colors against background
2709ed4dc717 configure.ac: add AM_PROG_AR for automake >= 1.12
2710df4a406d Merge branch '0.3.0'
27111e0d4b8c Update ChangeLog (tag: v0.3.0-rc7, tag: v0.3.0)
2712d52b405d Cosmetic fixes
27136cb4a618 misc style fix
271468111ab0 add missing YUVA->ARGB automatic conversion in WebPEncode()
2715e9a7990b Cosmetic fixes
2716403bfe82 Container spec: Clarify frame disposal
27172aaa423b Merge "add missing YUVA->ARGB automatic conversion in WebPEncode()"
271807d87bda add missing YUVA->ARGB automatic conversion in WebPEncode()
2719142c4629 misc style fix
27203e7a13a0 Merge "Container spec: clarify the background color field" into 0.3.0
272114af7745 container doc: add a note about the 'ANMF' payload
2722cc635efa Container spec: clarify the background color field
2723e3e33949 container doc: move RIFF description to own section
27244299f398 libwebp/mux: fix double free
272533f9a692 Merge "demux: keep a frame tail pointer; used in AddFrame" into 0.3.0
2726a2a7b959 use WebPDataCopy() instead of re-coding it.
27276f18f12f demux: keep a frame tail pointer; used in AddFrame
2728e5af49e9 add doc precision about WebPParseHeaders() return codes
2729db46daab Merge "Makefile.vc: fix dynamic builds" into 0.3.0
273053c77afc Merge "gif2webp: Bgcolor fix for a special case" into 0.3.0
2731a5ebd143 gif2webp: Bgcolor fix for a special case
27326378f238 Merge "vwebp/animation: fix background dispose" into 0.3.0
27333c8eb9a8 fix bad saturation order in QuantizeBlock
273404c7a2ec vwebp/animation: fix background dispose
273581a50695 Makefile.vc: fix dynamic builds
27365f25c396 update ChangeLog (tag: v0.3.0-rc6)
273714d42af2 examples: don't use C99 %zu
27385ccf1fe5 update ChangeLog
27392560c243 update NEWS
2740f43bafc3 Merge changes Iecccb09c,If5ee9fd2,I3e181ce4 into 0.3.0
2741a788644f dwebp: warn when decoding animated webp's
2742302efcdb Decode: return more meaningful error for animation
2743ad452735 WebPBitstreamFeatures: add has_animation field
2744783dfa49 disable FRGM decoding for good in libwebpmux
27454b956be0 Update ChangeLog
2746ad8b86d7 update NEWS
27473e084f63 Merge "demux cosmetics: comments/rename internal function" into 0.3.0
2748d3f8c621 Merge "move WebPFeatureFlags declaration" into 0.3.0
27497386fe50 Merge "libwebp{demux,mux}: install mux_types.h" into 0.3.0
2750d6cd4e90 Merge "bump decode abi" into 0.3.0
275117f8da5c bump decode abi
275297684ae2 Merge "add doc precision about WebPDemuxPartial()" into 0.3.0
2753f933fd2a move WebPFeatureFlags declaration
2754289bc47b libwebp{demux,mux}: install mux_types.h
2755224e8d46 add doc precision about WebPDemuxPartial()
27564c18e80c demux cosmetics: comments/rename internal function
27577cfd1bf1 update AUTHORS
2758401f7b85 Merge "speed-up lossless (~3%) with ad-hoc histogram cost evaluation" into 0.3.0
27591fc8ffca Merge "makefile.unix: dist related changes" into 0.3.0
27608a89c6ed Merge changes I466c377f,Ib761ebd3,I694857fc into 0.3.0
2761f4ffb2d5 speed-up lossless (~3%) with ad-hoc histogram cost evaluation
2762723847d5 gif2webp: only write error messages to stderr
2763701b9e2a makefile.unix: dist related changes
2764bb85b437 Merge "update NEWS" into 0.3.0
276559423a24 gif2webp: fix crash on open failure with libgif5
27669acb17de gif2webp: silence a unused param warning
27677d9fdc23 Merge "README updates" into 0.3.0
27685621934e Merge "build: fix install race on shared headers" into 0.3.0
276970809d89 Merge "bump version to 0.3.0" into 0.3.0
2770d851cd1d demux: make the parse a bit more strict
277128bb4107 update NEWS
2772cef93882 bump version to 0.3.0
27739048494d build: fix install race on shared headers
27741e67e8ef README updates
277542b611a4 Merge "configure: drop experimental from mux/demux" into 0.3.0
2776096a8e32 Merge "vwebp: add color profile support" into 0.3.0
2777ddfee5dc vwebp: add color profile support
27780d6927d3 Merge "Mark fragment options as experimental in webpmux" into 0.3.0
27795dbd4030 Mark fragment options as experimental in webpmux
2780a0a6648c configure: drop experimental from mux/demux
2781ee65bad8 Merge "add support for BITS > 32" into 0.3.0
2782744930db add support for BITS > 32
27837dd288f0 cwebp: fix build
278419a8dd01 Merge "Makefile.vc: add vwebp.exe target" into 0.3.0
278550eeddad Merge "examples: normalize icc related program arguments" into 0.3.0
2786757f637f Merge "Makefile.vc: add libwebpdecoder target" into 0.3.0
2787b65c4b7c Makefile.vc: add libwebpdecoder target
2788f8db7b4a Merge "vwebp: replace doubles w/floats where appropriate" into 0.3.0
2789d99aa56f Makefile.vc: add vwebp.exe target
2790013023e7 vwebp: replace doubles w/floats where appropriate
27919b3db894 README.mux: add version reference
27927b6a26cf Merge "cwebp: output metadata statistics" into 0.3.0
2793d8dc72a0 examples: normalize icc related program arguments
27947bfc9056 Merge "make alpha unfilter work in-place" into 0.3.0
27950037b2d2 Merge "add LUT-free reference code for YUV->RGB conversion." into 0.3.0
2796166bf744 Merge "demux: disable fragment parsing" into 0.3.0
2797126974b4 add LUT-free reference code for YUV->RGB conversion.
27980aef3ebd make alpha unfilter work in-place
279914ef5005 Merge "Remove 'status: experimental' from container spec" into 0.3.0
2800d40c98e1 Merge "webpmux binary: tiny style fix" into 0.3.0
28010bc42689 cwebp: output metadata statistics
2802bc039803 Merge "autoconf: normalize experimental define" into 0.3.0
2803d1e21b13 Remove 'status: experimental' from container spec
28047681bb96 webpmux binary: tiny style fix
2805a3dd3d0f avoid installing example_util.h
2806252320e2 demux: disable fragment parsing
2807537bde05 autoconf: normalize experimental define
28085e338e0b Merge changes I33e8a613,I8e8a7b44 into 0.3.0
2809d9d0ea1b Merge changes If21e3ec7,I991fc30b into 0.3.0
2810627f5ca6 automake: add reference to libwebp for mux/demux
2811eef73d07 don't consolidate proba stats too often
281205ec4cc2 libwebp{,decoder}.pc: add pthread flags
28131bfcf5bf add libwebpmux.pc
281426ca843d add libwebpdemux.pc
281569e25906 Merge "Tune Lossless compression for lower qualities."
28160478b5d2 Tune Lossless compression for lower qualities.
281739f7586f add a mention of parallel alpha encoding in the NEWS
28185a21d967 Merge "1.5x-2x faster encoding for method 3 and up"
28199bfbdd14 1.5x-2x faster encoding for method 3 and up
282027dc741b Correct frame options order in README.mux
2821be2fd173 Mux: fix a scenario with bad ANMF/FRGM size
282219eb012c Merge "Demux: Add option to get frame count using GetI()"
28237368b8cb Merge "WebPGetFeatures() out of if condition for clarity."
2824f604c9a4 Merge "fix windows build"
2825153f94e8 fix windows build
2826847b4924 Merge "vwebp: use magenta for 'i'nfo display"
282725ea46bd Merge "vwebp: add keyboard shortcuts to help output"
2828bea7ccaf vwebp: use magenta for 'i'nfo display
28298fab161a webpmux: correct -frame param order in help output
283003cc23d6 vwebp: add keyboard shortcuts to help output
2831068eba8d Demux: Add option to get frame count using GetI()
2832988b8f56 WebPGetFeatures() out of if condition for clarity.
28336933d910 Merge "gif2webp: Be lenient about background color index."
28344d0f7c55 Merge "WebPGetFeatures() behavior change:"
2835fdeeb01d gif2webp: Be lenient about background color index.
2836ad250320 Merge "multi-threaded alpha encoding for lossy"
28374e32d3e1 Merge "fix compilation of token.c"
2838f817930a multi-threaded alpha encoding for lossy
283988050351 fix compilation of token.c
2840fc816219 code using the actual values for num_parts_, not the ones from config
284172655350 Merge "move the config check from .c to .h"
2842dd9e76f7 move the config check from .c to .h
2843956b217a WebPGetFeatures() behavior change:
2844df02e4ce WebPDemuxGetI behavior change:
2845633c004d Merge "rebalance method tools (-m) for methods [0..4]"
284658ca6f65 rebalance method tools (-m) for methods [0..4]
28477648c3cc Merge "describe rd-opt levels introduce VP8RDLevel enum"
284867fb1003 Merge "autoconf: enable silent-rules by default"
2849a5042a32 GetVersion() methods for mux and demux
28505189957e describe rd-opt levels introduce VP8RDLevel enum
28514e094ace autoconf: enable silent-rules by default
2852b7eaa85d inline VP8LFastLog2() and VP8LFastSLog2 for small values
28535cf7792e split quant_levels.c into decoder and encoder version
2854e5d3ffe2 Merge "Update code example in README.mux"
2855ac5a9156 Update code example in README.mux
285638a91e99 Add example code snippet for demux API
28575f557f3c README.mux: add info about Demux API and vwebp
2858c0ba0903 backward_references: avoid signed integer overflow
2859943386db disable SSE2 for now
28609479fb7d lossless encoding speedup
2861ec2030a8 merge two lines together
2862b67956c0 Merge "Remove ReadOneBit() and ReadSymbolUnsafe()"
28631667bded Remove ReadOneBit() and ReadSymbolUnsafe()
28643151669b wicdec + dwebp cosmetics: normalize formatting
286592668da6 change default filtering parameters:   * type is now 'strong'   * strength is now '60'
2866b7490f85 introduce WEBP_REFERENCE_IMPLEMENTATION compile option
286733838857 faster decoding (3%-6%)
28685c3e381b Merge "add a -jpeg_like option"
2869c2311046 remove unused declaration of VP8Zigzag
287036152957 Merge "wicdec: add alpha support for paletted formats"
2871c9f16490 wicdec: add alpha support for paletted formats
28721262f81e Merge "wicdec: silence some warnings"
2873e7ea61eb wicdec: silence some warnings
287423c0f354 fix missing intptr_t->int cast for MSVC
2875e895059a add a -jpeg_like option
28761f803f64 Merge "Tune alpha quality mapping to more reasonable values."
28771267d498 Tune alpha quality mapping to more reasonable values.
2878043076e2 Merge "speed-up lossless in BackwardTrace"
2879f3a44dcd remove one malloc from TraceBackwards()
28800fc1a3a0 speed-up lossless in BackwardTrace
28817c732e59 cwebp: centralize WebPCleanupTransparentArea()
28827381254e Merge "wicdec: add ICC profile extraction"
2883e83ff7de wicdec: add ICC profile extraction
2884146c6e3b Merge "cosmetics: pngdec: normalize default label location"
2885a8f549d7 Merge "manpages: italicize option parameters"
2886e118db83 Merge "encode.h: note the need to free() WebPMemoryWriter"
28871dfee6db cosmetics: pngdec: normalize default label location
288814c38200 manpages: italicize option parameters
28897defbfad encode.h: note the need to free() WebPMemoryWriter
289088d382a0 cwebp: cleanup after memory_writer
289112d6cecf fix extra space in dwebp.1 man
2892b01681a9 Fix for demuxer frame iteration:
289356c12aa6 Demuxer creation fix:
289466c810bc add a -yuv option to dwebp (very similar to -pgm)
2895841a3ba5 Merge "Remove -Wshadow warnings."
28968fd02527 Merge "upsampling_neon.c: fix build"
28976efed268 Remove -Wshadow warnings.
289860904aa6 Merge "allow WebPINewRGB/YUVA to be passed a NULL output buffer."
2899b7adf376 allow WebPINewRGB/YUVA to be passed a NULL output buffer.
290027f8f742 upsampling_neon.c: fix build
290106b9cdf1 gitignore: add IOS related directories
2902f112221e Merge "Fix more comments for iobuild.sh"
2903fe4d25dd Fix more comments for iobuild.sh
29041de3e252 Merge "NEON optimised yuv to rgb conversion"
2905090b708a NEON optimised yuv to rgb conversion
2906daa06476 Merge "Add ios build script for building iOS library."
290779fe39e2 Add ios build script for building iOS library.
2908126c035f remove some more -Wshadow warnings
2909522e9d61 Merge "cwebp: enable '-metadata'"
291076ec5fa1 cwebp: enable '-metadata'
2911aeb91a9d Merge "cosmetics: break a few long lines"
2912be7c96b0 cosmetics: break a few long lines
2913cff8ddb6 Merge "add libwebpdecoder.pc"
291493148ab8 Merge "libwebp.pc.in: detab"
29156477f955 Merge "Makefile.vc: normalize path separator"
2916bed1ed7c add libwebpdecoder.pc
291746168b2d libwebp.pc.in: detab
2918a941a346 Fixed few nits in the build files.
2919dd7a49b2 Makefile.vc: normalize path separator
29209161be86 Merge "cwebp: extract WIC decoding to its own module"
292108e7c58e Merge "Provide an option to build decoder library."
29220aeba528 Provide an option to build decoder library.
2923757ebcb1 catch malloc(0)/calloc(0) with an assert
2924152ec3d2 Merge "handle malloc(0) and calloc(0) uniformly on all platforms"
2925a452a555 cwebp: extract WIC decoding to its own module
29262b252a53 Merge "Provide option to swap bytes for 16 bit colormodes"
292794a48b4b Provide option to swap bytes for 16 bit colormodes
292842f8f934 handle malloc(0) and calloc(0) uniformly on all platforms
29298b2152c5 Merge "add an extra assert to check memory bounds"
29300d19fbff remove some -Wshadow warnings
2931cd22f655 add an extra assert to check memory bounds
29328189feda Merge "Add details and reference about the YUV->RGB conversion"
29331d2702b1 Merge "Formatting fixes in lossless bitstream spec"
29348425aaee Formatting fixes in lossless bitstream spec
2935a556cb1a Add details and reference about the YUV->RGB conversion
2936d8f21e0b add link to SSIM description on Wikipedia
293718e9167e Merge "WebP-lossless spec clarifications:"
293898e25b9b Merge "cwebp: add -metadata option"
2939f01c2a53 WebP-lossless spec clarifications:
2940f4a97970 Merge "Disto4x4 and Disto16x16 in NEON"
294147b7b0ba Disto4x4 and Disto16x16 in NEON
29427eaee9f1 cwebp: add -metadata option
294336c52c2c tiffdec: use toff_t for exif ifd offset
29447c8111e4 Merge "cwebp/tiffdec: add TIFF metadata extraction"
2945e6409adc Remove redundant include from dsp/lossless code.
29461ab5b3a7 Merge "configure: fix --with-gifincludedir"
294703c749eb configure: fix --with-gifincludedir
29488b650635 multiple libgif versions support for gif2webp
2949476e293f gif2webp: Use DGifOpenFileName()
2950b50f277b tiffdec: correct format string
29512b9048e3 Merge "tiffdec: check error returns for width/height"
2952a1b5a9a3 Merge "cwebp/tiff: use the first image directory"
2953079423f5 tiffdec: check error returns for width/height
2954d62824af Merge "cwebp/jpegdec: add JPEG metadata extraction"
295503afaca4 Merge "cwebp: add PNG metadata extraction"
29562c724968 cwebp/jpegdec: add JPEG metadata extraction
2957dba64d91 cwebp: add PNG metadata extraction
29581f075f89 Lossless spec corrections/rewording/clarifications
29592914ecfd cwebp/tiffdec: add TIFF metadata extraction
2960d82a3e33 More corrections/clarifications in lossless spec:
2961bd002557 cwebp/tiff: use the first image directory
2962df7aa076 Merge "Cleanup around jpegdec"
29630f57dcc3 decoding speed-up (~1%)
2964bcec339b Lossless bitstream clarification:
29656bf20874 add examples/metadata.c
2966207f89c0 Merge "configure: add libwebpdemux status to summary"
29671bd287a6 Cleanup around jpegdec
296891455679 Merge "cosmetics: use '== 0' in size checks"
2969d6b88b76 cosmetics: use '== 0' in size checks
2970d3dace2f cosmetics: jpegdec
29712f69af73 configure: add libwebpdemux status to summary
29721c1c5646 cwebp: extract tiff decoding to its own module
29736a871d66 cwebp: extract jpeg decoding to its own module
29742ee228f9 cwebp: extract png decoding to its own module
29754679db00 Merge "cwebp: add metadata framework"
297663aba3ae cwebp: add metadata framework
2977931bd516 lossless bitstream: block size bits correction
2978e4fc4c1c lossless bitstream: block size bits correction
2979d65ec678 fix build, move token.c to src/enc/
2980657f5c91 move token buffer to its own file (token.c)
2981c34a3758 introduce GetLargeValue() to slim-fast GetCoeffs().
2982d5838cd5 faster non-transposing SSE2 4x4 FTransform
2983f76191f9 speed up GetResidualCost()
2984ba2aa0fd Add support for BITS=24 case
29852e7f6e8e makefile.unix: Dependency on libraries
2986dca84219 Merge "Separate out mux and demux code and libraries:"
298723782f95 Separate out mux and demux code and libraries:
2988bd56a01f configure: add summary output
298990e5e319 dwebp manual: point to webpmux, gif2webp.
2990540790ca gif2webp.c: add a note about prerequisites
2991d1edf697 cwebp man page: meaning of '-q' for lossy/lossless
299279efa1d0 Add man page for gif2webp utility
29932243e40c Merge "gif2webp build support with autoconf tools"
2994c40efca1 gif2webp build support with autoconf tools
29956523e2d4 WebP Container:
29964da788da Merge "simplify the fwd transform"
299742c3b550 simplify the fwd transform
299841a6ced9 user GLfloat instead of float
2999b5426119 fix indentation
300068f282f7 * handle offset in anim viewer 'vwebp' * fix gif2webp to handle disposal method and odd offset correctly
3001118cb312 Merge "add SSE2 version of Sum of Square error for 16x16, 16x8 and 8x8 case"
30028a7c3cc8 Merge "Change the order of -frame argument to be more natural"
300399e0a707 Merge "Simplify the texture evaluation Disto4x4()"
30040f923c3f make the bundling work in a tmp buffer
3005e5c3b3f5 Simplify the texture evaluation Disto4x4()
300648600084 Change the order of -frame argument to be more natural
300735bfd4c0 add SSE2 version of Sum of Square error for 16x16, 16x8 and 8x8 case
3008a7305c2e Clarification for unknown chunks
30094c4398e2 Refine WebP Container Spec wrt unknown chunks.
30102ca642e0 Rectify WebPMuxGetFeatures:
30117caab1d8 Some cosmetic/comment fixes.
301260b2651a Merge "Write a GIF to WebP converter based on libgif."
3013c7127a4d Merge "Add NEON version of FTransformWHT"
301411b27212 Write a GIF to WebP converter based on libgif.
3015e9a15a37 ExUtilWriteFile() to write memory segment to file
301674356eb5 Add a simple cleanup step in mux assembly:
301751bb1e5d mux.h: correct WebPDemuxSelectFragment() prototype
301822a0fd9d Add NEON version of FTransformWHT
3019fa30c863 Update mux code to match the spec wrt animation
3020d9c5fbef by-pass Analysis pass in case segments=1
3021d2ad4450 Merge changes Ibeccffc3,Id1585b16
30225c8be251 Merge "Chunk fourCCs for XMP/EXIF"
3023a00a3daf Use 'frgm' instead of 'tile' in webpmux parameters
302481b8a741 Design change in ANMF and FRGM chunks:
3025f903cbab Chunk fourCCs for XMP/EXIF
3026812933d6 Tune performance of HistogramCombine
302752ad1979 Animation specification in container spec
3028001b9302 Image fragment specification in container spec
3029391f9db9 Ordering of description of bits in container spec
3030d5735776 Metadata specification in container spec
30311c4609b1 Merge commit 'v0.2.1'
30320ca584cb Merge "Color profile specification in container spec"
3033e8b41ad1 add NEON asm version for WHT inverse transform
3034af6f0db2 Color profile specification in container spec
3035a61a824b Merge "Add NULL check in chunk APIs"
30360e8b7eed fix WebPPictureView() unassigned strides
303775e5f17e ARM/NEON: 30% encoding speed-up
303802b43568 Add NULL check in chunk APIs
3039a0770727 mux struct naming
30406c66dde8 Merge "Tune Lossless encoder"
3041ab5ea217 Tune Lossless encoder
304274fefc8c Update ChangeLog (tag: v0.2.1, origin/0.2.0)
304392f8059c Rename some chunks:
30443bb4bbeb Merge "Mux API change:"
3045d0c79f05 Mux API change:
3046abc06044 Merge "update NEWS" into 0.2.0
304757cf313b update NEWS
304825f585c4 bump version to 0.2.1
3049fed7c048 libwebp: validate chunk size in ParseOptionalChunks
3050552cd9bc cwebp (windows): fix alpha image import on XP
3051b14fea99 autoconf/libwebp: enable dll builds for mingw
30524a8fb272 [cd]webp: always output windows errors
3053d6621580 fix double to float conversion warning
305472b96a69 cwebp: fix jpg encodes on XP
3055734f762a VP8LAllocateHistogramSet: fix overflow in size calculation
3056f9cb58fb GetHistoBits: fix integer overflow
3057b30add20 EncodeImageInternal: fix uninitialized free
30583de58d77 fix the -g/O3 discrepancy for 32bit compile
305977aa7d50 fix the BITS=8 case
3060e5970bda Make *InitSSE2() functions be empty on non-SSE2 platform
3061ef5cc47e make *InitSSE2() functions be empty on non-SSE2 platform
3062c4ea259d make VP8DspInitNEON() public
30638344eadf Merge "libwebp: validate chunk size in ParseOptionalChunks"
30644828bb93 Merge "cwebp (windows): fix alpha image import on XP"
306530763333 libwebp: validate chunk size in ParseOptionalChunks
306670481898 AccumulateLSIM: fix double -> float warnings
3067eda8ee4b cwebp (windows): fix alpha image import on XP
3068c6e98658 Merge "add EXPERIMENTAL code for YUV-JPEG colorspace"
3069f0360b4f add EXPERIMENTAL code for YUV-JPEG colorspace
3070f86e6abe add LSIM metric to WebPPictureDistortion()
3071c3aa215a Speed up HistogramCombine for lower qualities.
30721765cb1c Merge "autoconf/libwebp: enable dll builds for mingw"
3073a13562e8 autoconf/libwebp: enable dll builds for mingw
30749f469b57 typo: no_fancy -> no_fancy_upsampling
30751a27f2f8 Merge "fix double to float conversion warning"
3076cf1e90de Merge "cwebp: fix jpg encodes on XP"
3077f2b5d19b [cd]webp: always output windows errors
3078e855208c fix double to float conversion warning
3079ecd66f77 cwebp: fix jpg encodes on XP
30807b3eb372 Tune lossless compression to get better gains.
3081ce8bff45 Merge "VP8LAllocateHistogramSet: fix overflow in size calculation"
3082ab5b67a1 Merge "EncodeImageInternal: fix uninitialized free"
30837fee5d12 Merge "GetHistoBits: fix integer overflow"
3084a6ae04d4 VP8LAllocateHistogramSet: fix overflow in size calculation
308580237c43 GetHistoBits: fix integer overflow
30868a997235 EncodeImageInternal: fix uninitialized free
30870b9e6829 minor cosmetics
3088a792b913 fix the -g/O3 discrepancy for 32bit compile
308973ba4357 Merge "detect and merge similar segments"
3090fee66275 detect and merge similar segments
30910c44f415 src/webp/*.h: don't forward declare enums in C++
3092d7a5ac86 vwebp: use demux interface
3093931e0ea1 Merge "replace 'typedef struct {} X;" by "typedef struct X X; struct X {};""
30948f216f7e remove cases of equal comparison for qsort()
309528d25c82 replace 'typedef struct {} X;" by "typedef struct X X; struct X {};"
30962afee60a speed up for ARM using 8bit for boolean decoder
30975725caba new segmentation algorithm
30982cf1f815 Merge "fix the BITS=8 case"
309912f78aec fix the BITS=8 case
31006920c71f fix MSVC warnings regarding implicit uint64 to uint32 conversions
3101f6c096aa webpmux binary: Rename 'xmp' option to 'meta'
3102ddfe871a webpmux help correction
3103b7c55442 Merge "Make *InitSSE2() functions be empty on non-SSE2 platform"
31041c04a0d4 Common APIs for chunks metadata and color profile.
31052a3117a1 Merge "Create WebPMuxFrameInfo struct for Mux APIs"
31065c3a7231 Make *InitSSE2() functions be empty on non-SSE2 platform
31077c6e60f4 make *InitSSE2() functions be empty on non-SSE2 platform
3108c7eb4576 make VP8DspInitNEON() public
3109ab3234ae Create WebPMuxFrameInfo struct for Mux APIs
3110e3990fd8 Alignment fixes
3111e55fbd6d Merge branch '0.2.0'
31124238bc0a Update ChangeLog (tag: v0.2.0)
3113c655380c dec/io.c: cosmetics
3114fe1958f1 RGBA4444: harmonize lossless/lossy alpha values
3115681cb30a fix RGBA4444 output w/fancy upsampling
3116f06c1d8f Merge "Alignment fix" into 0.2.0
3117f56e98fd Alignment fix
31186fe843ba avoid rgb-premultiply if there's only trivial alpha values
3119528a11af fix the ARGB4444 premultiply arithmetic
3120a0a48855 Lossless decoder fix for a special transform order
312162dd9bb2 Update encoding heuristic w.r.t palette colors.
31226f4272b0 remove unused ApplyInverseTransform()
312393bf0faa Update ChangeLog (tag: v0.2.0-rc1)
31245934fc59 update AUTHORS
3125014a711d update NEWS
312643b0d610 add support for ARGB -> YUVA conversion for lossless decoder
312733705ca0 bump version to 0.2.0
3128c40d7ef1 fix alpha-plane check + add extra checks
3129a06f8023 MODE_YUVA: set alpha to opaque if the image has none
313052a87dd7 Merge "silence one more warning" into 0.2.0
31313b023093 silence one more warning
3132f94b04f0 move some RGB->YUV functions to yuv.h
31334b71ba03 README: sync [cd]webp help output
3134c9ae57f5 man/dwebp.1: add links to output file format details
3135292ec5cc quiet a few 'uninitialized' warnings
31364af3f6c4 fix indentation
31379b261bf5 remove the last NOT_HAVE_LOG2 instances
3138323dc4d9 remove use of log2(). Use VP8LFastLog2() instead.
31398c515d54 Merge "harness some malloc/calloc to use WebPSafeMalloc and WebPSafeCalloc" into 0.2.0
3140d4b4bb02 Merge changes I46090628,I1a41b2ce into 0.2.0
3141bff34ac1 harness some malloc/calloc to use WebPSafeMalloc and WebPSafeCalloc
3142a3c063c7 Merge "extra size check for security" into 0.2.0
31435e796300 Merge "WebPEncode: clear stats at the start of encode" into 0.2.0
3144f1edf62f Merge "rationalize use of color-cache" into 0.2.0
3145c1933317 extra size check for security
3146906be657 rationalize use of color-cache
3147dd1c3873 Add image-hint for low-color images.
31484eb7aa64 Merge "WebPCheckMalloc() and WebPCheckCalloc():" into 0.2.0
314980cc7303 WebPCheckMalloc() and WebPCheckCalloc():
3150183cba83 check VP8LBitWriterInit return
3151cbfa9eec lossless: fix crash on user abort
3152256afefa cwebp: exit immediately on version mismatch
3153475d87d7 WebPEncode: clear stats at the start of encode
3154a7cc7291 fix type and conversion warnings
31557d853d79 add stats for lossless
3156d39177b7 make QuantizeLevels() store the sum of squared error
31575955cf5e replace x*155/100 by x*101581>>16
31587d732f90 make QuantizeLevels() store the sum of squared error
3159e45a446a replace x*155/100 by x*101581>>16
3160159b75d3 cwebp output size consistency:
3161cbee59eb Merge commit 'v0.1.99'
31621889e9b6 dwebp: report -alpha option
31633bc3f7c0 Merge "dwebp: add PAM output support" into 0.2.0
3164d919ed06 dwebp: add PAM output support
316585e215d3 README/manpages/configure: update website link
3166c3a207b9 Update ChangeLog (tag: v0.1.99)
3167d1fd7826 Merge "add extra precision about default values and behaviour" into 0.2.0
3168efc826e0 add extra precision about default values and behaviour
31699f29635d header/doc clean up
3170ff9fd1ba Makefile.vc: fix webpmux.exe *-dynamic builds
31718aacc7b0 remove INAM, ICOP, ... chunks from the test webp file.
31722fc13015 harmonize authors as "Name (mail@address)"
31734a9f37b7 Merge "update NEWS" into 0.2.0
31747415ae13 makefile.unix: provide examples/webpmux target
3175ce82cedc update NEWS
3176641e28e8 Merge "man/cwebp.1: wording, change the date" into 0.2.0
3177c37c23e5 README: cosmetics
31783976dcd5 man/cwebp.1: wording, change the date
31793e5bbe1c Merge "rename 'use_argb_input' to 'use_argb'" into 0.2.0
3180ce90847a Merge "add some padding bytes areas for later use" into 0.2.0
31812390dabc Merge "fixing the findings by Frederic Kayser to the bitstream spec" into 0.2.0
318202751591 add a very crude progress report for lossless
3183a4b9b1c6 Remove some unused enum values.
3184dd108176 rename 'use_argb_input' to 'use_argb'
318590516ae8 add some padding bytes areas for later use
3186d03b2503 fixing the findings by Frederic Kayser to the bitstream spec
3187ce156afc add missing ABI compatibility checks
31889d45416a Merge "Doc: container spec text tweaks" into 0.2.0
31894e2e0a8c Doc: container spec text tweaks
3190f7f16a29 add ABI compatibility check
31912a775570 Merge "swig: add WebPEncodeLossless* wrappers" into 0.2.0
3192a3ec6225 mux.h: remove '* const' from function parameters
319331426eba encode.h: remove '* const' from function parameters
31949838e5d5 decode.h: remove '* const' from function parameters
31954972302d swig: add WebPEncodeLossless* wrappers
31969ff00cae bump encoder/decoder versions
3197c2416c9b add lossless quick encoding functions to the public API
31984c1f5d64 Merge "NEWS: mention decode_vp8.h is no longer installed" into 0.2.0
31996cb2277d NEWS: mention decode_vp8.h is no longer installed
3200d5e5ad63 move decode_vp8.h from webp/ to dec/
32018d3b04a2 Merge "header clean-up" into 0.2.0
320202201c35 Merge "remove one malloc() by making color_cache non dynamic" into 0.2.0
3203d708ec14 Merge "move MIN/MAX_HISTO_BITS to format_constants.h" into 0.2.0
3204ab2da3e9 Merge "add a malloc() check" into 0.2.0
32052d571bd8 add a malloc() check
32067f0c178e remove one malloc() by making color_cache non dynamic
32076569cd7c Merge "VP8LFillBitWindow: use 64-bit path for msvc x64 builds" into 0.2.0
320823d34f31 header clean-up
32092a3ab6f9 move MIN/MAX_HISTO_BITS to format_constants.h
3210985d3da6 Merge "shuffle variables in HashChainFindCopy" into 0.2.0
3211cdf885c6 shuffle variables in HashChainFindCopy
3212c3b014db Android.mk: add missing lossless files
32138c1cc6b5 makefile.unix dist: explicitly name installed includes
32147f4647ee Merge "clarify the colorspace naming and byte ordering of decoded samples" into 0.2.0
3215cbf69724 clarify the colorspace naming and byte ordering of decoded samples
3216857650c8 Mux: Add WebPDataInit() and remove WebPImageInfo
3217ff771e77 don't install webp/decode_vp8.h
3218596dff78 VP8LFillBitWindow: use 64-bit path for msvc x64 builds
32193ca7ce98 Merge "doc: remove non-finalized chunk references" into 0.2.0
32201efaa5a3 Merge "bump versions" into 0.2.0
322151fa13e1 Merge "README: update cwebp help output" into 0.2.0
322212f9aede README: update cwebp help output
3223f0b5defb bump versions
32244c42a61b update AUTHORS
32256431a1ce doc: remove non-finalized chunk references
32268130c4cc Merge "build: remove libwebpmux from default targets/config"
322723b44438 Merge "configure: broaden test for libpng-config"
322885bff2cd Merge "doc: correct lossless prefix coding table & code"
322905108f6e Merge "More spec/code matching in mux:"
32306808e69d More spec/code matching in mux:
3231bd2b46f5 Merge "doc/webp-container-spec: light cosmetics"
323220ead329 doc/webp-container-spec: light cosmetics
32331d40a8bc configure: add pthread detection
3234b5e9067a fix some int <-> size_t mix for buffer sizes
3235e41a7596 build: remove libwebpmux from default targets/config
32360fc2baae configure: broaden test for libpng-config
323745b8272c Merge "restore authorship to lossless bitstream doc"
323806ba0590 restore authorship to lossless bitstream doc
323944a09a3c add missing description of the alpha filtering methods
324063db87dd Merge "vwebp: add checkboard background for alpha display"
3241a73b8978 vwebp: add checkboard background for alpha display
3242939158ce Merge "vwebp: fix info display"
3243b35c07d9 vwebp: fix info display
324448b39eb1 fix underflow for very short bitstreams
32457e622984 cosmetics: param alignment, manpage wording
32461bd7dd50 Merge changes I7b0afb0d,I7ecc9708
3247ac69e63e Merge "Updated cwebp man's help for Alpha & Lossless."
3248c0e8859d Get rid of image_info_ from WebPChunk struct.
3249135ca69e WebP Container Spec:
3250eb6f9b8a Updated cwebp man's help for Alpha & Lossless.
32510fa844fb cosmetic fixes on assert and 'const' where applicable
32527f22bd25 check limit of width * height is 32 bits
325316c46e83 autoconf/make: cosmetics: break long lines
3254ab22a07a configure: add helper macro to define --with-*
3255c17699b3 configure: add libtiff test
32560e09732c Merge "cwebp: fix crash with yuv input + lossless"
325788a510ff Merge "fix big-endian VP8LWriteBits"
3258da99e3bf Merge "Makefile.vc: split mux into separate lib"
32597bda392b cwebp: fix crash with yuv input + lossless
3260f56a369a fix big-endian VP8LWriteBits
326154169d6c Merge "cwebp: name InputFileFormat members consistently"
3262e2feefa9 Makefile.vc: split mux into separate lib
326327caa5aa Merge "cwebp: add basic TIFF support"
3264d8921dd4 cwebp: name InputFileFormat members consistently
32656f76d246 cwebp: add basic TIFF support
32664691407b Merge changes If39ab7f5,I3658b5ae
3267cca7c7b8 Fixed nit: 10 -> 10.f
32685d09a244 WebPMuxCreate() error handling:
3269777341c3 Fix a memleak in WebPMuxCreate()
327061c9d161 doc: correct lossless prefix coding table & code
32714c397579 Merge "mark VP8{,L}{GetInfo,CheckSignature} as WEBP_EXTERN"
3272e4e36cc6 Merge "Mux: Allow only some frames/tiles to have alpha."
3273ad2aad3c Merge "WebP Decoding error handling:"
327497649c8f Mux: Allow only some frames/tiles to have alpha.
3275f864be3b Lower the quality settings for Alpha encoding.
32763ba81bbe WebP Decoding error handling:
3277fcc69923 add automatic YUVA/ARGB conversion during WebPEncode()
3278802e012a fix compilation in non-FANCY_UPSAMPLING mode
3279e012dfd9 make width/height coding match the spec
3280228d96a5 mark VP8{,L}{GetInfo,CheckSignature} as WEBP_EXTERN
3281637a314f remove the now unused *KeepA variants
3282d11f6fcc webpmux returns error strings rather than numbers
3283fcec0593 makefile.unix: cwebp: fix OSX link
32846b811f1b Merge "doc: remove lossless pdf"
3285c9634821 doc: remove lossless pdf
3286b9ae4f0d cosmetics after mux changes b74ed6e, b494ad5
3287b494ad50 Mux: only allow adding frame/tiles at the end.
32882c341b0e Merge "Added image characteristic hint for the codec."
3289d373076a Added image characteristic hint for the codec.
32902ed2adb5 Merge "msvc: add intrinsic based BitsLog2Floor"
3291e595e7c5 Merge "add demux.c to the makefiles"
3292da47b5bd Merge "demux: add {Next,Prev}Chunk"
3293e5f46742 add demux.c to the makefiles
32944708393c demux: add {Next,Prev}Chunk
3295e8a0a821 demux: quiet msvc warnings
32967f8472a6 Update the WebP Container Spec.
329731b68fe6 cleanup WebPPicture struct and API
32989144a186 add overflow check before calling malloc()
329981720c91 consistency cosmetics
33002ebe8394 Merge "Add kramdown version information to README"
330171443084 enc/vp8l.c: fix build
3302b7ac19fe Add kramdown version information to README
3303efdcb667 Merge "Edit for consistency, usage and grammar."
330408220102 Enable alpha in vvwebp
33058de9a084 Merge "Mux API change:"
3306b74ed6e7 Mux API change:
3307233a589e take picture->argb_stride into account for lossless coding
330804e33f17 Edit for consistency, usage and grammar.
3309a575b4bc Merge "cosmetics: add missing const"
33108d99b0f4 Merge "cosmetics: remove unimplemented function proto"
331169d02217 cosmetics: add missing const
33125b08318b cosmetics: remove unimplemented function proto
3313b7fb0ed5 Log warning for unsupported options for lossless.
3314e1f769fe msvc: add intrinsic based BitsLog2Floor
33158a69c7d8 Bug-fix: Clamp backward dist to 1.
3316b5b6ac97 Merge "Bring the special writer 'WebPMemoryWriter' to public API"
3317a6a1909f Merge "Fix floating point exception with cwebp -progress"
3318f2cee067 Fix floating point exception with cwebp -progress
331991b7a8c7 Bring the special writer 'WebPMemoryWriter' to public API
3320310e2972 support resize and crop for RGBA input
3321a89835d3 Merge changes Ice662960,Ie8d7aa90,I2d996d5e,I01c04772
3322ce614c0c Merge "dec/vp8: avoid setting decoder status twice"
3323900285da dec/vp8: avoid setting decoder status twice
33248227adc8 Merge changes I6f02b0d0,I5cbc9c0a,I9dd9d4ed,Id684d2a1
3325dcda59c1 Merge "demux: rename SetTile to SelectTile"
3326622ef12e demux: rename SetTile to SelectTile
332781ebd375 Merge "demux: add {Next,Prev}Frame"
332802dd37a2 demux: add {Next,Prev}Frame
33294b79fa59 Merge "Limit the maximum size of huffman Image to 16MB."
33309aa34b34 Manually number "chapters," as chapter numbers are used in the narrative.
33312a4c6c29 Re-wrap at <= 72 columns
3332a45adc19 Apply inline emphasis and monospacing, per gdoc / PDF
333391011206 Incorporate gdoc changes through 2012-06-08
33347a182487 Removed CodeRay syntax declarations ...
3335b3ec18c5 Provide for code-block syntax highlighting.
3336709d7702 Replace high ASCII artifacts (curly quotes, etc.).
3337930e8abb Lossless WebP doc largely ported to markdown text.
333818cae37b msvc: silence some build warnings
3339b3923084 Limit the maximum size of huffman Image to 16MB.
3340f180df2a Merge "libwebp/demux: add Frame/Chunk iteration"
33412bbe1c9a Merge "Enable lossless encoder code"
3342d0601b01 Merge changes I1d97a633,I81c59093
334378f3e345 Enable lossless encoder code
3344d974a9cc Merge "libwebp/demux: add simple format parsing"
334526bf2232 Merge "libwebp: add WebPDemux stub functions"
33462f666688 Merge "modify WebPParseHeaders to allow reuse by GetFeatures"
3347b402b1fb libwebp/demux: add Frame/Chunk iteration
3348ad9ada3b libwebp/demux: add WebPDemuxGetI
33492f2d4d58 libwebp/demux: add extended format parsing
3350962dcef6 libwebp/demux: add simple format parsing
3351f8f94081 libwebp: add WebPDemux stub functions
3352fb47bb5c Merge "NumNamedElements() should take an enum param."
33537c689805 Fix asserts in Palette and BackwardReference code.
3354fbdcb7ea NumNamedElements() should take an enum param.
3355fb4943bd modify WebPParseHeaders to allow reuse by GetFeatures
33563697b5ce write an ad-hoc EncodeImageInternal variant
3357eaee9e79 Bug-Fix: Decode small (less than 32 bytes) images.
33580bceae48 Merge "cwebp: fix alpha reporting in stats output"
33590424b1ef Rebase default encoding settings.
3360c71ff9e3 cwebp: fix alpha reporting in stats output
3361e2ffe446 Merge "Stop indefinite recursion for Huffman Image."
336270eb2bd6 Stop indefinite recursion for Huffman Image.
3363f3bab8eb Update vwebp
33646d5c797c Remove support for partial files in Mux.
3365f1df5587 WebPMuxAssemble() returns WebPData*.
3366814a0639 Rename 'Add' APIs to 'Set'.
3367bbb0218f Update Mux psuedo-code examples.
33684fc4a47f Use WebPData in MUX set APIs
3369c67bc979 Merge "add WebPPictureImportRGBX() and WebPPictureImportBGRX()"
337027519bc2 add WebPPictureImportRGBX() and WebPPictureImportBGRX()
3371f80cd27e factorize code in Import()
33729b715026 histogram: add log2 wrapper
33738c34378f Merge "fix some implicit type conversion warnings"
337442f6df9d fix some implicit type conversion warnings
3375250c16e3 Merge "doc: update lossless pdf"
33769d9daba4 Merge "add a PDF of the lossless spec"
33778fbb9188 prefer webp/types.h over stdint.h
33780ca170c2 doc: update lossless pdf
33790862ac6e add a PDF of the lossless spec
3380437999fb introduce a generic WebPPictureHasTransparency() function
3381d2b6c6c0 cosmetic fixes after Idaba281a
3382b4e6645c Merge "add colorspace for premultiplied alpha"
338348f82757 add colorspace for premultiplied alpha
3384069f903a Change in lossless bit-stream.
33855f7bb3f5 Merge "WebPReportProgress: use non-encoder specific params"
3386f18281ff WebPReportProgress: use non-encoder specific params
33879ef32283 Add support for raw lossless bitstream in decoder.
33887cbee29a Fix bug: InitIo reseting fancy_upsampling flag.
3389880fd98c vwebp: fix exit w/freeglut
33901875d926 trap two unchecked error conditions
339187b4a908 no need to have mux.h as noinst clause in enc/
339288f41ec6 doc: fix bit alignment in VP8X chunk
339352f5a4ef Merge "fix bug with lossy-alpha output stride"
33943bde22d7 fix bug with lossy-alpha output stride
339542d61b6d update the spec for the lossy-alpha compression methods.
3396e75dc805 Move some more defines to format_constants.h
3397c13f6632 Move consts to internal header format_constants.h
33987f2dfc92 use a bit-set transforms_seen_ instead of looping
339918da1f53 modulate alpha-compression effort according to config.method
3400f5f2fff6 Merge "Alpha flag fix for lossless."
3401c975c44e Alpha flag fix for lossless.
34024f067fb2 Merge "Android: only build dec_neon with NEON support"
3403255c66b4 Android: only build dec_neon with NEON support
34048f9117a9 cosmetics: signature fixes
340539bf5d64 use header-less lossless bitstream for alpha channel
340675d7f3b2 Merge "make input data be 'const' for VP8LInverseTransform()"
34079a721c6d make input data be 'const' for VP8LInverseTransform()
34089fc64edc Disallow re-use of same transformation.
340998ec717f  use a function pointer for ProcessRows()
3410f7ae5e37 cosmetics: join line
3411140b89a3 factor out buffer alloc in AllocateARGBBuffers()
3412a107dfa8 Rectify WebPParseOptionalChunks().
3413237eab67 Add two more color-spaces for lossless decoding.
341427f417ab fix orthographic typo
3415489ec335 add VP8LEncodeStream() to compress lossless image stream
3416fa8bc3db make WebPEncodingSetError() take a const picture
3417638528cd bitstream update for lossy alpha compression
3418d73e63a7 add DequantizeLevels() placeholder
3419ec122e09 remove arch-dependent rand()
3420d40e7653 fix alignment
34211dd6a8b6 Merge "remove tcoder, switch alpha-plane compression to lossless"
34223e863dda remove tcoder, switch alpha-plane compression to lossless
34238d77dc29 Add support for lossless in mux:
3424831bd131 Make tile size a function of encoding method.
3425778c5228 Merge "remove some variable shadowing"
3426817c9dce Few more HuffmanTreeToken conversions.
342737a77a6b remove some variable shadowing
342889c07c96 Merge "normalize example header includes"
34294aff411f Merge "add example_util.[hc]"
343000b29e28 normalize example header includes
3431061263a7 add example_util.[hc]
3432c6882c49 merge all tree processing into a single VP8LProcessTree()
34339c7a3cf5 fix VP8LHistogramNumCodes to handle the case palette_code_bits == 0
3434b5551d2e Merge "Added HuffmanTreeCode Struct for tree codes."
34358b85d01c Added HuffmanTreeCode Struct for tree codes.
3436093f76d8 Merge "Allocate single memory in GetHuffBitLengthsAndCodes."
343741d80494 Allocate single memory in GetHuffBitLengthsAndCodes.
34381b04f6d2 Correct size in VP8L header.
34392924a5ae Makefile.vc: split object lists based on directory
3440c8f24165 Merge "add assert(tokens)"
344143239947 add assert(tokens)
34429f547450 Catch an error in DecodeImageData().
3443ac8e5e42 minor typo and style fix
34449f566d1d clean-up around Huffman-encode
3445c579a710 Introduce CHUNK_SIZE_BYTES in muxi.h.
344614757f8a Make sure huffman trees always have valid symbols
344741050618 makefile.unix: add support for building vwebp
344848b37721 Merge "fixed signed/unsigned comparison warning"
344957f696da Merge "EncodeImageInternal: fix potential leak"
3450d972cdf2 EncodeImageInternal: fix potential leak
34515cd12c3d fixed signed/unsigned comparison warning
3452cdca30d0 Merge "cosmetics: shorten long line"
3453e025fb55 cosmetics: shorten long line
345422671ed6 Merge "enc/vp8l: fix double free on error"
3455e1b9b052 Merge "cosmetics: VP8LCreateHuffmanTree: fix indent"
3456a8e725f8 enc/vp8l: fix double free on error
345727541fbd cosmetics: VP8LCreateHuffmanTree: fix indent
34581d38b258 cwebp/windows: use MAKE_REFGUID where appropriate
3459817ef6e9 Merge "cwebp: fix WIC/Microsoft SDK compatibility issue"
3460902d3e3b cwebp: fix WIC/Microsoft SDK compatibility issue
346189d803c4 Merge "Fix a crash due to wrong pointer-integer arithmetic."
3462cb1bd741 Merge "Fix a crash in lossless decoder."
3463de2fe202 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."
3464ce69177a Fix a crash due to wrong pointer-integer arithmetic.
3465e40a3684 Fix a crash in lossless decoder.
34663927ff3a remove unneeded error condition for WebPMuxNumNamedElements()
34672c140e11 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.
3468861a5b7b add support for animation
3469eb5c16cc Merge "Set correct encode size in encoder's stats."
34704abe04a2 fix the return value and handle missing input file case.
34712fafb855 Set correct encode size in encoder's stats.
3472e7167a2b Provide one entry point for backward references.
3473c4ccab64 Print relevant lossless encoding stats in cwebp.
3474e3302cfd GetHuffBitLengthsAndCodes: reduce level of indirection
3475b5f2a9ed enc/vp8l: fix uninitialized variable warning
34767885f8b2 makefile.unix: add lossless encoder files
34771261a4c8 Merge "cosmetics"
34783926b5be Merge "dsp/cpu.c: Android: fix crash on non-neon arm builds"
3479834f937f dsp/cpu.c: Android: fix crash on non-neon arm builds
3480126e1606 cosmetics
3481e38602d2 Merge branch 'lossless_encoder'
3482e8d3d6a0 split StoreHuffmanCode() into smaller functions
3483d0d88990 more consolidation: introduce VP8LHistogramSet
34841a210ef1 big code clean-up and refactoring and optimization
348541b5c8ff Some cosmetics in histogram.c
3486ada6ff77 Approximate FastLog between value range [256, 8192]
3487ec123ca3 Forgot to update out_bit_costs to symbol_bit_costs at one instance.
3488cf33ccd1 Evaluate output cluster's bit_costs once in HistogramRefine.
3489781c01f4 Simple Huffman code changes.
3490a2849bc5 Lossless decoder: remove an unneeded param in ReadHuffmanCodeLengths().
3491b39e7487 Reducing emerging palette size from 11 to 9 bits.
3492bfc73db4 Move GetHistImageSymbols to histogram.c
3493889a5786 Improve predict vs no-predict heuristic.
349401f50663 code-moving and clean-up
349531035f3b reduce memory usage by allocating only one histo
3496fbb501b8 Restrict histo_bits to ensure histo_image size is under 32MB
34978415ddf3 further simplification for the meta-Huffman coding
3498e4917299 A quick pass of cleanup in backward reference code
349983332b3c Make transform bits a function of encode method (-m).
350072920caa introduce -lossless option, protected by USE_LOSSLESS_ENCODER
3501c6ac4dfb Run TraceBackwards for higher qualities.
3502412222c8 Make histo_bits and transform_bits function of quality.
3503149b5098 Update lossless encoder strategy:
35040e6fa065 cache_bits passed to EncodeImageInternal()
3505e38b40a9 Factorize code for clearing HtreeGroup.
35066f4a16ea Removing the indirection of meta-huffman tables.
35073d33ecd1 Some renaming/comments related to palette in lossless encoder.
35084d02d586 Lossless encoder: correction in Palette storage
35094a636235 fix a memleak in EncodeImageInternal()
35100993a611 Full and final fix for prediction transform
3511afd2102f Fix cross-color transform in lossless encoder
3512b96d8740 Need to write a '0' bit at the end of transforms.
351354dad7e5 Color cache size should be counted as 0 when cache bits = 0
35144f0c5caf Fix prediction transform in lossless encoder.
351536dabdad Fix memory leak in method EncodeImageInternal for histogram_image.
3516352a4f49 Get rid of PackLiteralBitLengths()
3517d673b6b9 Change the predictor function to pass left pixel
3518b2f99465 Fix CopyTileWithPrediction()
351984547f54 Add EncodeImageInternal() method.
35206b38378a Guard the lossless encoder (in flux) under a flag
352109f7532c Fix few nits (const qualifiers)
3522648be393 Added implementation for various lossless functions
352332714ce3 Add VP8L prefix to backward ref & histogram methods.
3524fcba7be2 Fixed header file tag (WEBP_UTILS_HUFFMAN_ENCODE_H_)
3525bc703746 Add backward_ref, histogram & huffman encode modules from lossless.
3526fdccaadd Fixing nits
3527227110c4 libwebp interface changes for lossless encoding.
352850679acf minor style fixes
3529b38dfccf remove unneeded reference to NUM_LITERAL_CODES
35308979675b harmonize header description
3531c04eb7be tcoder.c: define NOT_HAVE_LOG2 for MSVC builds
35329a214fa1 Merge "VP8[L]GetInfo: check input pointers"
35335c5be8ba VP8[L]GetInfo: check input pointers
35340c188fec Merge changes I431acdfe,I713659b7
3535b3515c62 mux: drop 'chunk' from ChunkInfo member names
3536aea7923c muxi.h: remove some unused defines
353701422492 update NEWS file for next release
353829e3f7ec Merge "dec: remove deprecated WebPINew()"
35394718e449 Merge "muxedit: a few more size_t changes"
354082654f96 Merge "muxedit: remove a few redundant NULL checks"
354102f27fbd dec: remove deprecated WebPINew()
3542ccddb3fc muxedit: remove a few redundant NULL checks
3543a6cdf710 muxedit: a few more size_t changes
3544a3846892 Merge "mux: remove unused LIST_ID"
354511ae46ae alpha.c: quiet some size_t -> int conversion warnings
3546dee46692 mux: remove unused LIST_ID
354703f1f493 mux: add version checked entry points
35486a0abdaa Merge "doc: tile/alpha corrections"
3549c8139fbe Merge "few cosmetics"
355068338737 Merge "lossless: remove some size_t -> int conversions"
35515249e94a doc: tile/alpha corrections
3552d96e722b huffman: quiet int64 -> int conversion warning
3553532020f2 lossless: remove some size_t -> int conversions
355423be6edf few cosmetics
35551349edad Merge "configure: AC_ARG_* use AS_HELP_STRING"
3556bfbcc60a configure: AC_ARG_* use AS_HELP_STRING
35571427ca8e Merge "Makefile.am: header file maintenance"
3558087332e3 Merge "remove unused parameter 'round' from CalcProba()"
35599630e168 remove unused parameter 'round' from CalcProba()
356092092eaa Merge "bit_reader.h: correct include"
3561a87fc3f6 Merge "mux: ensure # images = # tiles"
356253af99b1 Merge "mux: use size_t consistently"
356339a57dae Makefile.am: header file maintenance
35641bd0bd0d bit_reader.h: correct include
3565326a3c6b mux: ensure # images = # tiles
356695667b8d mux: use size_t consistently
3567231ec1fb Removing the indirection of meta-huffman tables.
356815ebcbaa check return pointer from MuxImageGetListFromId
3569b0d6c4a7 Merge "configure: remove test for zlib.h"
35708cccac50 Merge "dsp/lossless: silence some build warnings"
3571b08819a6 dsp/lossless: silence some build warnings
35727ae22521 Android.mk: SSE2 & NEON updates
35730a49e3f3 Merge "makefile.unix add missing header files"
35742e75a9a1 Merge "decode.h: use size_t consistently"
3575fa13035e configure: remove test for zlib.h
3576d3adc81d makefile.unix add missing header files
3577262fe01b Merge "makefile.unix & Android.mk: cosmetics"
35784cce137e Merge "enc_sse2 add missing stdlib.h include"
357980256b85 enc_sse2 add missing stdlib.h include
35809b3d1f3a decode.h: use size_t consistently
358164083d3c Merge "Makefile.am: cosmetics"
3582dceb8b4d Merge changes If1331d3c,I86fe3847
35830e33d7bf Merge "webp/decode.h: fix prototypes"
3584fac0f12e rename BitReader to VP8LBitReader
3585fbd82b5a types.h: centralize use of stddef.h
35862154835f Makefile.am: cosmetics
35871c92bd37 vp8io: use size_t for buffer size
358890ead710 fix some more uint32_t -> size_t typing
3589cbe705c7 webp/decode.h: fix prototypes
35903f8ec1c2 makefile.unix & Android.mk: cosmetics
3591217ec7f4 Remove tabs in configure.ac
3592b3d35fc1 Merge "Android.mk & Makefile.vc: add new files"
35930df04b9e Android.mk & Makefile.vc: add new files
3594e4f20c5b Merge "automake: replace 'silent-rules' w/AM_SILENT_RULES"
35958d254a09 cosmetics
35966860c2ea fix some uint32_t -> size_t typing
35974af1858a Fix a crash due to max symbol in a tree >= alphabet size
35986f01b830 split the VP8 and VP8L decoding properly
3599f2623dbe enable lossless decoder
3600b96efd7d add dec/vp8i.h changes from experimental
360119f6398e add dec/vp8l{i.h,.c} from experimental
3602c4ae53c8 add utils/bit_reader.[hc] changes from experimental
3603514d0089 add dsp/lossless.[hc] from experimental
36049c67291d add utils/huffman.[hc] from experimental
3605337914a0 add utils/color_cache.[hc] from experimental
3606b3bf8fe7 the read-overflow code-path wasn't reporting as an error
36071db888ba take colorspace into account when cropping
360861c2d51f move the rescaling code into its own file and make enc/ and dec/ use it.
3609efc2016a Make rescaler methods generic
36103eacee81 Move rescaler methods out of io.c.
3611a69b893d automake: replace 'silent-rules' w/AM_SILENT_RULES
36126f7bf645 issue 111: fix little-endian problem in bit-reader
3613ed278e22 Removed unnecessary lookup
3614cd8c3ba7 fix some warnings: down-cast and possibly-uninitialized variable
36150a7102ba ~1% improvement of alpha compression
36163bc1b141 Merge "Reformat container doc"
3617dc17abdc mux: cosmetics
3618cb5810df Merge "WebPMuxGetImage: allow image param to be NULL"
3619506a4af2 mux: cosmetics
3620135e8b19 WebPMuxGetImage: allow image param to be NULL
3621de556b68 Merge "README.mux: reword some descriptions"
36220ee2aeb9 Makefile.vc: use batch mode rules
3623d9acddc0 msvc: move {i,p}db creation to object directory
3624237c9aa7 Merge "expose WebPFree function for DLL builds"
3625b3e4054f silence msvc debug build warning
362645feb55d expose WebPFree function for DLL builds
362711316d84 README.mux: reword some descriptions
36284be52f4a factorize WebPMuxValidate
362914f6b9f6 mux: light cleanup
36305e96a5db add more param checks to WebPPictureDistortion()
36318abaf820 Merge "silence some type size related warnings"
36321601a39b silence some type size related warnings
3633f3abe520 Merge "idec: simplify buffer size calculation"
3634a9c5cd4c idec: simplify buffer size calculation
36357b06bd7f Merge "configure/automake: add silent-rules option"
3636e9a7d145 Reformat container doc
3637d4e5c7f3 configure/automake: add silent-rules option
36385081db78 configure/automake: no -version-info for convenience libs
363985b6ff68 Merge "idec: fix WebPIUpdate failure"
36407bb6a9cc idec: fix internal state corruption
364189cd1bb8 idec: fix WebPIUpdate failure
364201b63806 4-5% faster decoding, optimized byte loads in arithmetic decoder.
3643631117ea Merge "cosmetics & warnings"
3644a0b2736d cosmetics & warnings
3645f73947f4 use 32bit for storing dequant coeffs, instead of 16b.
3646b9600308 Merge "store prediction mode array as uint8_t[16], not int[16]."
36477b67881a store prediction mode array as uint8_t[16], not int[16].
3648cab8d4dc Merge "NEON TransformOne"
3649ba503fda NEON TransformOne
36509f740e3b Merge "gcc warning fix: remove the 'const' qualifier."
3651f76d3587 gcc warning fix: remove the 'const' qualifier.
3652e78478d6 Merge "webpmux: make more use of WebPData"
3653f85bba3d Merge "manpages: add BUGS section"
365448a43bbf Merge "makefile.unix: variable cosmetics"
3655c274dc96 makefile.unix: variable cosmetics
36561f7b8595 re-organize the error-handling in the main loop a bit
36571336fa71 Only recompute level_cost_[] when needed
3658771ee449 manpages: add BUGS section
36590f7820e6 webpmux: make more use of WebPData
3660974aaff3 examples: logging updates
36616c14aadd Merge "better token buffer code"
3662f4054250 better token buffer code
366318d959fa Merge "mux: add WebPData type"
3664eec4b877 mux: add WebPData type
36650de3096b use 16bit counters for recording proba counts
36667f23678d fix for LevelCost + little speed-up
36677107d544 further speed-up/cleanup of RecordCoeffs() and GetResidualCost()
3668fd221040 Introduce Token buffer (unused for now)
36695fa148f4 Merge "speed-up GetResidualCost()"
367028a9d9b4 speed-up GetResidualCost()
367111e7dadd Merge "misc cosmetics"
3672378086bd misc cosmetics
3673d61479f9 add -print_psnr and -print_ssim options to cwebp.
36742e3e8b2e add a WebPCleanupTransparentArea() method
3675552c1217 Merge "mux: plug some memory leaks on error"
3676a2a81f7d Merge "fix Mach-O shared library build"
3677b3482c43 Merge "fix gcc-4.0 apple 32-bit build"
3678e4e3ec19 fix gcc-4.0 apple 32-bit build
3679b0d2fecf mux: plug some memory leaks on error
3680f0d2c7a7 pass of cosmetics
3681b309a6f9 fix Mach-O shared library build
3682241ddd38 doc: delete mux container pdf
36838b1ba272 doc: update VP8 decode guide link
36847e4371c5 WebPMuxCreate: fix unchecked malloc
3685eb425586 Merge "have makefile.unix clean up src/webp/*~ too"
3686a85c3631 Merge "correct EncodeAlpha documentation"
3687a33842fd Merge "Update webp container spec with alpha filter options."
36888d6490da Incremental support for some of the mux APIs.
3689b8375abd have makefile.unix clean up src/webp/*~ too
3690b5855fc7 correct EncodeAlpha documentation
3691dba37fea Update webp container spec with alpha filter options.
36922e74ec8b fix compile under MINGW
3693716d1d7f fix suboptimal MAX_LEN cut-off limit
369457cab7b8 Harmonize the alpha-filter predictions at boundary
36953a989534 Merge "Fix bug for Alpha in RGBA_4444 color-mode."
36968ca2076d Introduce a 'fast' alpha mode
3697221a06bb Fix bug for Alpha in RGBA_4444 color-mode.
3698ad1e163a cosmetics: normalize copyright headers
3699c77424d7 cosmetics: light include cleanup
37009d0e17c9 fix msvc build breakage after 252028a
37017c4c177c Some readability fixes for mux library
3702d8a47e66 Merge "Add predictive filtering option for Alpha."
3703252028aa Add predictive filtering option for Alpha.
37049b69be1c Merge "Simplify mux library code"
3705a056170e Simplify mux library code
3706992187a3 improve log2 test
3707e852f832 update Android.mk file list
3708a90cb2be reduce number of copies and mallocs in alpha plane enc/dec
3709b1662b05 fix some more type conversion warnings w/MSVC
3710223d8c60 fix some uint64_t -> int conversion warnings with MSC
3711c1a0437b Merge "simplify checks for enabling SSE2 code"
3712f06817aa simplify checks for enabling SSE2 code
3713948d4fe9 silence a msvc build warning
371491179549 vwebp: msvc build tweaks
37157937b409 simple WebP viewer, based on OpenGL
37166aac1df1 add a bunch of missing 'extern "C"'
3717421eb99d Merge "Remove assigned-but-not-used variable "br""
371891e27f45 better fitting names for upsampling functions
3719a5d7ed5c Remove assigned-but-not-used variable "br"
3720f62d2c94 remove unused 'has_alpha' from VP8GetInfo() signature
372108e86582 trap alpha-decoding error
3722b361eca1 add cut-off to arith coder probability update.
37238666a93a Some bug-fixes for images with alpha.
3724273a12a0 fix off-by-1 diff in case cropping and simple filtering
37252f741d1e webpmux: ReadImage: fix ptr free in error case
3726721f3f48 fix alpha decode
372760942c8c fix the has_alpha_ order
372830971c9e Implement progress report (and user abort)
3729eda520a9 cosmetics after 9523f2a
373038bd5bb5 Merge "Better alpha support in webpmux binary"
3731ccbaebfe Merge "Updated the includes to relative paths."
3732d71fbdcc fix small typo in error message array
3733cdf97aa2 Better alpha support in webpmux binary
3734885f25bc Updated the includes to relative paths.
3735a0ec9aac Update WebP encoder (cwebp) to support Alpha.
3736667b769a Fixed the include for types.h within mux.h
37379523f2a5 Add Alpha Encode support from WebPEncode.
373816612ddd Merge "Add Alpha Decode support from WebPDecode."
3739d117a940 Add Alpha Decode support from WebPDecode.
374067228734 cosmetics after e1947a9
3741e1947a92 Add Alpha encode/decode code.
3742afc4c5d6 simplify code by introducing a CopyPlane() helper func
3743113b3128 Merge "MUX API Updates"
3744c398f595 MUX API Updates
37455acf04ef remove orphan source file
3746059f03ef Merge "dec: validate colorspace before using as array index"
374770a03989 Merge "factorize some code"
37489b243b3d factorize some code
3749372e2b46 Correct a bug in ReadPNG() with GRAY_ALPHA images
3750469d6eb9 Merge "Makefile.am: remove redundant noinst_HEADERS"
37519fe3372f dec: validate colorspace before using as array index
37528962030f remove orphan source file
3753ced3e3f4 Makefile.am: remove redundant noinst_HEADERS
3754964387ed use WEBP_INLINE for inline function declarations
375590880a11 Merge "manpages: break long lines"
3756b5910895 Merge "manpages: minor formatting updates"
37574c451e4a Merge "Rectify the Chunk parsing logic."
375804e84cf1 examples: slight cleanup
3759099717ce manpages: break long lines
37601daf39bb manpages: minor formatting updates
3761abd030b5 fix missing "(void)" in function signature
3762f6a7d758 remove useless test
3763f07b2138 Rectify the Chunk parsing logic.
3764b8634f7d webpmux: fix lib link order
376542c2e682 Fix missing coma (on uncompiled code)
3766d8329d41 Android.mk: add missing source files
376713a54df5 Merge "More aggressive copy-edit; add TODO; validate HTML5"
3768868b96ae More aggressive copy-edit; add TODO; validate HTML5
3769767afea2 configure: check for a symbol contained in libpng
3770408b8918 Merge "Linewrap at 72 cols. Casual copy-edit."
37713ae318c7 Merge "Restore (most) emphasis; add emphasis to normative RFC 2119 terms (MUST, etc.)"
3772918eb2d8 Merge "Basic container doc source clean-up; fix lists and pseudocode blocks."
377303bec9e0 Linewrap at 72 cols. Casual copy-edit.
37742678d819 Restore (most) emphasis; add emphasis to normative RFC 2119 terms (MUST, etc.)
3775428674da Basic container doc source clean-up; fix lists and pseudocode blocks.
37766a77d928 Merge "Makefile.vc: cosmetics"
377728c38e8c Merge "Makefile.vc: condense directory creation rules"
377855be2cf8 Initial import of container spec document, from pdftotext transform.
3779a82a788b Makefile.vc: cosmetics
3780c8f41ce5 Makefile.vc: condense directory creation rules
37812b877cd0 Some fixes to Makefile.vc to support the src\mux directory.
37823eb969b3 Merge "Add Makefile.vc for Mux library & binary."
3783e78e971e Add Makefile.vc for Mux library & binary.
37846aedde58 Add manual for WebPMux tool.
37858a360d0a Merge "Added WebPMux Binary."
3786a4f32cae Added WebPMux Binary.
3787f3bf4c76 Added Mux Container Spec & README for MUX-API.
37889f761cfa Changed function signature for WebPMuxCreate
37895f31b5ec Merge "Add Mux library for manipulating WebP container."
37902315785f Add Mux library for manipulating WebP container.
37917e198abb update ChangeLog (tag: v0.1.3)
3792dfc9c1ea Harmonize the dates
379328ad70c5 Fix PNG decoding bug
3794846e93c5 Update AUTHORS & add .mailmap
3795563e52d6 cosmetics after '76036f5 Refactor decoder library'
379676036f54 Refactor decoder library
3797377ef43c configure.ac: update AC_INIT params
37987a8d8762 use a user-visible MACRO for max width/height.
3799d4e9f559 NEON decode support in WebP
38000ee683b5 update libtool version-info
3801fdbe02c5 windows: match _cond_destroy logic w/return variable name
3802206b686b README: correct advanced decode api pseudo-code
38036a32a0f5 make VP8BitReader a typedef, for better re-use
3804b112e836 create a libwebputils under src/utils
3805ee697d9f harmonize the include guards and #endif comments
3806a1ec07a6 Fixing compiler error in non x86 arch.
3807dcfa509a Fixed recursive inclusion of bit_writer.h and vp8enci.h.
3808e06ac088 create a separate libwebpdsp under src/dsp
3809ebeb412a use unsigned int for bitfields
3810341cc56a make kNewRange a static array
3811227a91e5 README: minor wording update
381205bd8e6a add man pages to dist
3813812dfa1a bump up versions in preparations for 0.1.3
3814a5b78c81 wrap alpha-related options under WEBP_EXPERIMENTAL_FEATURES flag
381534dc7907 regen ChangeLog for 0.1.3-rc2
38167c436630 Silence some (more) Visual Studio warnings.
381760306e8c add top-level gitattributes
38182aa6b80e Slience some Visual Studio warnings.
38194cbbb290 Merge "bump up version for next freeze"
3820a3291674 bump up version for next freeze
3821c7e86aba cosmetics: fix comment line lengths
3822c9e037ab makefile.unix: add simple dist target
382387d58ce9 makefile.unix: rule maintenance
3824d477de77 mend
3825fac15ec7 Update NEWS & README for next release V0.1.3
38266215595c Merge "add a -partition_limit option to limit the number of bits used by intra4x4"
38273814b76c Merge "reorganize chunk-parsing code"
3828900286e0 add a -partition_limit option to limit the number of bits used by intra4x4
3829cd12b4b0 add the missing cost for I4/I16 mode selection
3830dfcc2136 reorganize chunk-parsing code
38313cf20306 initialize pointers to function within VP8DspInit()
3832d21b4795 Merge "windows: add decode threading support"
3833473ae953 fix hang on thread creation failure
3834fccca420 windows: add decode threading support
3835a31f843a Use the exact PNG_INCLUDES/PNG_LIBS when testing for -lpng
3836ad9b45f1 Merge "Makefile.vc: rule maintenance"
3837565a2cab Makefile.vc: rule maintenance
38382d0da681 makefile.unix: disable Wvla by default
3839fc7815d6 multi-thread decoding: ~25-30% faster
3840acd8ba42 io->teardown() was not always called upon error
3841c85527b1 Merge "Makefile.vc: add DLL configs"
3842e1e9be35 cosmetics: spelling/grammar in README and lib headers
3843b4d0ef8f Makefile.vc: add DLL configs
3844998754a7 remove unused nb_i4_ and nb_i16_ fields.
38459f01ce3a rename WebPDecBuffer::memory -> private_memory
3846fb5d659b fix an overflow bug in LUT calculation
3847d646d5c7 swig: add WebPDecodeARGB
384878aeed40 add missing WebPDecodeARGBInto() and switch ARGB4444 to RGBA4444 as was intended
3849cd7c5292 explicitly mark library functions as extern
385019db59f8 add support for RGB565, ARGB4444 and ARGB colorspace (decoder)
3851c915fb2a encoder speed-up: hardcode special level values
3852c558bdad Rename and improve the API to retrieve decoded area
3853bf599d74 Merge "makefile.unix: disable -Wvla by default"
3854c9ea03d7 SSE2 version of strong filtering
3855993af3e2 makefile.unix: disable -Wvla by default
38563827e1bc Merge "examples: (windows/WIC) add alpha support"
3857e291fae0 SSE2 functions for the fancy upsampler.
3858a06bbe2e add WebPISetIOHooks() to set some custom hooks on the incremental decoder object.
38597643a6f2 Merge "makefile.unix: use uname to detect OSX environment"
38605142a0be export alpha channel (if present) when dumping to PGM format
386114d5731c makefile.unix: use uname to detect OSX environment
386208057062 examples: quiet warnings
38633cfe0888 examples: (windows/WIC) add alpha support
386413ed94b8 add compile warning for variable-length-array
38655a18eb1a Merge "add Advanced Decoding Interface"
38665c4f27f9 add missing \n
3867f4c4e416 80 cols fix
3868d2603105 add Advanced Decoding Interface
3869bd2f65f6 sse2 version of the complex filter
387096ed9ce0 perform two idct transforms at a time when possible
387101af7b69 use aligned stored
38720e1d1fdf Merge "Makefile.vc: add experimental target"
38732a1292a6 Makefile.vc: add experimental target
387423bf351e Enable decode SSE2 for Visual Studio
3875131a4b7b dec/dsp_sse2: fix visual studio compile
387600d9d680 swig: file reorganization
38777fc7e0d9 Merge "swig/java: basic encode support"
38783be57b16 fix MSVC compile for WEBP_EXPERIMENTAL_FEATURES
387940a7e347 dec/dsp: disable sse2 for Visual Studio builds
3880e4d540c8 add SSE2 code for transform
388154f2170a swig/java: basic encode support
3882c5d4584b call function pointers instead of C-version
3883ea43f045 Merge "configure: mingw32 targets: test for WIC support"
3884a11009d7 SSE2 version of simple in-loop filtering
388542548da9 shave one unneeded filter-cache line
388631f9dc6f configure: mingw32 targets: test for WIC support
388719559699 Merge "split expression in two."
3888415dbe46 split expression in two.
3889e29072a8 configure: test for zlib only w/--enable-experimental
3890b2b0090b Simplify Visual Studio ifdefs
3891ca7a2fd6 Add error reporting from encoding failures.
38926c9405db Merge "Makefile.vc: require CFG with clean target"
38930424ecd9 Makefile.vc: require CFG with clean target
3894003417c7 Enable SSE2 for Visual Studio builds
3895af10db4a little speed up for VP8BitUpdate()
3896e71418f8 more MSVC files to ignore
389746d90363 cosmetics
3898edf59ab3 typo fix
389972229f5f Add support for x64 and SSE2 builds under Windows.
390092e5c6e1 VP8GetInfo() + WebPResetDecParams()
3901416b7a6b raise the fixed-point precision for the rescaler
3902aa87e4e0 fix alignment
3903eb66670c disable WEBP_EXPERIMENTAL_FEATURES
3904c5ae7f65 typo fix: USE_ => WEBP_
3905d041efae swig: add libwebp.jar/libwebp_java_wrap.c
3906f6fb3877 add swig interface
3907e9273902 align buffer for double too
3908842c009b fix -strong option
3909d0a70387 Merge "cosmetics"
3910fc0a02e5 fix the dichotomy loop
391138369c03 cosmetics
39128dfc4c6f factorize and unify GetAlpha() between the C and SSE2 version
39136d0e66c2 prepare experimentation with yuv444 / 422
391479cc49f5 add a --enable-experimental option to './configure'
3915d7575238 sse2 version of CollectHistogram()
3916c1c728d6 add an extra #ifdef WEBP_EXPERIMENTAL_FEATURES to avoid 'unused variable' warning
391760c61d2d always call VP*EncDeleteAlpha() unconditionnally, for simplicity
39180f8c6384 simply don't call WriteExtensions() if WEBP_EXPERIMENTAL_FEATURES is not defined
391947c661d5 rename swap -> swap_rb
392010d55bbb move chunk[] declaration out of the for() loop
3921517cec21 fix indentation
3922f7d9e261 fix merge problems
39238fd42b3a add a stride 'a_stride' for the alpha plane
3924b8dcbf2f fix alpha-plane copy and crop methods
3925cdef89de fix some 'unused variable' warning
3926fb29c262 SSE2 version of the fwd transform and the squared sum metric
39272ab4b72f EXPERIMENTAL: add support for alpha channel
3928cfbf88a6 add SSE2 functions. ~2x faster encoding on average.
3929e7ff3f9a merge two ITransforms together when applicable and change the TTransform to return the sum directly.
3930ca554137 fix WebPIDecGetRGB() to accept any RGB(A) mode, not just MODE_RGB
39318aa50efd fix some 'man' typos
3932d3f3bdda update ChangeLog (tag: v0.1.2)
3933d7e9a69c update contributor list
3934261abb8e add a 'superclean' section
3935276ae825 Remove files not mean to be in git, and update .gitignore
393624868455 build: prepare libwebp.pc
393714ceb6e8 add "-version" description to man pages
3938b247a3b2 Create the m4 directory, and also place .gitignore in there for libtool.
3939cdd734c9 Resolve automake warnings
3940c5fa726e build: add pkgconfig files
3941b20aaca2 build: just use autoreconf, avoid calling tools manually
39424b0b0d66 cwebp: use modern functions
3943efbc6c41 update Android.mk
39447777570b better version of ChangeLog
3945fa70d2b7 update version number in the DOC
3946f8db5d5d more C89-fixes
39470de013b3 fix typos
3948650ffa3b add version getters for decoder and encoder
3949be4867d2 doc for incremental decoding
395056732a1b add idec.obj in MSVC makefile
3951208afb5e add c++ guards
39528bf76fe0 add incremental decoding
39531f288328 'inline' isn't defined in strict ansi c89
39548b77c632 move the quantization function to dsp.c
3955b2c3575c add a 'last_y' field to WebPDecParams
39562654c3da correctly pass along the exact same status returned from ParsePartitions
39574704146a add missing precision in the man
39586d978a6c add error messages
39596463e6ab add some install instructions, and fix intel-mac flags
396005fb7bfc Merge ".gitignore: initial version"
3961c33f0195 .gitignore: initial version
3962e532b9ab Makefile: allow out of tree builds
39634c0da7aa enable sparse dc/ac transforms
396407dbb8d5 clarify the return logic
39655c69e1bb fix bigger-by-1 array
39667c5267e3 fix a (harmless) typo: non_zero_ -> non_zero_ac_
3967bc752135 fix missing free()
3968af3e2aaa remove trailing spaces
396913e50da6 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.
3970f4888f77 emit 9 - nb_bits trailing zeros instead of 8
39713db65255 separate block-parsing into a visible VP8DecodeMB()
3972a871de02 add missing extern "C"
3973b3ce8c52 remove a gcc warning about type pun by using a proper union'd type
3974e1863715 update after addition of webpi.h
39753e856e2d Extract some useful functions around decoding buffer WebPDecParams.
3976d5bc05a4 make the filtering process match libvpx and ffvp8
3977dd60138d add man pages for cwebp(1) and dwebp(1)
3978c4fa3644 fix header
39795b70b378 * add an option to bypass_filtering in VP8Io.
3980b97a4003 simplify QuantizeBlock code a bit
398184b58ebb add more checks around picture allocation
3982b65a3e10     remove absolute_delta_ field and syntax code
39830744e842 Dont' open output file until we're sure the input file is valid
3984d5bd54c7 fix typo and buggy line
3985f7a9549d Add a simple top-level makefile.unix for quick & easy build.
39865f36b944 update the doc for the -f option
3987f61d14aa a WebP encoder converts PNG & JPEG to WebP
398881c96621 oops: forgotten call to Initialize() + move the error message to a more useful place
398987ffa005 typo: fix a missing 'R', was confusing.
3990b04b857a * add decoding measurement using stopwatch.h (use -v option) * support PNG output through WIC on Win32
3991746a4820 * make (*put)() hook return a bool for abort request. * add an enum for VP8Status() to make things clearer
399273c973e6 * strengthen riff/chunk size checks * don't consider odd-sized chunks being an error
39931dc4611a add support for PNG output (default) regularize include guards
3994860641df fix a typo: sizeof(kYModeProbaInter0) => sizeof(kUVModeProbaInter0)
39953254fc52 fix some petty constness fix the ./configure file too
3996504d3393 fix eof_ mis-initialization
39972bc0778f leftover Makefile.* from previous commit
3998d2cf04e4 move Makefile.am one level below, to src/dec fix typos here and there dwebp is now an installed program
3999ade92de8 typo: vp8.h -> decode_vp8.h
4000d7241241 forgot to declare types.h to be installed
40016421a7a4 move the decoder sourcetree to a sub-location src/dec to make room for future libs sources
4002a9b3eab6 correct layout name is IMC4.
40032330522c handle corner case of zero-dimensions
4004280c3658 make VP8Init() handle short buffers (< 2 bytes) correctly
4005b1c9e8b4 handle error cases more robustly
40060e94935c Merge "table-less version of clip_8b()"
40071e0a2d25 table-less version of clip_8b()
4008e12109ee dwebp: change -yuv option to -raw change the layout to IMC2
4009d72180a4 speed-up fancy upscaler
40109145f3bc reset eof_ at construction time
4011a7ee0559 simplify the logic of GetCoeffs()
4012f67b5939 lot of cosmetics
4013ea27d7c6 fix endian problem on PowerPC
4014beb0a1ba fix signature of VP8StoreBlock
4015b128c5e2 Merge "fancy chroma upscaling"
40166a37a2aa fancy chroma upscaling
4017ff565edc fix two numeric typos
40185a936a0a use uintptr_t for casting pointers to ints
4019e14a0301 for cross_compiling=yes to prevent executing any binary
402083b545ee add vc9+ makefile
4021296f6914 fix output loop for small height
4022cbfbb5c3 convert to plain-C
4023f09f96ee Fix declaration after statement warning
40245981ee55 Fix UV plane ac/dc quantizer transposition
4025c8d15efa convert to ANSI-C
4026c3f41cb4 Initial commit
4027