xref: /aosp_15_r20/external/webp/ChangeLog (revision b2055c353e87c8814eb2b6b1b11112a1562253bd)
18a6a55bb update NEWS
2cf7c5a5d provide a way to opt-out/override WEBP_NODISCARD
3cc34288a update ChangeLog (tag: v1.4.0-rc1)
4f13c0886 NEWS: fix date
574555950 Merge "vwebp: fix window title when options are given" into 1.4.0
6d781646c vwebp: fix window title when options are given
7c2e394de update NEWS
8f6d15cb7 bump version to 1.4.0
957c388b8 update AUTHORS
10b3d1b2cb Merge changes I26f4aa22,I83386b6c,I320ed1a2 into main
1107216886 webp-container-spec: fix VP8 chunk ref ('VP8'->'VP8 ')
12f88666eb webp_js/*.html: fix canvas mapping
13e2c8f233 cmake,wasm: simplify SDL2 related flags
14d537cd37 cmake: fix vwebp_sdl compile w/libsdl-org release
156c484cbf CMakeLists.txt: add missing WEBP_BUILD_EXTRAS check
167b0bc235 man/cwebp.1: add more detail to -partition_limit
173c0011bb WebPMuxGetChunk: add an assert
18955a3d14 Merge "muxread,MuxGet: add an assert" into main
1900abc000 muxread,MuxGet: add an assert
2040e85a0b Have the window title reflect the filename.
211bf46358 man/cwebp.1: clarify -pass > 1 behavior w/o -size/-psnr
22eba03acb webp-container-spec: replace 'above' with 'earlier'
23a16d30cb webp-container-spec: clarify chunk order requirements
248a7e9112 Merge "CMakeLists.txt: apply cmake-format" into main
257fac6c1b Merge "Copy C code to not have multiplication overflow" into main
26e2922e43 Merge "Check for the presence of the ANDROID_ABI variable" into main
27501d9274 Copy C code to not have multiplication overflow
28fba7d62e CMakeLists.txt: apply cmake-format
29661c1b66 Merge "windows exports: use dllexport attribute, instead of visibility." into main
308487860a windows exports: use dllexport attribute, instead of visibility.
318ea678b9 webp/mux.h: data lifetime note w/copy_data=0
3279e05c7f Check for the presence of the ANDROID_ABI variable
3345f995a3 Expose functions for managing non-image chunks on WebPAnimEncoder
341fb9f3dc gifdec: fix ErrorGIFNotAvailable() declaration
354723db65 cosmetics: s/SANITY_CHECK/DCHECK/
36f4b9bc9e clear -Wextra-semi-stmt warnings
37713982b8 Limit animdecoder_fuzzer to 320MB
38cbe825e4 cmake: fix sharpyuv simd files' build
39f99305e9 Makefile.vc: add ARM64 support
405efd6300 mv SharpYuvEstimate420Risk to extras/
41e78e924f Makefile.vc: add sharpyuv_risk_table.obj
42d7a0506d Add YUV420 riskiness metric.
4389c5b917 Merge "BuildHuffmanTable check sorted[] array bounds before writing" into main
4434c80749 Remove alpha encoding pessimization.
4513d9c30b Add a WEBP_NODISCARD
4624d7f9cb Switch code to SDL2.
470b56dedc BuildHuffmanTable check sorted[] array bounds before writing
48a429c0de sharpyuv: convert some for() to do/while
49f0cd7861 DoSharpArgbToYuv: remove constant from loop
50339231cc SharpYuvConvertWithOptions,cosmetics: fix formatting
51307071f1 Remove medium/large code model-specific inline asm
52deadc339 Fix transfer functions where toGamma and toLinear are swapped.
53e7b78d43 Merge "Fix bug in FromLinearLog100." into main
5415a1309e Merge "webp-lossless-bitstream-spec: delete extra blank line" into main
5554ca9752 Fix bug in FromLinearLog100.
56d2cb2d8c Dereference after NULL check.
57e9d50107 webp-lossless-bitstream-spec: delete extra blank line
5878657971 Merge changes Ief442c90,Ie6e9c9a5 into main
59e30a5884 webp-lossless-bitstream-spec: update variable names
6009ca1368 Merge "webp-container-spec: change assert to MUST be TRUE" into main
6138cb4fc0 iosbuild,xcframeworkbuild: add SharpYuv framework
6240afa926 webp-lossless-bitstream-spec: simplify abstract
639db21143 webp-container-spec: change assert to MUST be TRUE
64cdbf88ae Fix typo in API docs for incremental decoding
6505c46984 Reformat vcpkg build instructions.
668534f539 Merge "Never send VP8_STATUS_SUSPENDED back in non-incremental." into main
6735e197bd Never send VP8_STATUS_SUSPENDED back in non-incremental.
6861441425 Add vcpkg installation instructions
69dce8397f Fix next is invalid pointer when WebPSafeMalloc fails
7057c58105 Cmake: wrong public macro WEBP_INCLUDE_DIRS
71c1ffd9ac Merge "vp8l_enc: fix non-C90 code" into main
72a3965948 Merge changes If628bb93,Ic79f6309,I45f0db23 into main
73f80e9b7e vp8l_enc: fix non-C90 code
74accd141d Update lossless spec for two simple codes.
75ac17ffff Fix non-C90 code.
76433c7dca Fix static analyzer warnings.
775fac76cf Merge tag 'v1.3.2'
78ca332209 update ChangeLog (tag: v1.3.2)
791ace578c update NEWS
8063234c42 bump version to 1.3.2
81a35ea50d Add a fuzzer for ReadHuffmanCodes
8295ea5226 Fix invalid incremental decoding check.
832af26267 Fix OOB write in BuildHuffmanTable.
84902bc919 Fix OOB write in BuildHuffmanTable.
857ba44f80 Homogenize "__asm__ volatile" vs "asm volatile"
8668e27135 webp-container-spec: reorder example chunk layout
87943b932a Merge changes I6a4d0a04,Ibc37b91e into main
881cc94f95 decode.h: wrap idec example in /* */
8963acdd1e decode.h: fix decode example
90aac5c5d0 ReadHuffmanCode: rm redundant num code lengths check
91a2de25f6 webp-lossless-bitstream-spec: normalize list item case
9268820f0e webp-lossless-bitstream-spec: normalize pixel ref
93cdb31aa8 webp-lossless-bitstream-spec: add missing periods
940535a8cf webp-lossless-bitstream-spec: fix grammar
95b6c4ce26 normalize numbered list item format
96dd7364c3 Merge "palette.c: fix msvc warnings" into main
97c63c5df6 palette.c: fix msvc warnings
980a2cad51 webp-container-spec: move terms from intro section
99dd88d2ff webp-lossless-bitstream-spec: color_cache -> color cache
1006e750547 Merge changes I644d7d39,Icf05491e,Ic02e6652,I63b11258 into main
10167a7cc2b webp-lossless-bitstream-spec: fix code blocks
1021432ebba Refactor palette sorting computation.
103cd436142 webp-lossless-bitstream-spec: block -> chunk
1043cb66f64 webp-lossless-bitstream-spec: add some missing commas
10556471a53 webp-lossless-bitstream-spec: normalize item text in 5.1
106af7fbfd2 vp8l_dec,ReadTransform: improve error status reporting
1077d8e0896 vp8l_dec: add VP8LSetError()
108a71ce1cf animencoder_fuzzer: fix error check w/Nallocfuzz
109e94b36d6 webp-lossless-bitstream-spec: relocate details from 5.1
11084628e56 webp-lossless-bitstream-spec: clarify image width changes
111ee722997 alpha_dec: add missing VP8SetError()
1120081693d enc_dec_fuzzer: use WebPDecode()
1130fcb311c enc_dec_fuzzer: fix WebPEncode/pic.error_code check
114982c177c webp-lossless-bitstream-spec: fix struct member refs
11556cf5625 webp-lossless-bitstream-spec: use RFC 7405 for ABNF
1166c6b3fd3 webp-lossless-bitstream-spec,cosmetics: delete blank lines
11729b9eb15 Merge changes Id56ca4fd,I662bd1d7 into main
11847c0af8d ReadHuffmanCodes: rm max_alphabet_size calc
119b92deba3 animencoder_fuzzer: no WebPAnimEncoderAssemble check w/nallocfuzz
1206be9bf8b animencoder_fuzzer: fix leak on alloc failure
1215c965e55 vp8l_dec,cosmetics: add some /*param=*/ comments
122e4fc2f78 webp-lossless-bitstream-spec: add validity note for max_symbol
12371916726 webp-lossless-bitstream-spec: fix max_symbol definition
124eac3bd5c Have the palette code be in its own file.
125e2c85878 Add an initializer for the SharpYuvOptions struct.
1264222b006 Merge tag 'v1.3.1'
12725d94f47 Implement more transfer functions in libsharpyuv
1282153a679 Merge changes Id0300937,I5dba5ccf,I57bb68e0,I2dba7b4e,I172aca36, ... into main
1294298e976 webp-lossless-bitstream-spec: add PredictorTransformOutput
130cd7e02be webp-lossless-bitstream-spec: fix RIFF-header ABNF
1316c3845f9 webp-lossless-bitstream-spec: split LZ77 Backward Ref section
1327f1b6799 webp-lossless-bitstream-spec: split Meta Prefix Codes section
1337b634d8f webp-lossless-bitstream-spec: note transform order
1346d6d4915 webp-lossless-bitstream-spec: update transformations text
135fd7bb21c update ChangeLog (tag: v1.3.1-rc2, tag: v1.3.1)
136e1adea50 update NEWS
1376b1c722a lossless_common.h,cosmetics: fix a typo
13808d60d60 webp-lossless-bitstream-spec: split code length section
1397a12afcc webp-lossless-bitstream-spec: rm unused anchor
14043393320 enc/*: normalize WebPEncodingSetError() calls
141287fdefe enc/*: add missing WebPEncodingSetError() calls
142c3bd7cff EncodeAlphaInternal: add missing error check
14314a9dbfb webp-lossless-bitstream-spec: refine single node text
14464819c7c Implement ExtractGreen_SSE2
145d49cfbb3 vp8l_enc,WriteImage: add missing error check
1462e5a9ec3 muxread,MuxImageParse: add missing error checks
147ebb6f949 cmake,emscripten: explicitly set stack size
14859a2b1f9 WebPDecodeYUV: check u/v/stride/uv_stride ptrs
1498e965ccb Call png_get_channels() to see if image has alpha
150fe80fbbd webp-container-spec: add some missing commas
151e8ed3176 Merge "treat FILTER_NONE as a regular Unfilter[] call" into main
15203a7a048 webp-lossless-bitstream-spec: rm redundant statement
153c437c7aa webp-lossless-bitstream-spec: mv up prefix code group def
154e4f17a31 webp-lossless-bitstream-spec: fix section reference
155e2ecd5e9 webp-lossless-bitstream-spec: clarify ABNF syntax
1568b55425a webp-lossless-bitstream-spec: refine pixel copy text
15729c9f2d4 webp-lossless-bitstream-spec: minor wording updates
1586b02f660 treat FILTER_NONE as a regular Unfilter[] call
1597f75c91c webp-container-spec: fix location of informative msg
160f6499943 webp-container-spec: consistently quote FourCCs
16149918af3 webp-container-spec: minor wording updates
1627f0a3419 update ChangeLog (tag: v1.3.1-rc1)
163bab7efbe update NEWS
1647138bf8f bump version to 1.3.1
165435b4ded update AUTHORS
16647351229 update .mailmap
16746bc4fc9 Merge "Switch ExtraCost to ints and implement it in SSE." into main
168828b4ce0 Switch ExtraCost to ints and implement it in SSE.
169ff6c7f4e CONTRIBUTING.md: add C style / cmake-format notes
170dd530437 add .cmake-format.py
171adbe2cb1 cmake,cosmetics: apply cmake-format
17215b36508 doc/webp-container-spec: rm future codec comment
173c369c4bf doc/webp-lossless-bitstream-spec: improve link text
1741de35f47 doc/webp-container-spec: don't use 'currently'
175bb06a16e doc/webp-container-spec: prefer present tense
1769f38b71e doc/webp-lossless-bitstream-spec: prefer present tense
1777acb6b82 doc/webp-container-spec: avoid i.e. & e.g.
1784967e7cd doc/webp-lossless-bitstream-spec: avoid i.e. & e.g.
179e3366659 Merge "Do not find_package image libraries if not needed." into main
180428588ef clarify single leaf node trees and use of canonical prefix coding
181709ec152 Do not find_package image libraries if not needed.
1828dd80ef8 fuzz_utils.h: lower kFuzzPxLimit w/ASan
1838f187b9f Clean message calls in CMake
184cba30078 WebPConfig.cmake.in: use calculated include path
1856cf9a76a Merge "webp-lossless-bitstream-spec: remove use of 'dynamics'" into main
186740943b2 Merge "Specialize and optimize ITransform_SSE2 using do_two" into main
1872d547e24 Compare kFuzzPxLimit to max_num_operations
188ac42dde1 Specialize and optimize ITransform_SSE2 using do_two
18917e0ef1d webp-lossless-bitstream-spec: remove use of 'dynamics'
190ed274371 neon.h,cosmetics: clear a couple lint warnings
1913fb82947 cpu.h,cosmetics: segment defines
1920c496a4f cpu.h: add WEBP_AARCH64
1938151f388 move VP8GetCPUInfo declaration to cpu.c
194916548c2 Make kFuzzPxLimit sanitizer dependent
1954070b271 advanced_api_fuzzer: reduce scaling limit
196761f49c3 Merge "webp-lossless-bitstream-spec: add missing bits to ABNF" into main
19784d04c48 webp-lossless-bitstream-spec: add missing bits to ABNF
1980696e1a7 advanced_api_fuzzer: reduce scaling limit
19993d88aa2 Merge "deps.cmake: remove unneeded header checks" into main
200118e0035 deps.cmake: remove unneeded header checks
2014c3d7018 webp-lossless-bitstream-spec: condense normal-prefix-code
202a6a09b32 webp-lossless-bitstream-spec: fix 2 code typos
20350ac4f7c Merge "cpu.h: enable NEON w/_M_ARM64EC" into main
2044b7d7b4f Add contribution instructions
2050afbd97b cpu.h: enable NEON w/_M_ARM64EC
206349f4353 Merge changes Ibd89e56b,Ic57e7f84,I89096614 into main
2078f7513b7 upsampling_neon.c: fix WEBP_SWAP_16BIT_CSP check
208cbf624b5 advanced_api_fuzzer: reduce scaling limit
20989edfdd1 Skip slow scaling in libwebp advanced_api_fuzzer
210859f19f7 Reduce libwebp advanced_api_fuzzer threshold
211a4f04835 Merge changes Ic389aaa2,I329ccd79 into main
2121275fac8 Makefile.vc: fix img2webp link w/dynamic cfg
2132fe27bb9 img2webp: normalize help output
21424bed3d9 cwebp: reflow -near_lossless help text
2150825faa4 img2webp: add -sharp_yuv/-near_lossless
216d64e6d7d Merge "PaletteSortModifiedZeng: fix leak on error" into main
2170e12a22d Merge "EncodeAlphaInternal: clear result->bw on error" into main
2180edbb6ea PaletteSortModifiedZeng: fix leak on error
21941ffe04e Merge "Update yapf style from "chromium" to "yapf"" into main
2202d9d9265 Update yapf style from "chromium" to "yapf"
221a486d800 EncodeAlphaInternal: clear result->bw on error
2221347a32d Skip big scaled advanced_api_fuzzer
22352b6f067 Fix scaling limit in advanced_api_fuzzer.c
22473618428 Limit scaling in libwebp advanced_api_fuzzer.c
225b54d21a0 Merge "CMakeLists.txt: allow CMAKE_INSTALL_RPATH to be set empty" into main
22631c28db5 libwebp{,demux,mux}.pc.in: Requires -> Requires.private
227d9a505ff CMakeLists.txt: allow CMAKE_INSTALL_RPATH to be set empty
228bdf33d03 Merge tag 'v1.3.0'
229b5577769 update ChangeLog (tag: v1.3.0-rc1, tag: v1.3.0)
2300ba77244 update NEWS
231e763eb1e bump version to 1.3.0
2322a8686fc update AUTHORS
233106a57c1 Merge "*/Android.mk: add a check for NDK_ROOT" into main
234c5e841c4 Merge "extras: WebpToSDL -> WebPToSDL" into main
235dbc30715 Merge "xcframeworkbuild.sh: bump MACOSX_CATALYST_MIN_VERSION" into main
2366fc1a9f9 */Android.mk: add a check for NDK_ROOT
237d3e151fc doc/api.md,webp_js/README.md: Webp -> WebP
238ed92a626 extras: WebpToSDL -> WebPToSDL
2396eb0189b xcframeworkbuild.sh: bump MACOSX_CATALYST_MIN_VERSION
2401d58575b CMake: align .pc variables with autoconf
241e5fe2cfc webp-lossless-bitstream-spec,cosmetics: reflow paragraphs
2420ceeeab9 webp-lossless-bitstream-spec: add amendment note
243607611cd Merge "webp-container-spec: normalize section title case" into main
244f853685e lossless: SUBTRACT_GREEN -> SUBTRACT_GREEN_TRANSFORM
245786497e4 webp-lossless-bitstream-spec: fix inv color txfm description
246c6ac672d webp-lossless-bitstream-spec: fix num_code_lengths check
247b5700efb webp-lossless-bitstream-spec,cosmetics: grammar/capitalization
248d8ed8c11 webp-container-spec: normalize section title case
24952ec0b8f Merge changes Ie975dbb5,Ifc8c93af,I6ca7c5d6,I2e8d66f5,I152477b8 into main
2505097ef62 webp-container-spec,cosmetics: grammar/capitalization
251e3ba2b1f webp-lossless-bitstream-spec,cosmetics: reflow abstract
2521e8e3ded webp-lossless-bitstream-spec: reword abstract re alpha
253017cb6fa webp-container-spec,cosmetics: normalize range syntax
254f6a4684b webp-lossless-bitstream-spec,cosmetics: normalize range syntax
25554ebd5a3 webp-lossless-bitstream-spec: limit dist map lut to 69 cols
25644741f9c webp-lossless-bitstream-spec: fix dist mapping example
257fad0ece7 pnmdec.c: use snprintf instead of sprintf
2583f73e8f7 sharpyuv: add SharpYuvGetVersion()
259ce2f2d66 SharpYuvConvert: fix a race on SharpYuvGetCPUInfo
260a458e308 sharpyuv_dsp.h: restore sharpyuv_cpu.h include
2619ba800a7 Merge changes Id72fbf3b,Ic59d23a2 into main
262979c0ebb sharpyuv: add SharpYuvGetCPUInfo
2638bab09a4 Merge "*.pc.in: rename lib_prefix to webp_libname_prefix" into main
264769387c5 cpu.c,cosmetics: fix a typo
265a02978c2 sharpyuv/Makefile.am+cmake: add missing -lm
26628aedcb9 *.pc.in: rename lib_prefix to webp_libname_prefix
267c42e6d5a configure.ac: export an empty lib_prefix variable
268dfc843aa Merge "*.pc.in: add lib prefix to lib names w/MSVC" into main
2692498209b *.pc.in: add lib prefix to lib names w/MSVC
270ac252b61 Merge "analysis_enc.c: fix a dead store warning" into main
27156944762 analysis_enc.c: fix a dead store warning
272d34f9b99 Merge "webp-lossless-bitstream-spec: convert BNF to ABNF" into main
273dc05b4db Merge changes I96bc063c,I45880467,If9e18e5a,I6ee938e4,I0a410b28, ... into main
27483270c7f webp-container-spec: add prose for rendering process
27573b19b64 webp-container-spec: note reserved fields MUST be ignored
27657101d3f webp-lossless-bitstream-spec: improve 'small' color table stmt
277dfd32e45 webp-container-spec: remove redundant sentence
2788a6185dd doc/webp-*: fix some punctuation, grammar
27972776530 webp-lossless-bitstream-spec: convert BNF to ABNF
280d992bb08 cmake: rename cpufeatures target to cpufeatures-webp
2813ed2b275 webp-container-spec: clarify background color note
282951c292d webp-container-spec: come too late -> out of order
283902dd787 webp-container-spec: prefer hex literals
284a8f6b5ee webp-container-spec: change SHOULD to MUST w/ANIM chunk
2851dc59435 webp-container-spec: add unknown fields MUST be ignored
286280a810f webp-container-spec: make padding byte=0 a MUST
28741f0bf68 webp-container-spec: update note on trailing data
2886bdd36db webp-container-spec: clarify Chunk Size is in bytes
28987e36c48 Merge "webp_js/README.md,cosmetics: reflow some lines" into main
2905b01f321 Merge "Update Windows makefile to build libsharpyuv library." into main
29119b1a71c webp_js/README.md,cosmetics: reflow some lines
292780db756 Update Windows makefile to build libsharpyuv library.
293e407d4b3 CMakeLists.txt: replace GLUT_glut_LIBRARY w/GLUT::GLUT
294abf73d62 Merge "WebPConfig.cmake.in: add find_dependency(Threads)" into main
29525807fb4 Merge "cmake: restore compatibility with cmake < 3.12" into main
2965dbc4bfa WebPConfig.cmake.in: add find_dependency(Threads)
297b2a175dd Merge "Update wasm instructions." into main
298cb90f76b Update wasm instructions.
29902d15258 cmake: restore compatibility with cmake < 3.12
3005ba046e2 CMake: add_definitions -> add_compile_options
301e68765af dsp,neon: use vaddv in a few more places
302e8f83de2 Set libsharpyuv include dir to 'webp' subdirectory.
30315a91ab1 cmake,cosmetics: apply cmake-format
3040dd49d1a CMakeLists.txt: set @ONLY in configure_file() calls
30562b1bfe8 Merge changes I2877e7bb,I777cad70,I15af7d1a,I686e6740,If10538a9, ... into main
30695c8fe5f Merge changes Iecea3603,I9dc228ab into main
307e7c805cf picture_csp_enc.c: remove SafeInitSharpYuv
3086af8845a sharpyuv: prefer webp/types.h
309639619ce cmake: fix dll exports
310782ed48c sharpyuv,SharpYuvInit: add mutex protection when available
311cad0d5ad sharyuv_{neon,sse2}.c: merge WEBP_USE_* sections
312ef70ee06 add a few missing <stddef.h> includes for NULL
313f0f9eda4 sharpyuv.h: remove <inttypes.h>
3149b902cba Merge "picture_csp_enc.c,CheckNonOpaque: rm unneeded local" into main
3159c1d457c cmake/cpu.cmake: remove unused variable
3169ac25bcb CMakeLists.txt,win32: match naming convention used by nmake
31776c353ba picture_csp_enc.c,CheckNonOpaque: rm unneeded local
3185000de54 Merge "cwebp: fix WebPPictureHasTransparency call" into main
319e1729309 Merge "WebPPictureHasTransparency: add missing pointer check" into main
32000ff988a vp8l_enc,AddSingleSubGreen: clear int sanitizer warnings
321e2fecc22 dsp/lossless_enc.c: clear int sanitizer warnings
322129cf9e9 dsp/lossless.c: clear int sanitizer warnings
323ad7d1753 dsp/lossless_enc.c: clear int sanitizer warnings
3245037220e VP8LSubtractGreenFromBlueAndRed_C: clear int sanitizer warnings
3252ee786c7 upsampling_sse2.c: clear int sanitizer warnings
3264cc157d4 ParseOptionalChunks: clear int sanitizer warning
327892cf033 BuildHuffmanTable: clear int sanitizer warning
3283a9a4d45 VP8GetSigned: clear int sanitizer warnings
329704a3d0a dsp/lossless.c: quiet int sanitizer warnings
3301a6c109c WebPPictureHasTransparency: add missing pointer check
331c626e7d5 cwebp: fix WebPPictureHasTransparency call
332866e349c Merge tag 'v1.2.4'
333c170df38 Merge "Create libsharpyuv.a in makefile.unix." into main
3349d7ff74a Create libsharpyuv.a in makefile.unix.
3350d1f1254 update ChangeLog (tag: v1.2.4)
336fcbc2d78 Merge "doc/*.txt: restrict code to 69 columns" into main
3374ad0e189 Merge "webp-container-spec.txt: normalize fourcc spelling" into main
338980d2488 update NEWS
3399fde8127 bump version to 1.2.4
3407a0a9935 doc/*.txt: restrict code to 69 columns
341c040a615 webp-container-spec.txt: normalize fourcc spelling
342aff1c546 dsp,x86: normalize types w/_mm_cvtsi128_si32 calls
343ab540ae0 dsp,x86: normalize types w/_mm_cvtsi32_si128 calls
3448980362e dsp,x86: normalize types w/_mm_set* calls (2)
345e626925c lossless: fix crunch mode w/WEBP_REDUCE_SIZE
34683539239 dsp,x86: normalize types w/_mm_set* calls
3478a4576ce webp-container-spec.txt: replace &amp; with &
348db870881 Merge "webp-container-spec.txt: make reserved 0 values a MUST" into main
34901d7d378 webp-lossless-bitstream-spec: number all sections
350337cf69f webp-lossless-bitstream-spec: mv Nomenclature after Intro
35179be856e Merge changes I7111d1f7,I872cd62c into main
3525b87983a webp-container-spec.txt: make reserved 0 values a MUST
353bd939123 Merge changes I7a25b1a6,I51b2c2a0,I87d0cbcf,I6ec60af6,I0a3fe9dc into main
35404764b56 libwebp.pc: add libsharpyuv to requires
3557deee810 libsharpyuv: add pkg-config file
3561a64a7e6 webp-container-spec.txt: clarify some SHOULDs
357bec2c88a webp-container-spec.txt: move ChunkHeader to terminology
358c9359332 webp-container-spec.txt: clarify 'VP8 '/'XMP ' fourccs
35970fe3063 webp-container-spec.txt: rightsize table entries
360ddbf3f3f webp-container-spec.txt: update 'key words' text
361c151e95b utils.h,WEBP_ALIGN: make bitmask unsigned
362748e92bb add WebPInt32ToMem
3633fe15b67 Merge "Build libsharpyuv as a full installable library." into main
3644f402f34 add WebPMemToInt32
365a3b68c19 Build libsharpyuv as a full installable library.
366b4994eaa CMake: set rpath for shared objects
36794cd7117 Merge "CMake: fix dylib versioning" into main
368e91451b6 Fix the lossless specs a bit more.
369231bdfb7 CMake: fix dylib versioning
370bfad7ab5 CMakeLists.txt: correct libwebpmux name in WebPConfig.cmake
371c2e3fd30 Revert "cmake: fix webpmux lib name for cmake linking"
3727366f7f3 Merge "lossless: fix crunch mode w/WEBP_REDUCE_SIZE" into main
37384163d9d lossless: fix crunch mode w/WEBP_REDUCE_SIZE
374d01c1eb3 webp-lossless-bitstream-spec,cosmetics: normalize capitalization
3758813ca8e Merge tag 'v1.2.3'
3763c4a0fbf update ChangeLog (tag: v1.2.3)
37756a480e8 dsp/cpu.h: add missing extern "C"
37862b45bdd update ChangeLog (tag: v1.2.3-rc1)
3798764ec7a Merge changes Idb037953,Id582e395 into 1.2.3
380bcb872c3 vwebp: fix file name display in windows unicode build
38167c44ac5 webpmux: fix -frame option in windows unicode build
3828278825a makefile.unix: add sharpyuv objects to clean target
38314a49e01 update NEWS
38434b1dc33 bump version to 1.2.3
3850b397fda update AUTHORS
386c16488ac update .mailmap
3875a2d929c Merge "unicode.h: set console mode before using wprintf" into main
388169f867f unicode.h: set console mode before using wprintf
389a94b855c Merge "libsharpyuv: add version defines" into main
390f83bdb52 libsharpyuv: add version defines
391bef0d797 unicode_gif.h: fix -Wdeclaration-after-statement
392404c1622 Rename Huffman coding to prefix coding in the bitstream spec
3938895f8a3 Merge "run_static_analysis.sh: fix scan-build archive path" into main
39492a673d2 Merge "Add -fvisibility=hidden flag in CMakeLists." into main
39567c1d722 Merge "add WEBP_MSAN" into main
3961124ff66 Add -fvisibility=hidden flag in CMakeLists.
397e15b3560 add WEBP_MSAN
398ec9e782a sharpyuv: remove minimum image size from sharpyuv library
3997bd07f3b run_static_analysis.sh: fix scan-build archive path
4005ecee06f Merge "sharpyuv: increase precision of gamma<->linear conversion" into main
401f81dd7d6 Merge changes I3d17d529,I53026880,I1bd61639,I6bd4b25d,Icfec8fba into main
4022d607ee6 sharpyuv: increase precision of gamma<->linear conversion
403266cbbc5 sharpyuv: add 32bit version of SharpYuvFilterRow.
4049fc12274 CMake: add src to webpinfo includes
4057d18f40a CMake: add WEBP_BUILD_WEBPINFO to list of checks for exampleutil
40611309aa5 CMake: add WEBP_BUILD_WEBPMUX to list of checks for exampleutil
4074bc762f7 CMake: link imageioutil to exampleutil after defined
4080d1b9bc4 WEBP_DEP_LIBRARIES: use Threads::Threads
40920ef48f0 Merge "sharpyuv: add support for 10/12/16 bit rgb and 10/12 bit yuv." into main
41093c54371 sharpyuv: add support for 10/12/16 bit rgb and 10/12 bit yuv.
41153cf2b49 normalize WebPValidatePicture declaration w/definition
412d3006f4b sharpyuv: slightly improve precision
413ea967098 Merge changes Ia01bd397,Ibf3771af into main
41411bc8410 Merge changes I2d317c4b,I9e77f6db into main
41530453ea4 Add an internal WebPValidatePicture.
4166c43219a Some renamings for consistency.
4174f59fa73 update .mailmap
418e74f8a62 webp-lossless-bitstream-spec,cosmetics: normalize range syntax
4195a709ec0 webp-lossless-bitstream-spec,cosmetics: fix code typo
420a2093acc webp-lossless-bitstream-spec: add amendment note
42186c66930 webp-lossless-bitstream-spec: fix BNF
422232f22da webp-lossless-bitstream-spec: fix 'simple code' snippet
42344dd765d webp-lossless-bitstream-spec: fix ColorTransform impl
4247a7e33e9 webp-lossless-bitstream-spec: fix TR-pixel right border note
42586f94ee0 Update lossless spec with Huffman codes.
426a3927cc8 sharpyuv.c,cosmetics: fix indent
4276c45cef7 Make sure the stride has a minimum value in the importer.
4280c8b0e67 sharpyuv: cleanup/cosmetic changes
429dc3841e0 {histogram,predictor}_enc: quiet int -> float warnings
430a19a25bb Replace doubles by floats in lossless misc cost estimations.
43142888f6c Add an option to enable static builds.
4327efcf3cc Merge "Fix typo in color constants: Marix -> Matrix" into main
4338f4b5c62 Fix typo in color constants: Marix -> Matrix
43490084d84 Merge "demux,IsValidExtendedFormat: remove unused variable" into main
435ed643f61 Merge changes I452d2485,Ic6d75475 into main
4368fa053d1 Rename SharpYUV to SharpYuv for consistency.
43799a87562 SharpYuvComputeConversionMatrix: quiet int->float warnings
438deb426be Makefile.vc: add sharpyuv_csp.obj to SHARPYUV_OBJS
439779597d4 demux,IsValidExtendedFormat: remove unused variable
44040e8aa57 Merge "libsharpyuv: add colorspace utilities" into main
44101a05de1 libsharpyuv: add colorspace utilities
4422de4b05a Merge changes Id9890a60,I376d81e6,I1c958838 into main
443b8bca81f Merge "configure.ac: use LT_INIT if available" into main
444e8e77b9c Merge changes I479bc487,I39864691,I5d486c2c,I186d13be into main
4457e7d5d50 Merge ".gitignore: add Android Studio & VS code dirs" into main
44610c50848 normalize label indent
44789f774e6 mux{edit,internal}: fix leaks on error
4482d3293ad ExUtilInitCommandLineArguments: fix leak on error
449ec34fd70 anim_util: fix leaks on error
450e4717287 gif2webp: fix segfault on OOM
451e3cfafaf GetBackwardReferences: fail on alloc error
452a828a59b BackwardReferencesHashChainDistanceOnly: fix segfault on OOM
453fe153fae VP8LEncodeStream: fix segfault on OOM
454919acc0e .gitignore: add Android Studio & VS code dirs
455efa0731b configure.ac: use LT_INIT if available
4560957fd69 tiffdec: add grayscale support
457e685feef Merge "Make libsharpyuv self-contained by removing dependency on cpu.c" into main
458841960b6 Make libsharpyuv self-contained by removing dependency on cpu.c
459617cf036 image_dec: add WebPGetEnabledInputFileFormats()
4607a68afaa Let SharpArgbToYuv caller pass in an RGB>YUV conversion matrix.
46134bb332c man/cwebp.1: add note about crop/resize order
462f0e9351c webp-lossless-bitstream-spec,cosmetics: fix some typos
4635ccbd6ed vp8l_dec.c,cosmetics: fix a few typos
464c3d0c2d7 fix ios build scripts after sharpyuv dep added
465d0d2292e Merge "Make libwebp depend on libsharpyuv." into main
46603d12190 alpha_processing_neon.c: fix 0x01... typo
467d55d447c Make libwebp depend on libsharpyuv.
468e4cbcdd2 Fix lossless encoding for MIPS.
469924e7ca6 alpha_processing_neon.c: fix Dispatch/ExtractAlpha_NEON
4700fa0ea54 Makefile.vc: use /MANIFEST:EMBED
47129cc95ce Basic version of libsharpyuv in libwebp, in C.
472a30f2190 examples/webpmux.c: fix a couple of typos
47366b3ce23 Fix bad overflow check in ReadTIFF()
47454e61a38 Markdownify libwebp docs and reorganize them.
475b4533deb CMakeLists.txt,cosmetics: break long line
476b9d2f9cd quant_enc.c: use WEBP_RESTRICT qualifier
477ec178f2c Add progress hook granularity in lossless
47826139c73 Rename MAX_COST to MAX_BIT_COST in histogram_enc.c
47913b82816 cmake: fix webpmux lib name for cmake linking
48088b6a396 webp-container-spec.txt,cosmetics: normalize formatting
4816f496540 Merge tag 'v1.2.2'
4824074acf8 dsp.h: bump msvc arm64 version requirement to 16.6
483b0a86089 update ChangeLog (tag: v1.2.2)
4846db8248c libwebp: Fix VP8EncTokenLoop() progress
485827a307f BMP enc: fix the transparency case
486db25f1b4 libwebp: Fix VP8EncTokenLoop() progress
487286e7fce libwebp: do not destroy jpeg codec twice on error
4886e8a4126 libwebp: do not destroy jpeg codec twice on error
489faf21968 Merge "BMP enc: fix the transparency case" into main
490480cd51d BMP enc: fix the transparency case
4919195ea05 update ChangeLog (tag: v1.2.2-rc2)
4924acae017 update NEWS
493883f0633 man/img2webp.1: update date
494567e1f44 Reword img2webp synopsis command line
4951b0c15db man/img2webp.1: update date
49617bade38 Merge "Reword img2webp synopsis command line" into main
497a80954a1 Reword img2webp synopsis command line
498f084244d anim_decode: fix alpha blending with big-endian
499b217b4ff webpinfo: fix fourcc comparison w/big-endian
500ec497b75 Merge "anim_decode: fix alpha blending with big-endian" into main
501e4886716 anim_decode: fix alpha blending with big-endian
502e3cb052c webpinfo: fix fourcc comparison w/big-endian
503a510fedb patch-check: detect duplicated files
504f035d2e4 update ChangeLog (tag: v1.2.2-rc1)
5057031946a update NEWS
506973390b6 bump version to 1.2.2
507abd6664f update AUTHORS
5085b7e7930 Merge "add missing USE_{MSA,NEON} checks in headers" into main
50902ca04c3 add missing USE_{MSA,NEON} checks in headers
510e94716e2 xcframeworkbuild.sh: place headers in a subdir
511c846efd8 patch-check: commit subject length check
512b6f756e8 update http links
5138f5cb4c1 update rfc links
5148ea81561 change VP8LPredictorFunc signature to avoid reading 'left'
5156b1d18c3 webpmux: fix the -bgcolor description
5163368d876 Merge "webpmux: add "-set bgcolor A,R,G,B"" into main
517f213abf6 webpinfo: print the number of warnings
51850c97c30 webpmux: add "-set bgcolor A,R,G,B"
5192c206aaf Remove CMakeLists.txt check in compile.sh
52096e3dfef Merge "infra/common.sh: add shard_should_run()" into main
5210e0f74b7 infra/common.sh: add shard_should_run()
52235b7436a Jenkins scripts port: update shell function comments
52321d24b4c webp-container-spec.txt: remove 'experimental' markers
524cdcf8902 Merge "Port Jenkins script: compile" into main
525dc683cde Jenkins scripts port: static analysis
5260858494e Port Jenkins script: compile
527c2cf6a93 Jenkins scripts port: android compilation
528df0e808f presubmit: Add pylint-2.7 and .pylintrc
529676c57db patch-check: shfmt
5307bb7f747 patch-check: Add shellcheck
531abcd1797 Reformat docstrings and imports
532edaf0895 Port Jenkins scripts: compile js
533b9622063 Set CheckPatchFormatted flags to fail on diffs
534e23cd548 dsp.h: enable NEON w/VS2019+ ARM64 targets
5353875c7de CMakeLists.txt: set minimum version to 3.7
5361a8f0d45 Have a hard-coded value for memset in TrellisQuantizeBlock.
53793480160 Speed up TrellisQuantizeBlock
53845eaacc9 Convert deprecated uint32 to uint32_t.
53942592af8 webp,cmake: Remove unnecessary include dirs
540e298e05f Add patch-check steps in PRESUBMIT.py
54129148919 Merge tag 'v1.2.1'
5429ce5843d update ChangeLog (tag: v1.2.1)
543d9191588 fuzzer/*: normalize src/ includes
544c5bc3624 fuzzer/*: normalize src/ includes
54553b6f762 fix indent
546d2caaba4 fix indent
547731246ba update ChangeLog (tag: v1.2.1-rc2)
548d250f01d dsp/*: use WEBP_HAVE_* to determine Init availability
5491fe31625 dsp/*: use WEBP_HAVE_* to determine Init availability
5503a4d3ecd update NEWS
551b2bc8093 bump version to 1.2.1
552e542fc7a update AUTHORS
553e0241154 Merge "libwebp/CMake: Add <BUILD_INTERFACE> to webp incl" into main
554edea6444 libwebp/CMake: Add <BUILD_INTERFACE> to webp incl
555ece18e55 dsp.h: respect --disable-sse2/sse4.1/neon
556a89a3230 wicdec: support alpha from WebP WIC decoder
55726f4aa01 Merge "alpha_processing: fix visual studio warnings" into main
5588f594663 alpha_processing: fix visual studio warnings
55946d844e6 Merge "cpu.cmake: fix compiler flag detection w/3.17.0+" into main
560298d26ea Merge changes I593adf92,If20675e7,Ifac68eac into main
561a1e5dae0 alpha_processing*: use WEBP_RESTRICT qualifier
562327ef24f cpu.cmake: fix compiler flag detection w/3.17.0+
563f70819de configure: enable libwebpmux by default
564dc7e2b42 configure: add informational notices when disabling binaries
5659df23ddd configure: move lib flag checks before binaries
566a2e18f10 Merge "WebPConfig.config.in: correct WEBP_INCLUDE_DIRS" into main
567e1a8d4f3 Merge "bit_reader_inl_utils: uniformly apply WEBP_RESTRICT" into main
5684de35f43 rescaler.c: fix alignment
5690f13eec7 bit_reader_inl_utils: uniformly apply WEBP_RESTRICT
570277d3074 Fix size_t overflow in  WebPRescalerInit
57197adbba5 WebPConfig.config.in: correct WEBP_INCLUDE_DIRS
572b60d4603 advanced_api_fuzzer: add extreme config value coverage
57372fe52f6 anim_encode.c,cosmetics: normalize indent
574116d235c anim_encode: Fix encoded_frames_[] overflow
5756f445b3e CMake: set CMP0072 to NEW
576b1cf887f define WEBP_RESTRICT for MSVC
5773e265136 Add WEBP_RESTRICT & use it in VP8BitReader
578f6d29247 vp8l_dec::ProcessRows: fix int overflow in multiply
579de3b4ba8 CMake: add WEBP_BUILD_LIBWEBPMUX
5807f09d3d1 CMakeLists.txt: rm libwebpmux dep from anim_{diff,dump}
5814edea4a6 Init{RGB,YUV}Rescaler: fix a few more int overflows
582c9e26bdb rescaler_utils: set max valid scaled w/h to INT_MAX/2
58328d488e6 utils.h: add SizeOverflow()
584695bdaa2 Export/EmitRescaledRowsRGBA: fix pointer offset int overflow
585685d073e Init{RGB,YUV}Rescaler: fix int overflows in multiplication
586d38bd0dd WebPFlipBuffer: fix integer overflow
587109ff0f1 utils: allow MALLOC_LIMIT to indicate a max
588a2fce867 WebPRescalerImportRowExpand_C: promote some vals before multiply
589776983d4 AllocateBuffer: fix int multiplication overflow check
590315abbd6 Merge "Revert "Do not use a palette for one color images.""
591eae815d0 Merge changes Ica3bbf75,I82f82954
592afbca5a1 Require Emscripten 2.0.18
5933320416b CMakeLists,emscripten: use EXPORTED_RUNTIME_METHODS
59429145ed6 Update README instructions for using Emscripten
5951f579139 cosmetics: remove use of 'sanity' / 'master'
59629b6129c WebPAnimEncoderNewInternal: remove some unnecessary inits
597b60869a1 Revert "Do not use a palette for one color images."
5986fb4cddc demux: move padded size calc post unpadded validation
59905b72d42 vp8l_enc.c: normalize index types
600b6513fba Do not use a palette for one color images.
60198bbe35b Fix multi-threading with palettes.
602b1674240 Add modified Zeng's method to palette sorting.
60388c90c45 add CONTRIBUTING.md
6046a9916d7 WebPRescalerInit: add missing int64_t promotion
605b6cf52d5 WebPIoInitFromOptions: treat use_scaling as a bool
6063b12b7f4 WebPIoInitFromOptions: treat use_cropping as a bool
607595fa13f add WebPCheckCropDimensions()
6088fdaecb0 Disable cross-color when palette is used.
6098933bac2 WebPIoInitFromOptions: respect incoming bypass_filtering val
6107d416ff0 webpdec,cosmetics: match error text to function call
611ec6cfeb5 Fix typo on WebPPictureAlloc() in README
6127e58a1a2 *.cmake: add license header
6135651a6b2 cmake: fix .so versioning
61425ae67b3 xcframeworkbuild.sh: add arm64 simulator target
6155d4ee4c3 cosmetics: remove use of the term 'dummy'
61601b38ee1 faster CollectColorXXXTransforms_SSE41
617652aa344 Merge "Use BitCtz for FastSLog2Slow_C"
6180320e1e3 add the missing default BitsCtz() code
6198886f620 Use BitCtz for FastSLog2Slow_C
620fae41617 faster CombinedShannonEntropy_SSE2
6215bd2704e Introduce the BitCtz() function.
622fee64287 Merge "wicdec,icc: treat unsupported op as non-fatal"
62333ddb894 lossless_sse{2,41}: remove some unneeded includes
624b27ea852 wicdec,icc: treat unsupported op as non-fatal
625b78494a9 Merge "Fix undefined signed shift."
626e79974cd Fix undefined signed shift.
627a8853394 SSE4.1 versions of BGRA to RGB/BGR color-space conversions
628a09a6472 SSE4.1 version of TransformColorInverse
629401da22b Merge "pngdec: check version before using png_get_chunk_malloc_max"
63026907822 pngdec: check version before using png_get_chunk_malloc_max
63106c1e72e Code cleanup
6328f0d41aa Merge changes Id135bbf4,I99e59797
633373eb170 gif2webp: don't store loop-count if there's only 1 frame
634759b9d5a cmake: add WEBP_USE_THREAD option
635926ce921 cmake: don't install binaries from extras/
6369c367bc6 WebPAnimDecoderNewInternal: validate bitstream before alloc
63747f64f6e filters_sse2: import Chromium change
638cc3577e9 fuzzer/*: use src/ based include paths
639004d77ff Merge tag 'v1.2.0'
640fedac6cc update ChangeLog (tag: v1.2.0-rc3, tag: v1.2.0)
641170a8712 Fix check_c_source_compiles with pthread.
642ceddb5fc Fix check_c_source_compiles with pthread.
64385995719 disable CombinedShannonEntropy_SSE2 on x86
644289757fe TiffDec: enforce stricter mem/dimension limit on tiles
6458af7436f Merge "{ios,xcframework}build.sh: make min version(s) more visible" into 1.2.0
646e56c3c5b pngdec: raise memory limit if needed
6478696147d pngdec: raise memory limit if needed
64813b8e9fe {ios,xcframework}build.sh: make min version(s) more visible
649a9225410 animdecoder_fuzzer: fix memory leak
650d6c2285d update gradle to 6.1.1
6518df77fb1 animdecoder_fuzzer: fix memory leak
65252ce6333 update NEWS
65328c49820 bump version to 1.2.0
6547363dff2 webp/encode.h: restore WEBP_ENCODER_ABI_VERSION to v1.1.0
655826aafa5 update AUTHORS
65663258823 animdecoder_fuzzer: validate canvas size
6579eb26381 CMake: remove duplicate "include(GNUInstallDirs)"
6582e7bed79 WebPPicture: clarify the ownership of user-owned data.
659cccf5e33 webpmux: add an '-set loop <value>' option
660c9a3f6a1 Merge changes Ie29f9867,I289c54c4
661319f56f1 iosbuild.sh: sync some aspects of xcframeworkbuild.sh
662e8e8db98 add xcframeworkbuild.sh
663ae545534 dsp.h: allow config.h to override MSVC SIMD autodetection
664fef789f3 Merge "cmake: fix per-file assembly flags"
665fc14fc03 Have C encoding predictors use decoding predictors.
6667656f0b3 README,cosmetics: fix a couple typos
667d2e245ea cmake: disable webp.js if WEBP_ENABLE_SIMD=1
66896099a79 cmake: fix per-file assembly flags
6695abb5582 Merge "cmake: fix compilation w/Xcode generator"
6708484a120 cmake: fix compilation w/Xcode generator
671d7bf01c9 Merge changes Ifcae0f38,Iee2d7401
67236c81ff6 WASM-SIMD: port 2 patches from rreverser@'s tree
673988b02ab Merge "Couple of fixes to allow SIMD on Emscripten"
67426faf770 wicdec: fail with animated images
675ab2d08a8 [cd]webp: document lack of animated webp support
67652273943 Couple of fixes to allow SIMD on Emscripten
6778870ba7f Fix skia bug #10952
6784b3c6953 Detect if StoreFrame read more than anmf_payload_size bytes
67917fd4ba8 webp/decode.h,cosmetics: normalize 'flip' comment
680411d3677 remove some unreachable break statements
6813700ffd7 WebPPictureHasTransparency: remove unreachable return
68283604bf3 {animencoder,enc_dec}_fuzzer: convert some abort()s to returns
683eb44119c Merge changes I8ae09473,I678c8b1e
6849f6055fc fuzz_utils.h: rename max() to Max()
685695788e7 fuzz_utils.h: make functions WEBP_INLINE
686906c1fcd make ImgIoUtilReadFile use WebPMalloc instead of malloc
6878cb7e536 rename demux_api_fuzzer.c -> mux_demux_api_fuzzer.c
688443db47d add animdecoder_fuzzer.cc
68936a6eea3 Merge "import fuzzers from oss-fuzz/chromium"
690ec5f12c1 Makefile.vc: remove deprecated /Gm option
69164425a08 picture_tools_enc: fix windows build warning
692bd94090a import fuzzers from oss-fuzz/chromium
693cf847cba use WEBP_DSP_INIT_FUNC for Init{GammaTables*,GetCoeffs}
69455a080e5 Add WebPReplaceTransparentPixels() in dsp
69584739717 GetBackgroundColorGIF: promote to uint32_t before << 24
696def64e92 cwebp: Fix -print_psnr for near_lossless
697cf2f88b3 Add palette and spatial for q >= 75 and -m 5
698f0110bae Add no-color cache configuration to the cruncher
699749a8b99 Better estimate of the cache cost.
7004f9f00cc Use spatial predictors on top of palette no matter what.
7017658c686 Add spatial prediction on top of palette in cruncher.
702133ff0e3 webp_js: force WASM=0 option explicitly
703e3c259a2 Fix integer overflow in EmitFancyRGB.
704b3ff0bde man/{gif2,img2}webp,webpmux: normalize some wording
705f9b30586 fix ABI breakage introduced by 6a0ff358
7061d58dcfc README.webp_js: update note about emscripten version
70744070266 README.webp_js: s/fastcomp/upstream/
7082565fa8f README.webp_js: update cmake command
70947309ef5 webp: WEBP_OFFSET_PTR()
710687ab00e DC{4,8,16}_NEON: replace vmovl w/vaddl
7111b92fe75 DC16_NEON,aarch64: use vaddlv
71253f3d8cf dec_neon,DC8_NEON: use vaddlv instead of movl+vaddv
71327d08240 Fix integer overflow in WebPAnimDecoderGetNext()
71469776e38 Merge "remove call to MBAnalyzeBestIntra4Mode for method >= 5"
715a99078c1 remove call to MBAnalyzeBestIntra4Mode for method >= 5
71622e404cc CMakeLists.txt: fix set(CACHE) argument order
71771690b52 fix MSVC warning
7186a0ff358 Enc: add a qmin / qmax range for quality factor
7190fa56f30 Merge tag 'v1.1.0'
7206cf504d0 PNM decoding: handle max_value != 255
721d7844e97 update ChangeLog (tag: v1.1.0-rc2, tag: v1.1.0)
7227f006436 Makefile.vc: fix webp_quality.exe link
723cf047e83 Makefile.vc: fix webp_quality.exe link
724c074c653 update NEWS
72530f09551 bump version to 1.1.0
726a76694a1 update AUTHORS
7276e3ef7b3 extras: fix WEBP_SWAP_16BIT_CSP check
72847178dbd extras: add WebPUnmultiplyARGB() convenience function
72922cbae33 idec_dec: fix 0 offset of NULL pointer
730290dd0b4 muxread: fix 0 offset of NULL pointer
7310df474ac Merge "lossless_(enc_|)sse2: avoid offsetting a NULL pointer"
732c6b75a19 lossless_(enc_|)sse2: avoid offsetting a NULL pointer
733295e5e38 fix UBSAN warning
734e2575e05 DC8_NEON,aarch64: use vaddv
735b0e09e34 dec_neon: Fix build failure under some toolchains
736cf0e903c dsp/lossless: Fix non gcc ARM builds
737bb7bc40b Remove ubsan errors.
73878881b76 CMake: fix GLUT library link
7399f750f7a cmake: fix BUILD_SHARED_LIBS build on mac
74017850e74 libwebp: Remove char-subscripts warning in pnmdec.c
7412fa2552d Merge "Expose WebPMalloc() in addition to WebPFree()"
742a4df4aae Expose WebPMalloc() in addition to WebPFree()
743853ea3d8 imageio/tiff: Return error before allocating bad tile size
744af650c0b Fix a Wxor-used-as-pow false positive
745601ef17c libwebp.py: update to swig 3.0.12
7460e48d889 bugfix: last alpha rows were incorrectly decoded
74724d2ccb4 webp: Fix imageio ReadPNM() TUPLTYPE
748fab8f9cf cosmetics: normalize '*' association
74994138e0e update .gitignore
7500fe1a89d update ChangeLog (tag: v1.0.3-rc1, tag: v1.0.3)
7512ad0916d update NEWS
7521287362b bump version to 1.0.3
7537b968cc2 update AUTHORS
7549d6988f4 Fix the oscillating prediction problem at low quality
755312f74d0 makefile.unix: allow *_LIBS to be overridden w/EXTRA_LIBS
75692dbf237 filters_sse2,cosmetics: shorten some long lines
757a277d197 filters_sse2.c: quiet integer sanitizer warnings
758804540f1 Fix cpufeatures in CMake.
759bf00c15b Add CMake option for bittrace.
760a788b498 filters_sse2.c: quiet integer sanitizer warnings
761e6a92c5e filters.c: quiet integer sanitizer warnings
762ec1cc40a lossless.c: remove U32 -> S8 conversion warnings
7631106478f remove conversion U32 -> S8 warnings
764812a6b49 lossless_enc: fix some conversion warning
7654627c1c9 lossless_enc,TransformColorBlue: quiet uint32_t conv warning
766c84673a6 lossless_enc_sse{2,41}: quiet signed conv warnings
767776a7757 dec_sse2: quiet signed conv warnings
768bd39c063 Merge "thread_utils: release mutex before signaling"
7690550576f Merge "(alpha_processing,enc}_sse2: quiet signed conv warnings"
7706682f2c4 thread_utils: release mutex before signaling
771e78dea75 (alpha_processing,enc}_sse2: quiet signed conv warnings
7729acf18ba iosbuild.sh: add WebP{Demux,Mux}.framework
773b9be7e65 vwebp: remove the -fit option (and make it default)
7741394a2bb Merge "README.webp_js: update Emscripten.cmake note"
775dd3e7f8a README.webp_js: update Emscripten.cmake note
77632cf8801 predictor_enc,GetBestGreenRedToBlue: quiet implicit conv warnings
777e1c8acb5 Merge "vwebp: add a -fit option"
778cbd23dd5 vwebp: add a -fit option
7792e672351 bit_writer_utils,Flush: quiet implicit conversion warnings
7801326988d swig: update libwebp_python_wrap.c
7810e7f8548 update generated swig files
78217ed1438 Merge "PutLE{16,24}: quiet implicit conversion warnings"
78324686538 PutLE{16,24}: quiet implicit conversion warnings
784153bb3a0 fix some clang-7 warnings:
785ab2dc893 Rescaler: fix rounding error
786aa65f89a HistogramCombineStochastic: fix free of uninit value
787af0bac64 Merge "encode.h: mention 'exact' default in WebPEncodeLossless*"
7886d2e11ec encode.h: mention 'exact' default in WebPEncodeLossless*
7898c3f04fe AndroidCPUInfo: reorder terms in conditional
790fcfd9c71 BitTrace: if BITTRACE is > 0, record and print syntax bits used
791067031ea Speedups for unused Huffman groups.
79201ac46ba libwebp: Display "libjpeg error:" in imageio/jpegdec
793d9a662e1 WebPRescalerGetScaledDimensions: round scaled dimension up
79462eb3f08 libwebp: Fix missing '{' in README
795e05f785a Merge "unicode,INIT_WARGV: add missing cast"
79663c9a69f tag the VP8LHashPix() function for potential uint roll-over
7972b7214ab unicode,INIT_WARGV: add missing cast
798bf424b46 tag the GetPixPairHash64() function for potential uint roll-over
7997d05d6ca Have the color cache computation be u32-bit only.
8006bcf8769 Remove BINARYEN_METHOD in wasm settings.
8012b98df90 update ChangeLog (tag: v1.0.2-rc1, tag: v1.0.2)
80261e372b7 update NEWS
8037ae658a0 bump version to 1.0.2
80451c4907d update AUTHORS
805666bd6c6 man/cwebp.1: refine near-lossless text
806561cdce5 Clarify the doc about GetFeatures.
807aec2cf02 near_lossless: fix fuzzing-detected integer overflow
808928a75de webp: Fix VP8LBitWriterClone() bug
8095173d4ee neon IsFlat
8105b081219 IsFlat: inline when possible
811381b7b54 IsFlat: use int for thresh
8126ed15ea1 fix unprobable leak in webp_sdl.c
81322bbb24e Merge "IsFlat: return int"
8148b3fb238 Merge tag 'v1.0.1'
815f435de95 IsFlat: return int
81641521aed utils.h: only define WEBP_NEED_LOG_TABLE_8BIT when needed
8179f4d4a3f neon: GetResidualCost
8180fd7514b neon: SetResidualCoeffs
819f95a996c Simpler histogram clustering.
820e85d3313 update ChangeLog (tag: v1.0.1-rc2, tag: v1.0.1)
821fa8210e4 Fix pair update in stochastic entropy merging.
822fd198f73 add codereview.settings
823825389ac README.mux: add a reference to the AnimDecoder API
8243be698c3 CMake: fix webp_js compilation
825485ff86f Fix pair update in stochastic entropy merging.
8264cd0582d CMake: fix webp_js compilation
8274cbb4caf update NEWS
828f5a5918d bump version to 1.0.1
829d61385db Speed-up: Make sure we only initialize histograms when needed.
8306752904b Speed-up: Make sure we only initialize histograms when needed.
8310c570316 update AUTHORS
832301a2dda img2webp: add help note about arguments from a file
833f0abab92 Speedups for empty histograms.
834f2dfd925 Split HistogramAdd to only have the high level logic in C.
83506b7bc7d Fix compilation on windows and clang-cl+ninja.
836b6284d82 img2webp: add help note about arguments from a file
837decf6f6b Speedups for empty histograms.
838dea3e899 Split HistogramAdd to only have the high level logic in C.
839632798ae Merge "Fix compilation on windows and clang-cl+ninja."
840dc1a9518 Merge "libwebp: Unicode command tools on Windows"
8419cf9841b libwebp: Unicode command tools on Windows
84298179495 remove some minor TODOs
843a376e7b9 Fix compilation on windows and clang-cl+ninja.
844cbf82cc0 Remove AVX2 files.
8455030e902 Merge "TIFF decoder: remove unused KINV definition"
846ac543311 Remove a few more useless #defines
847123d3306 TIFF decoder: remove unused KINV definition
848ef1094b0 Merge "- install pkg-config files during the CMake build"
849b911fbc9 libwebp: Remove duplicate GIFDisplayError in anim_util
850eee00b66 - install pkg-config files during the CMake build
851ac3ec8c9 Merge "Clean-up the common sources in dsp."
8523e13da7b Clean-up the common sources in dsp.
8535c395f1d libwebp: cmake-format all
854e7a69729 libwebp: Add extras targets in CMakeLists.txt
855e52485d6 libwebp: Rename macros in webpmux.c
85692dc0f09 clean-up MakeInputImageCopy()
85739952de2 VP8IteratorImport: add missing 'const'
858382af7a2 clean-up WebPBlendAlpha
85914d020f6 libwebp: Use ExUtilGet*() in anim_diff
8600d92ff25 libwebp: remove useless variable in gif2webp
861556cb1b4 Merge "CMake: Set WEBP_BUILD_GIF2WEBP to off"
862da26ee49 CMake: Set WEBP_BUILD_GIF2WEBP to off
863b2a867c0 cwebp: Don't premultiply during -resize if -exact
864637141bc pngdec: fix build w/libpng < 1.4.x
865bc5092b1 pngdec: set memory functions
86650d8345a Fix CMake math library.
8676aa3e8aa Fix math library on Visual Studio.
868d71df4e2 Fix math library finding in CMake.
869de08d727 cosmetics: normalize include guard comment
870009562b4 vwebp: Fix bug when Dispose then NoBlend frames
871423f2579 Fix up CMake to create targets.
872907208f9 Wait for all threads to be done in DecodeRemaining.
8734649b3c4 vwebp: Add background color display option
87478ad57a3 Fix bad glClearColor parameters
875da96d8d9 Allow for a non-initialized alpha decompressor in DoRemap.
8762563db47 fix rescaling rounding inaccuracy
877211f37ee fix endian problems in pattern copy
8785f0f5c07 Make sure partition #0 is read before VP8 data in IDecode.
879de98732b fix GetColorf() bug
8804338cd36 misc fixes in libwebpmux
881e00af13e fix signatures after a9ceda7ff1
882a9ceda7f Speed-up chunk list operations.
8832281bbf6 Merge "Better handling of bogus Huffman codes."
88439cb9aad Better handling of bogus Huffman codes.
88589cc9d37 Merge "fix read-overflow while parsing VP8X chunk"
88695fd6507 fix read-overflow while parsing VP8X chunk
8879e729fe1 Fix VP8IoTeardownHook being called twice on worker sync failure
88829fb8562 Merge "muxread,anmf: fail on multiple image chunks"
889eb82ce76 muxread,anmf: fail on multiple image chunks
8901344a2e9 fix alpha-filtering crash when image width is larger than radius
891be738c6d muxread,ChunkVerifyAndAssign: validate chunk_size
8922c70ad76 muxread,CreateInternal: fix riff size checks
893569001f1 Fix for thread race heap-use-after-free
894c56a02d9 Android.mk: use LOCAL_EXPORT_C_INCLUDES w/public libs
89515795596 CMakeLists.txt,cosmetics: normalize if() formatting
8961a44c233 Merge "cmake: add support for webpmux"
897e9569ad7 Merge "configure,*am,cosmetics: s/WANT_/BUILD_/"
89835c7de6f cmake: add support for webpmux
8990f25e61c WebpToSDL(): fix the return value in case of error
9005d8985de configure,*am,cosmetics: s/WANT_/BUILD_/
901895fd28f Merge "man/Makefile.am: add img2webp.1"
9025cf3e2af man/Makefile.am: add img2webp.1
9032a9de5b9 Add build rules for anim_diff & anim_dump utils.
90471ed73cf fix invalid check for buffer size
905af0e4fbb gif2webp: fix transcode of loop count=65535
906dce5d764 Limit memory allocation when reading invalid Huffman codes.
907f9df0081 Merge "cmake: quiet glut deprecation warnings on OS X"
908dc39b16f webpmux.1: correct grammar
909c7aa1264 cwebp.c: fix a missing \n
91053aa51e9 Merge tag 'v1.0.0'
911698b8844 update ChangeLog (tag: v1.0.0)
9128d510751 webp-container-spec: correct frame duration=0 note
913e6b2164e vwebp: Copy Chrome's behavior w/frame duration == 0
914094b3b28 cmake: quiet glut deprecation warnings on OS X
91571c39a06 webp-container-spec: correct frame duration=0 note
916fd3d5756 vwebp: Copy Chrome's behavior w/frame duration == 0
917b0c966fb Build vwebp from CMake.
918d20b7707 update ChangeLog (tag: v1.0.0-rc3)
9190d5fad46 add WEBP_DSP_INIT / WEBP_DSP_INIT_FUNC
920d77bf512 add WEBP_DSP_INIT / WEBP_DSP_INIT_FUNC
921c1cb86af fix 16b overflow in SSE2
922e577feb7 makefile.unix: add DEBUG flag for compiling w/ debug-symbol
92399be34b3 cwebp,get_disto: fix bpp output
924e122e511 cwebp,get_disto: fix bpp output
925f5565ca8 cmake: Make sure we use near-lossless by default.
926d898dc14 fix bug in WebPImport565: alpha value was not set
9271c8f358d Fix CMake with WASM.
928a0215fb7 webp_js: fix webp_js demo html
929882784b0 update ChangeLog (tag: v1.0.0-rc2)
9302f930e08 Revert "Use proper targets for CMake."
9318165e8fb Use proper targets for CMake.
9323f157dd5 Remove some very hard TODOs.
933abb47760 Merge "Use proper targets for CMake."
934cd758a17 {de,}mux/Makefile.am: add missing headers
935e155dda0 Use proper targets for CMake.
936b892b8ba makefile.unix,dist: use ascii for text output
93764a57d05 add -version option to anim_dump,anim_diff and img2webp
938994be82d Merge "Remove some very hard TODOs."
9394033e1d7 Remove some very hard TODOs.
940fc1b8e3a webp_js: fix webp_js demo html
94115aa48d9 update ChangeLog (tag: v1.0.0-rc1)
942e607dabc update AUTHORS
94338410c08 [CFI] Remove function pointer casts
944978eec25 [CFI] Remove function pointer casts
945c57b2736 bump version to 1.0.0
946cba28853 update NEWS
947c909d531 Merge "remove some deprecation warning on MacOSX"
948217443c7 remove some deprecation warning on MacOSX
949b672bdfa configure: quiet glut deprecation warnings on OS X
950daa9fcaf configure: use sdl-config if available
951dd174cae Merge "imagedec: support metadata reading for WebP image decoding"
952641cedcc imagedec: support metadata reading for WebP image decoding
953065b2ce1 anim_diff: add a couple missing newlines in Help()
954c4cc1147 Merge "gif2webp: force low duration frames to 100ms"
95509333097 gif2webp: force low duration frames to 100ms
956e03f0ec3 sharp_yuv: use 14b fixed-point precision for gamma
957b2db361c image_enc,WebPWritePNG: move locals after setjmp
95874e82ec6 Merge "WebPPictureDistortion: fix big-endian results order"
959645d04ca Merge "cwebp,get_disto: report bpp"
960120f58c3 Merge "lossless*sse2: improve non-const 16-bit vector creation"
961a7fe9412 WebPPictureDistortion: fix big-endian results order
962e26fe066 cwebp,get_disto: report bpp
9639df64e28 Merge changes Id5b4a1a4,Ia20ce844
9648043504f lossless*sse2: improve non-const 16-bit vector creation
9651e3dfc48 Import: extract condition from loop
9663b07d327 Import,RGBA: fix for BigEndian import
967551948e4 Remove unused argument in VP8LBitsEntropy.
9683005237a ReadWebP: fix for big-endian
969499c395a Merge "anim_diff: expose the -max_diff option"
970f69dcd69 Merge "remove WEBP_EXPERIMENTAL_FEATURES"
97107d884d5 anim_diff: expose the -max_diff option
972f4dd9256 remove WEBP_EXPERIMENTAL_FEATURES
97394a8377b extract the command-line parsing helpers to example_util
974fc09e6e2 PNM decoder: prevent unsupported depth=2 PAM case.
9756de58603 MIPS64: Fix defined-but-not-used errors with WEBP_REDUCE_CSP
976cbde5728 gif2webp: add support for reading from stdin
977cf1c5054 Add an SSE4 version of some lossless color transforms.
97845a8b5eb Fix lint error with man page.
979cff38e8f Merge "PNG decoder: handle gAMA chunk"
98059cb1a48 Merge "enable dc error-diffusion always"
98178318b30 PNG decoder: handle gAMA chunk
982664c21dd Merge "remove some TODOs"
983815652de enable dc error-diffusion always
984aec45cec remove some TODOs
9855715dfce fix block-count[] increment in case of large image
986c2d04f3e enable DC error-diffusion always for multi-pass
98796bf07c5 use DC error diffusion for U/V at low-quality
9881c59020b fix missing sse41 targets in makefile.unix
9897a8e814b cosmetics: s/color_space/colorspace/
99005f6fe24 upsampling: rm asserts w/REDUCE_CSP+OMIT_C_CODE
991b4cf5597 Merge "Upsampling SSE2/SSE4 speedup."
992ccbeb32c Makefile.vc: add missing sse41 files
99355403a9a Upsampling SSE2/SSE4 speedup.
994807b53c4 Implement the upsampling/yuv functions in SSE41
99584101a81 Fix wasm WebP compilation
9968bebd2a3 fix warning on MSVC
997a7f93fe3 webpmux: allow reading argument from a file
998b69f18a7 gif2webp.1: fix -loop_compatibility layout
99972d530c0 Merge "fix lossless decoding w/WEBP_REDUCE_SIZE"
1000296c7dc4 fix lossless decoding w/WEBP_REDUCE_SIZE
10010d5d029c Merge "ImgIoUtilReadFile: fix file leak upon error"
1002ae568ce7 ImgIoUtilReadFile: fix file leak upon error
1003796b5a8a Merge tag 'v0.6.1'
10046b7a95fd update ChangeLog (tag: v0.6.1)
1005f66955de WEBP_REDUCE_CSP: restrict colorspace support
10061af0df76 Merge "WEBP_REDUCE_CSP: restrict colorspace support"
10076de20df0 WEBP_REDUCE_CSP: restrict colorspace support
1008a289d8e7 update ChangeLog (tag: v0.6.1-rc2)
1009c10a493c vwebp: disable double buffering on windows & mac
10100d4466c2 webp_to_sdl.c: fix file mode
10111b27bf8b WEBP_REDUCE_SIZE: disable all rescaler code
1012126be109 webpinfo: add -version option
10130df22b9e WEBP_REDUCE_SIZE: disable all rescaler code
10149add62b5 bump version to 0.6.1
1015d3e26144 update NEWS
10162edda639 README: add webpinfo section
10179ca568ef Merge "right-size some tables"
101831f1995c Merge "SSE2 implementation of HasAlphaXXX"
1019a80c46bd SSE2 implementation of HasAlphaXXX
1020083507f2 right-size some tables
10212e5785b2 anim_utils.c: remove warning when !defined(WEBP_HAVE_GIF)
1022b299c47e add WEBP_REDUCE_SIZE
1023f593d71a enc: disable pic->stats/extra_info w/WEBP_DISABLE_STATS
1024541179a9 Merge "predictor_enc: fix build w/--disable-near-lossless"
10255755a7ec predictor_enc: fix build w/--disable-near-lossless
1026eab5bab7 add WEBP_DISABLE_STATS
10278052c585 remove some petty TODOs from vwebp.
1028c245343d move LOAD8x4 and STORE8x2 closer to their use location
1029b9e734fd dec,cosmetics: normalize function naming style
1030c188d546 dec: harmonize function suffixes
103128c5ac81 dec_sse41: harmonize function suffixes
1032e65b72a3 Merge "introduce WebPHasAlpha8b and WebPHasAlpha32b"
1033b94cee98 dec_sse2: remove HE8uv_SSE2
103444a0ee3f introduce WebPHasAlpha8b and WebPHasAlpha32b
1035aebf59ac Merge "WebPPictureAllocARGB: align argb allocation"
1036c184665e WebPPictureAllocARGB: align argb allocation
10373daf7509 WebPParseHeaders: remove obsolete animation TODO
103880285d97 cmake: avoid security warnings under msvc
1039650eac55 cmake: don't set -Wall with MSVC
1040c462cd00 Remove useless code.
104101a98217 Merge "remove WebPWorkerImpl declaration from the header"
10423c49fc47 Merge "thread_utils: fix potentially bad call to Execute"
1043fde2782e thread_utils: fix potentially bad call to Execute
10442a270c1d remove WebPWorkerImpl declaration from the header
1045f1f437cc remove mention of 'lossy-only parameters' from the doc
10463879074d Merge "WebPMemToUint32: remove ptr cast to int"
104704b029d2 WebPMemToUint32: remove ptr cast to int
1048b7971d0e dsp: avoid defining _C functions w/NEON builds
10496ba98764 webpdec: correct alloc size check w/use_argb
10505cfb3b0f normalize include guards
1051f433205e Merge changes Ia17c7dfc,I75423abb,Ia2f716b4,I161caa14,I4210081a, ...
10528d033b14 {dec,enc}_neon: harmonize function suffixes x2
10530295e981 upsampling_neon: harmonize function suffixes
1054d572c4e5 yuv_neon: harmonize function suffixes
1055ab9c2500 rescaler_neon: harmonize function suffixes
105693e0ce27 lossless_neon: harmonize function suffixes
105722fbc50e lossless_enc_neon: harmonize function suffixes
1058447875b4 filters_neon,cosmetics: fix indent
1059e51bdd43 remove unused VP8TokenToStats() function
1060785da7ea enc_neon: harmonize function suffixes
1061bc1a251f dec_neon: harmonize function suffixes
106261e535f1 dsp/lossless: workaround gcc-4.8 bug on arm
106368b2eab7 cwebp: fix alpha reporting w/lossless & metadata
106430042faa WebPDemuxGetI: add doc details around WebPFormatFeature
10650a17f471 Merge "WIP: list includes as descendants of the project dir"
1066a4399721 WIP: list includes as descendants of the project dir
106708275708 Merge "Make sure we reach the full range for alpha blending."
1068d361a6a7 yuv_sse2: harmonize function suffixes
10696921aa6f upsampling_sse2: harmonize function suffixes
107008c67d3e ssim_sse2: harmonize function suffixes
1071582a1b57 rescaler_sse2: harmonize function suffixes
10722c1b18ba lossless_sse2: harmonize function suffixes
10730ac46e81 lossless_enc_sse2: harmonize function suffixes
1074bc634d57 enc_sse2: harmonize function suffixes
1075bcb7347c dec_sse2: harmonize function suffixes
1076e14ad93c Make sure we reach the full range for alpha blending.
10777038ca8d demux,StoreFrame: restore hdr size check to min req
1078fb3daad6 cpu: fix ssse3 check
1079be590e06 Merge "Fix CMake redefinition for HAVE_CPU_FEATURES_H"
108035f736e1 Fix CMake redefinition for HAVE_CPU_FEATURES_H
1081a5216efc Fix integer overflow warning.
1082a9c8916b decode.h,WebPIDecGetRGB: clarify output ptr validity
10833c74c645 gif2webp: handle 1-frame case properly + fix anim_diff
1084c7f295d3 Merge "gif2webp: introduce -loop_compatibility option"
1085b4e04677 gif2webp: introduce -loop_compatibility option
1086f78da3de add LOCAL_CLANG_PREREQ and avoid WORK_AROUND_GCC w/3.8+
108701c426f1 define WEBP_USE_INTRINSICS w/gcc-4.9+
10888635973d use sdl-config (if available) to determine the link flags
1089e9459382 use CPPFLAGS before CFLAGS
10904a9d788e Merge "Android.mk,mips: fix clang build with r15"
10914fbdc9fb Android.mk,mips: fix clang build with r15
1092a80fcc4a ifdef code not used by Chrome/Android.
10933993af12 Fix signed integer overflows.
1094f66f94ef anim_dump: small tool to dump frames from animated WebP
10956eba857b Merge "rationalize the Makefile.am"
1096c5e34fba function definition cleanup
10973822762a rationalize the Makefile.am
1098501ef6e4 configure style fix: animdiff -> anim_diff
1099f8bdc268 Merge "protect against NULL dump_folder[] value in ReadAnimatedImage()"
110023bfc652 protect against NULL dump_folder[] value in ReadAnimatedImage()
11018dc3d71b cosmetics,ReadAnimatedWebP: correct function comment
11025bd40066 Merge changes I66a64a0a,I4d2e520f
11037945575c cosmetics,webpinfo: remove an else after a return
11048729fa11 cosmetics,cwebp: remove an else after a return
1105f324b7f9 cosmetics: normalize fn proto & decl param names
1106869eb369 CMake cleanups.
1107289e62a3 Remove declaration of unimplemented VP8ApplyNearLosslessPredict
110820a94186 pnmdec,PAM: validate depth before calculating bytes_per_px
110934130afe anim_encode: fix integer overflow
111042c79aa6 Merge "Encoder: harmonize function suffixes"
1111b09307dc Encoder: harmonize function suffixes
1112bed0456d Merge "SSIM: harmonize the function suffix"
111354f6a3cf lossless_sse2.c: fix some missed suffix changes
1114088f1dcc SSIM: harmonize the function suffix
111586fc4dd9 webpdec: use ImgIoUtilCheckSizeArgumentsOverflow
111608ea9ecd imageio: add ability restrict max image size
11176f9daa4a jpegdec,ReadError: fix leaks on error
1118a0f72a4f VP8LTransformColorFunc: drop an non-respected 'const' from the signature.
11198c934902 Merge "Lossess dec: harmonize the function suffixes"
1120622242aa Lossess dec: harmonize the function suffixes
11211411f027 Lossless Enc: harmonize the function suffixes
112224ad2e3c add const to two variables
112346efe062 Merge "Allow the lossless cruncher to work for alpha."
11248c3f9a47 Speed-up LZ77.
11251aef4c71 Allow the lossless cruncher to work for alpha.
1126b8821dbd Improve the box LZ77 speed.
11277beed280 add missing ()s to macro parameters
11286473d20b Merge "fix Android standalone toolchain build"
1129dcefed95 Merge "build.gradle: fix arm64 build"
11300c83a8bc Merge "yuv: harmonize suffix naming"
1131c6d1db4b fix Android standalone toolchain build
1132663a6d9d unify the ALTERNATE_CODE flag usage
113373ea9f27 yuv: harmonize suffix naming
1134c71b68ac build.gradle: fix arm64 build
1135c4568b47 Rescaler: harmonize the suffix naming
11366cb13b05 Merge "alpha_processing: harmonize the naming suffixes to be _C()"
113783a3e69a Merge "simplify WEBP_EXTERN macro"
11387295fde2 Merge "filters: harmonize the suffixes naming to _SSE2(), _C(), etc."
11398e42ba4c simplify WEBP_EXTERN macro
1140331ab34b cost*.c: harmonize the suffix namings
1141b161f670 filters: harmonize the suffixes naming to _SSE2(), _C(), etc.
1142dec5e4d3 alpha_processing: harmonize the naming suffixes to be _C()
11436878d427 fix memory leak in SDL_Init()
1144461ae555 Merge "configure: fix warnings in sdl check"
114562486a22 configure: test for -Wundef
114692982609 dsp.h: fix -Wundef w/__mips_dsp_rev
11470265cede configure: fix warnings in sdl check
114888c73d8a backward_references_enc.h: fix WINDOW_SIZE_BITS check
11494ea49f6b rescaler_sse2.c: fix WEBP_RESCALER_FIX -> _RFIX typo
11501b526638 Clean-up some CMake
115187f57a4b Merge "cmake: fix gif lib detection when cross compiling"
1152b34a9db1 cosmetics,dec_sse2: remove some redundant comments
1153471c5755 cmake: fix gif lib detection when cross compiling
1154c793417a cmake: disable gif2webp if gif lib isn't found
1155dcbc1c88 cmake: split gif detection from IMG deps
115666ad84f0 Merge "muxread: remove unreachable code"
115750ec3ab7 muxread: remove unreachable code
11587d67a164 Lossy encoding: smoothen transparent areas to improve compression
1159e50650c7 Merge "fix signature for DISABLE_TOKEN_BUFFER compilation"
1160671d2567 fix signature for DISABLE_TOKEN_BUFFER compilation
1161d6755580 cpu.cmake: use unique flag to test simd disable flags
116228914528 Merge "Remove the argb* files."
11638acb4942 Remove the argb* files.
11643b62347b README: correct cmake invocation note
11657ca0df13 Have the SSE2 version of PackARGB use common code.
11667b250459 Merge "Re-use the transformed image when trying several LZ77 in lossless."
1167e132072f Re-use the transformed image when trying several LZ77 in lossless.
11685d7a50ef Get code to compile in C++.
11697b012987 configure: test for -Wparentheses-equality
1170f0569adb Fix man pages for multi-threading.
1171f1d5a397 multithread cruncher: only copy stats when picture->stats != NULL
1172f8c2ac15 Multi-thread the lossless cruncher.
1173a88c6522 Merge "Integrate a new LZ77 looking for matches in the neighborhood of a pixel only."
11748f6df1d0 Unroll Predictors 10, 11 and 12.
1175355c3d1b Integrate a new LZ77 looking for matches in the neighborhood of a pixel only.
1176a1779a01 Refactor LZ77 handling in preparation for a new method.
117767de68b5 Android.mk/build.gradle: fix mips build with clang from r14b
1178f209a548 Use the plane code and not the distance when computing statistics.
1179b903b80c Split cost-based backward references in its own file.
1180498cad34 Cosmetic changes in backward reference.
1181e4eb4587 lossless, VP8LTransformColor_C: make sure no overflow happens with colors.
1182af6deaff webpinfo: handle alpha flag mismatch
11837caef29b Fix typo that creeped in.
118439e19f92 Merge "near lossless: fix unsigned int overflow warnings."
11859bbc0891 near lossless: fix unsigned int overflow warnings.
1186e1118d62 Merge "cosmetics,FindClosestDiscretized: use uint in mask creation"
1187186bc9b7 Merge "webpinfo: tolerate ALPH+VP8L"
1188b5887297 cosmetics,FindClosestDiscretized: use uint in mask creation
1189f1784aee near_lossless,FindClosestDiscretized: use unsigned ops
11900d20abb3 webpinfo: tolerate ALPH+VP8L
1191972104b3 webpmux: tolerate false positive Alpha flag
1192dd7e83cc tiffdec,ReadTIFF: ensure data_size is < tsize_t max
1193d988eb7b tiffdec,MyRead: quiet -Wshorten-64-to-32 warning
1194dabda707 webpinfo: add support to parse Alpha bitstream
11954c117643 webpinfo: correct background color output, BGRA->ARGB
1196defc98d7 Doc: clarify the role of quality in WebPConfig.
1197d78ff780 Merge "Fix code to compile with C++."
1198c8f14093 Fix code to compile with C++.
1199497dc6a7 pnmdec: sanitize invalid header output
1200d78e5867 Merge "configure: test for -Wconstant-conversion"
1201481e91eb Merge "pnmdec,PAM: set bytes_per_px based on depth when missing"
120293b12753 configure: test for -Wconstant-conversion
1203645f0c53 pnmdec,PAM: set bytes_per_px based on depth when missing
1204e9154605 Merge "vwebp: activate GLUT double-buffering"
1205818d795b vwebp: activate GLUT double-buffering
1206d63e6f4b Add a man page for webpinfo
12074d708435 Merge "NEON: implement ConvertRGB24ToY/BGR24/ARGB/RGBA32ToUV/ARGBToUV"
1208faf42213 NEON: implement ConvertRGB24ToY/BGR24/ARGB/RGBA32ToUV/ARGBToUV
1209b4d576fa Install man pages with CMake.
1210cbc1b921 webpinfo: add features to parse bitstream header
1211e644c556 Fix bad bit writer initialization.
1212b62cdad2 Merge "Implement a cruncher for lossless at method 6."
1213da3e4dfb use the exact constant for the gamma transfer function
1214a9c701e0 Merge "tiffdec: fix EXTRASAMPLES check"
1215adab8ce0 Implement a cruncher for lossless at method 6.
12161b92b237 Merge "Fix VP8ApplyNearLossless to respect const and stride."
12171923ff02 tiffdec: fix EXTRASAMPLES check
121897cce5ba tiffdec: only request EXTRASAMPLES w/> 3 samples/px
12190dcd85b6 Fix VP8ApplyNearLossless to respect const and stride.
1220f7682189 yuv: rationalize the C/SSE2 function naming
122152245424 NEON implementation of some Sharp-YUV420 functions
1222690efd82 Avoid several backward reference copies.
12234bb1f607 src/dec/vp8_dec.h, cosmetics: fix comments
1224285748be cmake: build/install webpinfo
122578fd199c backward_references_enc.c: clear -Wshadow warnings
1226ae836410 WebPLog2FloorC: clear -Wshadow warning
1227d0b7404e Merge "WASM support"
1228134e314f WASM support
1229c08adb6f Merge "VP8LEnc: remove use of BitsLog2Ceiling()"
123028c37ebd VP8LEnc: remove use of BitsLog2Ceiling()
12312cb58ab2 webpinfo: output format as a human readable string
1232bb175a93 Merge "rename some symbols clashing with MSVC headers"
123339eda658 Remove a duplicated pixel hash implementation.
123436b8274d rename some symbols clashing with MSVC headers
1235274daf54 Add webpinfo tool.
1236ec5036e4 add explicit reference to /usr/local/{lib,inc}
123718f0dfac Merge "fix TIFF encoder regarding rgbA/RGBA"
12384e2b0b50 Merge "webpdec.h: fix a doc typo"
1239e2eeabff Merge "Install binaries, libraries and headers in CMake."
1240836607e6 webpdec.h: fix a doc typo
12419273e441 fix TIFF encoder regarding rgbA/RGBA
124217e3c11f Add limited PAM decoding support
12435f624871 Install binaries, libraries and headers in CMake.
1244976adac1 Merge "lossless incremental decoding: fix missing eos_ test"
1245f8fad4fa lossless incremental decoding: fix missing eos_ test
124627415d41 Merge "vwebp_sdl: fix the makefile.unix"
124749566182 Merge "ImgIoUtilWriteFile(): use ImgIoUtilSetBinaryMode"
12486f75a51b Analyze the transform entropy on the whole image.
1249a5e4e3af Use palette only if we can in entropy analysis.
125075a9c3c4 Improve compression by better entropy analysis.
125139cf6f4f vwebp_sdl: fix the makefile.unix
1252699b0416 ImgIoUtilWriteFile(): use ImgIoUtilSetBinaryMode
12537d985bd1 Fix small entropy analysis bug.
12546e7caf06 Optimize the color cache size.
1255833c9219 More efficient stochastic histogram merge.
12565183326b Refactor the greedy histogram merge.
125799f6f462 Merge "histogram_enc.c,MyRand: s/ul/u/ for unsigned constants"
125880a22186 ssim.c: remove dead include
1259a128dfff histogram_enc.c,MyRand: s/ul/u/ for unsigned constants
1260693bf74e move the SSIM calculation code in ssim.c / ssim_sse2.c
126110d791ca Merge "Fix the random generator in HistogramCombineStochastic."
1262fa63a966 Fix the random generator in HistogramCombineStochastic.
126316be192f VP8LSetBitPos: remove the eos_ setting
1264027151ca don't erase the surface before blitting.
12654105d565 disable WEBP_USE_XXX optimisations when EMSCRIPTEN is defined
12669ee32a75 Merge "WebP-JS: emscripten-based Javascript decoder"
1267ca9f7b7d WebP-JS: emscripten-based Javascript decoder
1268868aa690 Perform greedy histogram merge in a unified way.
12695b393f2d Merge "fix path typo for vwebp_sdl in Makefile.vc"
1270e0012bea CMake: only use libwebpdecoder for building dwebp
127184c2a7b0 fix path typo for vwebp_sdl in Makefile.vc
12721b0e4abf Merge "Add a flag to disable SIMD optimizations."
127332263250 Add a flag to disable SIMD optimizations.
1274b494fdec optimize the ARGB->ARGB Import to use memcpy
1275f1536039 Merge "ReadWebP: decode directly into a pre-allocated buffer"
1276e69ed291 ReadWebP: decode directly into a pre-allocated buffer
127757d8de8a Merge "vwebp_sdl: simple viewer based on SDL"
12785cfd4ebc LZ77 interval speedups. Faster, smaller, simpler.
12791e7ad88b PNM header decoder: add some basic numerical validation
128017c7890c Merge "Add a decoder only library for WebP in CMake."
1281be733786 Merge "Add clang build fix for MSA"
128203cda0e4 Add a decoder only library for WebP in CMake.
1283aa893914 Add clang build fix for MSA
128431a92e97 Merge "imageio: add limited PNM support for reading"
1285dcf9d82a imageio: add limited PNM support for reading
12866524fcd6 vwebp_sdl: simple viewer based on SDL
12876cf24a24 get_disto: fix reference file read
128843d472aa Merge tag 'v0.6.0'
128950d1a848 update ChangeLog (tag: v0.6.0, origin/0.6.0)
129020a7fea0 extras/Makefile.am: fix libwebpextras.la reference
1291415f3ffe update ChangeLog (tag: v0.6.0-rc3)
12923c6d1224 update NEWS
1293ee4a4141 update AUTHORS
129432ed856f Fix "all|no frames are keyframes" settings.
12951c3190b6 Merge "Fix "all|no frames are keyframes" settings."
1296f4dc56fd disable GradientUnfilter_NEON
12974f3e3bbd disable GradientUnfilter_NEON
12982dc0bdca Fix "all|no frames are keyframes" settings.
12990d8e0588 img2webp: treat -loop as a no-op w/single images
1300b0450139 ReadImage(): restore size reporting
13010ad3b4ef update ChangeLog (tag: v0.6.0-rc2)
13026451709e img2webp,get_disto: fix image decode w/WIC builds
130392504d21 get_disto: make ReadPicture() return a bool
1304c3e4b3a9 update NEWS
13053363eb6d man/img2webp.1: fix formatting warning
13064d1312f2 update NEWS
130736c42ea4 bump version to 0.6.0
1308bb498a51 update AUTHORS
130984cef16f Makefile.vc: fix CFG=debug-dynamic build
1310919f9e2f Merge "add .rc files for windows dll versioning"
1311f1ae8af4 Merge ".gitignore: add img2webp"
13124689ce16 cwebp: add a -sharp_yuv option for 'sharp' RGB->YUV conversion
131379bf46f1 rename the pretentious SmartYUV into SharpYUV
1314eb1dc89a silently expose use_delta_palette in the WebPConfig API
1315c85b0dde .gitignore: add img2webp
131643d3f01a add .rc files for windows dll versioning
1317668e1dd4 src/{dec,enc,utils}: give filenames a unique suffix
13180e6b7f33 Merge "iosbuild.sh: only add required headers to framework"
131929ed6f9a iosbuild.sh: only add required headers to framework
132071c53f1a NEON: speed-up strong filtering
132173f567ea Merge "get_disto: remove redundant reader check"
13229e14276f Merge "makefiles: prune get_disto & webp_quality deps"
132399965bac Merge "Makefile.vc: add get_disto.exe, webp_quality.exe"
1324d4912238 get_disto: remove redundant reader check
1325ea482409 makefiles: prune get_disto & webp_quality deps
13262ede5a19 Makefile.vc: add get_disto.exe, webp_quality.exe
1327a345068a ARM: speed up bitreader by avoiding tables
13281dc82a6b Merge "introduce a generic GetCoeffs() function pointer"
13298074b89e introduce a generic GetCoeffs() function pointer
1330749a45a5 Merge "NEON: implement alpha-filters (horizontal/vertical/gradient)"
133174c053b5 Merge "NEON: fix overflow in SSE NxN calculation"
13320a3aeff7 Merge "dsp: WebPExtractGreen function for alpha decompression"
13331de931c6 NEON: implement alpha-filters (horizontal/vertical/gradient)
13349b3aca40 NEON: fix overflow in SSE NxN calculation
13351c07a3c6 dsp: WebPExtractGreen function for alpha decompression
13369ed5e3e5 use pointers for WebPRescaler's in WebPDecParams
1337db013a8d Merge "ARM: don't use USE_GENERIC_TREE"
1338fcd4784d use a 8b table for C-version for clz()
1339fbb5c473 ARM: don't use USE_GENERIC_TREE
13408fda5612 Merge "add a kSlowSSSE3 feature for CPUInfo"
134186bbd245 add a kSlowSSSE3 feature for CPUInfo
13427c2779e9 Get code to fully compile in C++.
1343250c3586 Merge "When compiling as C++, avoid narrowing warnings."
1344c0648ac2 When compiling as C++, avoid narrowing warnings.
13450d55f60c 40% faster ApplyAlphaMultiply_SSE2
134649d0280d NEON: implement several alpha-processing functions
134748b1e85f SSE2: 15% faster alpha-processing functions
1348e3b8abbc fix warning from static analysis.
134928fe054e SSE2: 30% faster ApplyAlphaMultiply()
1350f44acd25 Merge "Properly compute the optimal color cache size."
1351527844fe Properly compute the optimal color cache size.
1352be0ef639 fix a comment typo
13538874b162 Fix a non-deterministic color cache size computation.
1354d712e20d Do not allow a color cache size bigger than the number of colors.
1355ecff04f6 re-introduce some comments in Huffman Cost.
1356259e9828 replace 'ptr + y * stride' by 'ptr += stride'
135700b08c88 Merge "NEON: 5% faster conversion to RGB565 and RGBA4444"
13580e7f4447 Merge "NEON: faster fancy upsampling"
1359b016cb91 NEON: faster fancy upsampling
13601cb63801 Call the C function to finish off lossless SSE loops only when necessary.
1361875fafc1 Implement BundleColorMap in SSE2.
13623674d49e Merge "remove Clang warnings with unused arch arguments."
1363f04eb376 Merge tag 'v0.5.2'
1364341d711c NEON: 5% faster conversion to RGB565 and RGBA4444
1365abb54827 remove Clang warnings with unused arch arguments.
1366ece9684f update ChangeLog (tag: v0.5.2-rc2, tag: v0.5.2)
1367aa7744ca anim_util: quiet implicit conv warnings in 32-bit
1368d9120271 jpegdec: correct ContextFill signature
136924eb3940 Remove some errors when compiling the code as C++.
1370a4a8e5f3 vwebp: clear canvas during resize w/o animation
137167c25ad5 vwebp: clear canvas during resize w/o animation
1372a4bbe4b3 fix indentation
137331ca2a80 tiffdec: restore libtiff 3.9.x compatibility
1374b2f77b57 update NEWS
13755ab6d9de AnimEncoder: avoid freeing uninitialized memory pointer.
1376f29bf582 WebPAnimEncoder: If 'minimize_size' and 'allow_mixed' on, try lossy + lossless.
13773ebe1c00 AnimEncoder: avoid freeing uninitialized memory pointer.
1378df780e0e fix a potential overflow with MALLOC_LIMIT
137958fc5078 Merge "PredictorSub: implement fully-SSE2 version"
13809cc42167 PredictorSub: implement fully-SSE2 version
13810aa1f35c remove dependency of imageio/ to stopwatch.h
1382cb9ec84b Merge "remove the dependency to stop_watch.[ch] in imageio"
1383dc0c01fb Merge "anim_util: quiet implicit conv warnings in 32-bit"
1384827d3c50 Merge "fix a potential overflow with MALLOC_LIMIT"
13851e2e25b0 anim_util: quiet implicit conv warnings in 32-bit
1386218460cd bump version to 0.5.2
1387de7d654d update AUTHORS & .mailmap
1388273367c1 Merge "dsp/lossless.c,cosmetics: fix indent"
138976bbcf2e fix a potential overflow with MALLOC_LIMIT
13908ac1abfe Merge "jpegdec: correct ContextFill signature"
1391cb215aed remove the dependency to stop_watch.[ch] in imageio
13922423017a dsp/lossless.c,cosmetics: fix indent
139374a12b10 iosbuild.sh: add WebPDecoder.framework + encoder
1394a9cc7621 Merge "iosbuild.sh: add WebPDecoder.framework + encoder"
1395fbba5bc2 optimize predictor #1 in plain-C For some reason, gcc has hard time inlining this one...
13969ae0b3f6 Merge "SSE2: slightly (~2%) faster Predictor #1"
1397c1f97bd7 SSE2: slightly (~2%) faster Predictor #1
1398ea664b89 SSE2: 10% faster Predictor #11
1399be7dcc08 AnimEncoder: Correctly skip a frame when sub-rectangle is empty.
140040885830 Fix assertions in WebPRescalerExportRow()
14011d5046d1 iosbuild.sh: add WebPDecoder.framework + encoder
1402cec72014 jpegdec: correct ContextFill signature
14038f38c72e fix a typo in WebPPictureYUVAToARGB's doc
140433ca93f9 systematically call WebPDemuxReleaseIterator() on dec->prev_iter_
140576e19073 doc: use two's complement explicitly for uint8->int8 conversion
1406f91ba963 Anim_encoder: correctly handle enc->prev_candidate_undecided_
140725d74e65 WebPPictureDistortion(): free() -> WebPSafeFree()
140803f1c008 mux/Makefile.am: add missing -lm
140958410cd6 fix bug in RefineUsingDistortion()
1410e168af8c fix filtering auto-adjustment
1411ed9dec41 fix doc and code snippet for WebPINewDecoder() doc
14123c49178f prevent 32b overflow for very large canvas_width / height
14139595f290 fix anim_util.c compilation when HAVE_GIF is not defined.
14147ec9552c Make gif transparent color to be transparent black
1415b3fb8bb6 slightly faster Predictor #11 in NEON
14169871335f Add a CMake option for WEBP_SWAP_16BIT_CSP.
14170ae32226 Fix missing cpu-features for Android.
1418ab4c8056 cpu.cmake: improve webp_check_compiler_flag output
1419eec5fa3a Provide support for CMake on Android studio 2.2.
1420004d5690 Split the main CMake file.
14214fe5d588 Android.mk: use -fvisibility=hidden
1422bd63a31a vwebp: ensure setenv() is available in stdlib.h
1423363a5681 vwebp: handle window resizing properly
1424a0d2753f lower WEBP_MAX_ALLOCABLE_MEMORY default
142531fe11a5  fix infinite loop in case of PARTITION0 overflow
1426532215dd Change the rule of picking UV mode in MBAnalyzeBestUVMode()
14279c75dbd3 cwebp.1: improve some grammar
1428af2e05cb vwebp: Clear previous frame when a key triggers a redraw
142926ffa296 Add descriptions of default configuration in help info.
14307416280d Fix an unsigned integer overflow error in enc/cost.h
143113cf1d2e Do token recording and counting in a single loop
1432eb9a4b97 Reset segment id if we decide not to update segment map
143342ebe3b7 configure: fix NEON flag detection under gcc 6
143476ebbfff NEON: implement predictor #13
143595b12a08 Merge "Revert Average3 and Average4"
143654ab2e75 Revert Average3 and Average4
1437fe12330c 3-5% faster Predictor #5, #6, #7 and #10 for NEON
1438fbfb3bef ~2% faster predictor #10 for NEON
1439d4b7d801 lossless_sse2: use the local functions
1440a5e3b225 Lossless decoder SSE2 improvements.
144158a1f124 ~2% faster predictor #12 in NEON.
1442906c3b63 Merge "Implement lossless transforms in NEON."
1443d23abe4e Implement lossless transforms in NEON.
14442e6cb6f3 Give more flexibility to the predictor generating macro.
144528e0bb70 Merge "Fix race condition in multi-threading initialization."
144664704530 Fix race condition in multi-threading initialization.
1447bded7848 img2webp: fix default -lossless value and use pic.argb=1
14480e61a513 Merge "img2webp: convert a sequence of images to an animated webp"
14491cc79e92 AnimEncoder: Correctly skip a frame when sub-rectangle is empty.
145003f40955 img2webp: convert a sequence of images to an animated webp
1451ea72cd60 add missing 'extern' keyword for predictor dcl
145267879e6d SSE implementation of decoding predictors.
145334aee990 Merge "vwebp: make 'd' key toggle the debugging of fragments"
1454a41296ae Fix potentially uninitialized value.
1455c85adb33 vwebp: make 'd' key toggle the debugging of fragments
14564239a148 Make the lossless predictors work on a batch of pixels.
1457bc18ebad fix extra 'const's in signatures
145871e2f5ca Remove memcpy in lossless decoding.
14597474d46e Do not use a register array in SSE.
146067748b41 Improve latency of FTransform2.
146116951b19 Merge "Provide an SSE implementation of ConvertBGRAToRGB"
14626540cd0e Provide an SSE implementation of ConvertBGRAToRGB
1463de568abf Android.mk: use -fvisibility=hidden
14643c2a61b0 remove some unneeded casts
14659ac063c3 add dsp functions for SmartYUV
146622efabdd Merge "smart_yuv: switch to planar instead of packed r/g/b processing"
14671d6e7bf3 smart_yuv: switch to planar instead of packed r/g/b processing
14680a3838ca fix bug in RefineUsingDistortion()
1469c0699515 webpmux -duration: set default 'end' value equal to 'start'
147083cbfa09 Import: use relative pointer offsets
1471a1ade40e PreprocessARGB: use relative pointer offsets
1472fd4d090f ConvertWRGBToYUV: use relative pointer offsets
14739daad459 ImportYUVAFromRGBA: use relative pointer offsets
1474f90c60d1 Merge "add a "-duration duration,start,end" option to webpmux"
14753f182d36 add a "-duration duration,start,end" option to webpmux
1476342e15f0 Import: use relative pointer offsets
14771147ab4e PreprocessARGB: use relative pointer offsets
1478e4cd4daf fix filtering auto-adjustment
1479e7152856 fix doc and code snippet for WebPINewDecoder() doc
1480de9fa507 ConvertWRGBToYUV: use relative pointer offsets
1481deb1b831 ImportYUVAFromRGBA: use relative pointer offsets
1482c284780f imageio_util: add ImgIoUtilCheckSizeArgumentsOverflow
1483e375080d gifdec,Remap: avoid out of bounds colormap read
1484c222a053 additional fix for stride type as size_t
1485bb233617 fix potential overflow when width * height * 4 >= (1<<32)
1486883d41fb gif2webp: fix crash with NULL extension data
1487cac9a36a gifdec,Remap: avoid out of bounds colormap read
14884595e01f Revert "gifdec,Remap: avoid out of bounds colormap read"
1489fb52d443 gifdec: make some constants unsigned
1490f048d38d gifdec,Remap: avoid out of bounds colormap read
149131b1e343 fix SSIM metric ... by ignoring too-dark area
14922f51b614 introduce WebPPlaneDistortion to compute plane distortion
14930104d730 configure: fix NEON flag detection under gcc 6
1494265abbe9 Merge "additional fix for stride type as size_t"
1495f7601aa6 Merge "Introduce a generic WebPGetImageReader(type) function"
1496ce873320 Introduce a generic WebPGetImageReader(type) function
14972a2773ea imageio/*dec,Read*: add input parameter checks
14989f5c8eca additional fix for stride type as size_t
14994eb5df28 remove unused stride fields from VP8Iterator
150011bc423a MIN_LENGTH cleanups.
1501273d035a Merge "fix a typo in WebPPictureYUVAToARGB's doc"
15024db82a17 Merge "fix potential overflow when width * height * 4 >= (1<<32)"
1503e2affacc fix potential overflow when width * height * 4 >= (1<<32)
1504dc789ada fix a typo in WebPPictureYUVAToARGB's doc
1505539f5a68 Fix non-included header in config.c.
1506aaf2a6a6 systematically call WebPDemuxReleaseIterator() on dec->prev_iter_
150720ef9915 Merge "imageio_util: add ImgIoUtilCheckSizeArgumentsOverflow"
1508bc86b7a8 imageio_util: add ImgIoUtilCheckSizeArgumentsOverflow
1509806f6279 gif2webp: fix crash with NULL extension data
151068ae5b67 Add libwebp/src/mux/animi.h
151128ce3043 Remove some errors when compiling the code as C++.
1512b34abcb8 Favor keeping the areas locally similar in spatial prediction mode selection
1513ba843a92 fix some SSIM calculations
151451b71fd2 Merge "vwebp: ensure setenv() is available in stdlib.h"
1515fb01743a get_disto: fix the r/g/b order for luma calculation
1516bfab8947 vwebp: ensure setenv() is available in stdlib.h
15179310d192 vwebp: handle window resizing properly
1518f79450ca Speedup ApplyMap.
1519cfdda7c6 Merge "prevent 32b overflow for very large canvas_width / height"
1520e36396ba Merge "get_disto: new option to compute SSIM map and convert to gray"
152118a9a0ab Add an API to import a color-mapped image.
152230d43706 Speed-up Combined entropy for palettized histograms.
152336aa087b get_disto: new option to compute SSIM map and convert to gray
152486a84b35 2x faster SSE2 implementation of SSIMGet
1525b8384b53 lower WEBP_MAX_ALLOCABLE_MEMORY default
15261c364400 prevent 32b overflow for very large canvas_width / height
1527eee0cce1 Merge "Small LZ77 speedups."
15285f1caf29 Small LZ77 speedups.
15291effde7b fix anim_util.c compilation when HAVE_GIF is not defined.
1530a2fe9bf4 Speedup TrellisQuantizeBlock().
1531573cce27 smartYUV improvements
153221e7537a  fix infinite loop in case of PARTITION0 overflow
1533053a1565 Merge "Change the rule of picking UV mode in MBAnalyzeBestUVMode()"
15341377ac2e Change the rule of picking UV mode in MBAnalyzeBestUVMode()
15357c1fb7d0 fix uint32_t initialization (0. -> 0)
1536bfff0bf3 speed-up SSIM calculation
153764577de8 De-VP8L-ize GetEntropUnrefinedHelper.
1538a7be7328 Merge "refactor the PSNR / SSIM calculation code"
153950c3d7da refactor the PSNR / SSIM calculation code
1540d6228aed indentation fix after I7055d3ee3bd7ed5e78e94ae82cb858fa7db3ddc0
1541dd538b19 Remove unused declaration.
15426cc48b17 Move some lossless logic out of dsp.
154378363e9e Merge "Remove a redundant call to InitLeft() in VP8IteratorReset()"
1544ffd01929 Refactor VP8IteratorNext().
1545c4f6d9c9 Remove a redundant call to InitLeft() in VP8IteratorReset()
1546c27d8210 Merge "smartYUV: simplify main loop"
154707795296 smartYUV: simplify main loop
1548c9b45863 Split off common lossless dsp inline functions.
1549490ae5b1 smartYUV: improve initial state for faster convergence
1550894232be smartYUV: fix and simplify the over-zealous stop criterion
15518de08483 Remove unused code in webpi.h
155241cab7fe imageio/Android.mk: correct imagedec dependencies
155382c91c70 Merge "libimageenc.a: extract image-saving code from dwebp"
1554af1ad3e2 libimageenc.a: extract image-saving code from dwebp
1555dd7309e3 Merge "doc: use two's complement explicitly for uint8->int8 conversion"
15566105777e Merge "add gif2webp to CMake"
155713ae011e doc: use two's complement explicitly for uint8->int8 conversion
15584bda0cfb add gif2webp to CMake
15596029c7fe Merge "remove mention of fragment, frgm, FRGM, etc."
1560545c147f remove mention of fragment, frgm, FRGM, etc.
15615b46f7fc cwebp.1: improve some grammar
15629e478f80 dec/vp8l.c: add assertions in EmitRescaledRowsRGBA/YUVA
156343bd8958 Make gif transparent color to be transparent black
15640887fc2d Merge "get_disto: add a '-o file' option to save a diff map"
15650de48e18 get_disto: add a '-o file' option to save a diff map
15660a57ad0d cosmetics: WebPSafeAlloc -> WebPSafeMalloc
15670a4699bc Merge "WebPPictureDistortion(): free() -> WebPSafeFree()"
156829fedbf5 Anim_encoder: correctly handle enc->prev_candidate_undecided_
156932dead4e WebPPictureDistortion(): free() -> WebPSafeFree()
157085cd5d06 Smarter LZ77 for uniform regions.
15716585075f Change PixelsAreSimilar() to handle black pixels correctly.
1572c0a27fd2 vwebp: Clear previous frame when a key triggers a redraw
157357a5e3b6 webp_quality should return '0' in case of success.
15747f1b897b Faster stochastic histogram merging.
157548c810b8 Merge "remove WEBP_FORCE_ALIGNED and use memcpy() instead."
15763884972e remove WEBP_FORCE_ALIGNED and use memcpy() instead.
1577485cac1a switch libimagedec.a and libimageio_util.a to avoid undefined symbol
1578005e15b1 Merge "{extras,mux}/Makefile.am: add missing -lm"
15796ab496ed fix some 'unsigned integer overflow' warnings in ubsan
15808a4ebc6a Revert "fix 'unsigned integer overflow' warnings in ubsan"
15819d4f209f Merge changes I25711dd5,I43188fab
1582e44f5248 fix 'unsigned integer overflow' warnings in ubsan
158327b5d991 Fix assertions in WebPRescalerExportRow()
158474f6f9e7 Add descriptions of default configuration in help info.
1585aaf2530c {extras,mux}/Makefile.am: add missing -lm
15861269dc7c Refactor VP8LColorCacheContains()
158740872fb2 dec_neon,NeedsHev: micro optimization
15887b54e26b Add a CMake option for WEBP_SWAP_16BIT_CSP.
1589d2223d8d Fix missing cpu-features for Android.
1590bf16a4b4 Merge "cpu.cmake: improve webp_check_compiler_flag output"
1591ee1057e3 cpu.cmake: improve webp_check_compiler_flag output
1592b551e587 cosmetics: add {}s on continued control statements
1593d2e4484e dsp/Makefile.am: put msa source in correct lib
1594c7f66c82 Merge "utils/thread.c,cosmetics: join a few lines"
159598d8f295 Merge "examples/Makefile.am,cosmetics: sort binary targets"
159639f4ffbc utils/thread.c,cosmetics: join a few lines
1597a86ce2b1 Merge "extras/Makefile.am: don't install libwebpextras"
15986fa9fe24 extras/Makefile.am: don't install libwebpextras
15990b2c58a9 Fix an unsigned integer overflow error in enc/cost.h
1600d7ce4a2e examples/Makefile.am,cosmetics: sort binary targets
1601386e4ba2 Reset segment id if we decide not to update segment map
16027b87e848 Merge "Add MSA optimized YUV to RGB upsampling functions"
1603d3ddacb6 Add MSA optimized YUV to RGB upsampling functions
1604eb98d8d8 webp_quality: detect lossless format and features
1605ebee57f4 move imageio/example_util.[hc] (back to) examples/
160699542bbf webpdec: s/ExUtil//
1607da573cf4 imageio_util: s/ExUtil/ImgIoUtil/
1608bdda5bd4 split example_util.h
160915ed462b .gitignore: add extras/{get_disto,webp_quality}
16107be57489 Merge "VP8EstimateQuality(): roughty estimate webp bitstream quality factor"
161157020525 Makefile.vc: add missing imageio target
1612e8ab6a82 VP8EstimateQuality(): roughty estimate webp bitstream quality factor
1613fee7b3d6 Merge "'extras/get_disto' example: compute PSNR between two files"
16141e7d4401 'extras/get_disto' example: compute PSNR between two files
16154cecab63 pngdec.c,jpegdec.[hc]: remove unnecessary includes
1616259f0434 makefile.unix: normalize image decode lib name
1617ed34c39b fix: examples/libexample_dec.a => imageio/libexample_dec.a
161833d8d0d4 Merge "move examples/{example_util,image_dec} to imageio/"
1619c960b82e Merge "extras.h: correct include guard"
1620fe3cd28a Merge ".gitignore: add .gradle, /build"
162145fbeba5 Merge "Do token recording and counting in a single loop"
16224f33c820 .gitignore: add .gradle, /build
1623c379b55a move examples/{example_util,image_dec} to imageio/
16245108d9aa extras.h: correct include guard
1625ad497fbc move src/extras to the top-level
16260c0fb832 Do token recording and counting in a single loop
16279ac74f92 Add MSA optimized rescaling functions
1628cb19dbc1 Add MSA optimized color transform functions
16293f4042b5 WebPAnimEncoder: If 'minimize_size' and 'allow_mixed' on, try lossy + lossless.
16305e2eb89e cosmetics,dsp/*msa.c: associate '*' with the type
16315b60db5c FastMBAnalyze() for quick i16/i4 decision
1632567e6977 Add MSA optimized CollectHistogram function
1633c54ab8dd Add MSA optimized quantization functions
1634ec6f68c5 Merge "Remove QuantizeBlockWHT() in enc.c"
16352a5c417c Apply the RLE heuristic to LZ77.
163691b59e88 Remove QuantizeBlockWHT() in enc.c
1637fe572737 Add MSA optimized SSE functions
16386b53ca87 cosmetics,(dec|enc)_sse2.c: fix indent
1639b15d00d9 Merge "Add MSA optimized encoder IntraChromaPreds function"
1640afe3cec8 Add MSA optimized encoder IntraChromaPreds function
1641fc8cad9f reduce the number of malloc/free cycles in huffman.c
16427b4b05e0 Add MSA optimized encoder Intra16Preds function
1643c18787a0 Add MSA optimized encoder Intra4Preds function
1644479d1908 webpmux: Also print compression info per frame.
1645a80e8cfd Provide support for CMake on Android studio 2.2.
16466c628410 Split the main CMake file.
1647bbb6ecd9 Merge "Add MSA optimized distortion functions"
16487915396f Add MSA optimized distortion functions
1649652e944f Merge "build.gradle: remove tab"
1650c0991a14 io,EmitRescaledAlphaYUV: factor out a common expr
165148bf5ed1 build.gradle: remove tab
1652bfef6c9f Merge tag 'v0.5.1'
16533d97bb75 update ChangeLog (tag: v0.5.1)
1654deb54d91 Clarify the expected 'config' lifespan in WebPIDecode()
1655435308e0 Add MSA optimized encoder transform functions
1656dce64bfa Add MSA optimized alpha filter functions
1657429120d0 Add MSA optimized color transform functions
1658c7e2d245 update ChangeLog (tag: v0.5.1-rc5)
165955b2fede normalize the macros' "do {...} while (0)" constructs
1660701c772e Add MSA optimized colorspace conversion functions
1661c7eb06f7 Fix corner case in CostManagerInit.
1662f918cb10 fix rescaling bug: alpha plane wasn't filled with 0xff
1663ab7937a5 gif2webp: normalize the number of .'s in the help message
16643cdec847 vwebp: normalize the number of .'s in the help message
1665bdf6241e cwebp: normalize the number of .'s in the help message
166606a38c7b fix rescaling bug: alpha plane wasn't filled with 0xff
1667319e37be Improve lossless compression.
16686a197937 Add MSA optimized intra pred chroma functions
1669447adbce 'our bug tracker' -> 'the bug tracker'
167097b9e644 normalize the number of .'s in the help message
1671293d786f Added MSA optimized intra prediction 16x16 functions
16720afa0ce2 Added MSA optimized intra prediction 4x4 functions
1673a6621bac Added MSA optimized simple edge filtering functions
1674bb50bf42 pngdec,ReadFunc: throw an error on invalid read
167538063af1 decode.h,WebPGetInfo: normalize function comment
16761ebf193c Added MSA optimized chroma edge filtering functions
16779ad2352d Merge "Added MSA optimized edge filtering functions"
167860751096 Added MSA optimized edge filtering functions
16799e8e1b7b Inline GetResidual for speed.
16807d58d1b7 Speed-up uniform-region processing.
16818ec7032b simplify HistogramCombineEntropyBin()
168223e29cb1 Merge "Fix a boundary case in BackwardReferencesHashChainDistanceOnly." into 0.5.1
1683472a049b remove bin_map[] allocation altogether
16840bb23b2c free -> WebPSafeFree()
1685a977b4b5 Merge "rewrite the bin_map clustering to use less memory"
16863591ba66 rewrite the bin_map clustering to use less memory
1687e6ac450c utils.[hc]: s/MAX_COLOR_COUNT/MAX_PALETTE_SIZE/
1688e7b91772 Merge "DecodeImageData(): change the incorrect assert" into 0.5.1
16892abfa54f DecodeImageData(): change the incorrect assert
16905a48fcd8 Merge "configure: test for -Wfloat-conversion"
16910174d18d Fix a boundary case in BackwardReferencesHashChainDistanceOnly.
16926a9c262a Merge "Added MSA optimized transform functions"
1693cfbcc5ec Make sure to consider small distances in LZ77.
16945e60c42a Added MSA optimized transform functions
16953dc28d76 configure: test for -Wfloat-conversion
1696f2a0946a add some asserts to delimit the perimeter of CostManager's operation
16979a583c66 fix invalid-write bug for alpha-decoding
1698f66512db make gradlew executable
16996fda58f1 backward_references: quiet double->int warning
1700a48cc9d2 Merge "Fix a compression regression for images with long uniform regions." into 0.5.1
1701cc2720c1 Merge "Revert an LZ77 boundary constant." into 0.5.1
1702059aab4f Fix a compression regression for images with long uniform regions.
1703b0c7e49e Check more backward matches with higher quality.
1704a3611513 Revert an LZ77 boundary constant.
17058190374c README: fix typo
17067551db44 update NEWS
17070fb2269c bump version to 0.5.1
1708f4537610 update AUTHORS & .mailmap
17093259571e Refactor GetColorPalette method.
17101df5e260 avoid using tmp histogram in PreparePair()
17117685123a fix comment typos
1712a246b921 Speedup backward references.
171376d73f18 Merge "CostManager: introduce a free-list of ~10 intervals"
1714eab39d81 CostManager: introduce a free-list of ~10 intervals
17154c59aac0 Merge "mips msa webp configuration"
1716043c33f1 Merge "Improve speed and compression in backward reference for lossless."
171771be9b8c Merge "clarify variable names in HistogramRemap()"
17180ba7fd70 Improve speed and compression in backward reference for lossless.
17190481d42a CostManager: cache one interval and re-use it when possible
172041b7e6b5 Merge "histogram: fix bin calculation"
172196c3d624 histogram: fix bin calculation
1722fe9e31ef clarify variable names in HistogramRemap()
1723ce3c8247 disable near-lossless quantization if palette is used
1724e11da081 mips msa webp configuration
17255f8f998d mux: Presence of unknown chunks should trigger VP8X chunk output.
1726cadec0b1 Merge "Sync mips32 and dsp_r2 YUV->RGB code with C verison"
1727d9637758 Compute the hash chain once and for all for lossless compression.
172850a48665 Sync mips32 and dsp_r2 YUV->RGB code with C verison
1729eee788e2 Merge "introduce a common signature for all image reader function"
1730d77b877c introduce a common signature for all image reader function
1731ca8d9519 remove some obsolete TODOs
1732ae2a7222 collect all decoding utilities from examples/ in libexampledec.a
17330b8ae852 Merge "Move DitherCombine8x8 to dsp/dec.c"
173477cad885 Merge "ReadWebP: avoid conversion to ARGB if final format is YUVA"
1735ab8d6698 ReadWebP: avoid conversion to ARGB if final format is YUVA
1736f8b7ce9e Merge "test pointer to NULL explicitly"
17375df6f214 test pointer to NULL explicitly
173877f21c9c Move DitherCombine8x8 to dsp/dec.c
1739c9e6d865 Add gradle support
1740c65f41e8 Revert "Add gradle support"
1741bf731ede Add gradle support
174208333b85 WebPAnimEncoder: Detect when canvas is modified, restore only when needed.
17430209d7e6 Merge "speed-up MapToPalette() with binary search"
1744fdd29a3d speed-up MapToPalette() with binary search
1745cf4a651b Revert "Refactor GetColorPalette method."
17460a27aca3 Merge changes Idfa8ce83,I19adc9c4
1747f25c4406 WebPAnimEncoder: Restore original canvas between multiple encodes.
1748169004b1 Refactor GetColorPalette method.
1749576362ab VP8LDoFillBitWindow: support big-endian in fast path
1750ac49e4e4 bit_reader.c: s/VP8L_USE_UNALIGNED_LOAD/VP8L_USE_FAST_LOAD/
1751d39ceb58 VP8LDoFillBitWindow: remove stale TODO
17522ec2de14 Merge "Speed-up BackwardReferencesHashChainDistanceOnly."
17533e023c17 Speed-up BackwardReferencesHashChainDistanceOnly.
1754f2e1efbe Improve near lossless compression when a prediction filter is used.
1755e15afbce dsp.h: fix ubsan macro name
1756e53c9ccb dsp.h: add WEBP_UBSAN_IGNORE_UNSIGNED_OVERFLOW
1757af81fdb7 utils.h: quiet -fsanitize=undefined warnings
1758ea0be354 dsp.h: remove utils.h include
1759cd276aec utils/*.c: ../utils/utils.h -> ./utils.h
1760c8927131 utils/Makefile.am: add some missing headers
1761ea24e026 Merge "dsp.h: add WEBP_UBSAN_IGNORE_UNDEF"
1762369e264e dsp.h: add WEBP_UBSAN_IGNORE_UNDEF
17630d020a78 Merge "add runtime NEON detection"
17645ee2136a Merge "add VP8LAddPixels() to lossless.h"
176547435a61 add VP8LAddPixels() to lossless.h
17668fa6ac68 remove two ubsan warnings
176774fb56fb add runtime NEON detection
17684154a839 MIPS update to new Unfilter API
1769c80b9fc8 Merge "cherry-pick decoder fix for 64-bit android devices"
17706235147e cherry-pick decoder fix for 64-bit android devices
1771d41b8c43 configure: test for -Wformat-* w/-Wformat present
17725f95589f Fix WEBP_ALIGN in case the argument is a pointer to a type larger than a byte.
17732309fd5c replace num_parts_ by num_parts_minus_one_ (unsigned)
17749629f4bc SimplifySegments: quiet -Warray-bounds warning
1775de47492e Merge "update the Unfilter API in dsp to process one row independently"
17762102ccd0 update the Unfilter API in dsp to process one row independently
1777e3912d56 WebPAnimEncoder: Restore canvas before evaluating blending possibility.
17786e12e1e3 WebPAnimEncoder: Fix for single-frame optimization.
1779602f344a Merge changes I1d03acac,Ifcb64219
178095ecccf6 only apply color-mapping for alpha on the cropped area
178147dd0708 anim_diff: Add an experimental option for max inter-frame diff.
1782aa809cfe only allocate alpha_plane_ up to crop_bottom row
178331f2b8d8 WebPAnimEncoder: FlattenSimilarPixels(): look for similar
1784774dfbdc perform alpha filtering within the decoding loop
1785a4cae68d lossless decoding: only process decoded row up to last_row
1786238cdcdb Only call WebPDequantizeLevels() on cropped area
1787cf6c713a alpha: preparatory cleanup
1788b95ac0a2 Merge "VP8GetHeaders(): initialize VP8Io with sane value for crop/scale dimensions"
178989231394 VP8GetHeaders(): initialize VP8Io with sane value for crop/scale dimensions
17905828e199 use_8b_decode -> use_8b_decode_
17918dca0247 fix bug in alpha.c that was triggering a memory error in incremental mode
17929a950c53 WebPAnimEncoder: Disable filtering when blending is used with lossy encoding.
1793eb423903 WebPAnimEncoder: choose max diff for framerect based on quality.
1794ff0a94be WebPAnimEncoder lossy: ignore small pixel differences for frame rectangles.
1795f8040084 gif2webp: Remove the 'prev_to_prev_canvas' buffer.
17966d8c07d3 Merge "WebPDequantizeLevels(): use stride in CountLevels()"
1797d96fe5e0 WebPDequantizeLevels(): use stride in CountLevels()
1798ec1b2407 WebPPictureImport*: check output pointer
1799c0768769 Merge "Revert "Re-enable encoding of alpha plane with color cache for next release.""
180041f14bcb WebPPictureImport*: check src pointer
180164eed387 Pass stride parameter to WebPDequantizeLevels()
180297934e24 Revert "Re-enable encoding of alpha plane with color cache for next release."
1803e88c4ca0 fix -m 2 mode-cost evaluation (causing partition0 overflow)
18044562e83d Merge "add extra meaning to WebPDecBuffer::is_external_memory"
1805abdb109f add extra meaning to WebPDecBuffer::is_external_memory
1806875aec70 enc_neon,cosmetics: break long comment
180771e856cf GetMBSSIM,cosmetics: fix alignment
1808a90edffb fix missing 'extern' for SSIM function in dsp/
1809423ecaf4 move some SSIM-accumulation function for dsp/
1810f08e6624 Merge "Fix FindClosestDiscretized in near lossless:"
18110d40cc5e enc_neon,Disto4x4: remove an unnecessary transpose
1812e8feb20e Fix FindClosestDiscretized in near lossless:
181382006430 anim_util: quiet static analysis warning
1814a6f23c49 Merge "AnimEncoder: Support progress hook and user data."
1815a5193774 Merge "Near lossless feature: fix some comments."
1816da98d31c AnimEncoder: Support progress hook and user data.
181733357131 Near lossless feature: fix some comments.
18180beed01a cosmetics: fix indent after 2f5e898
18196753f35c Merge "FTransformWHT optimization."
18206583bb1a Improve SSE4.1 implementation of TTransform.
18217561d0c3 FTransformWHT optimization.
18227ccdb734 fix indentation after patch #328220
18236ec0d2a9 clarify the logic of the error path when decoding fails.
18248aa352b2 Merge "Remove an unnecessary transposition in TTransform."
1825db860884 Merge "remove useless #include"
18269960c316 Remove an unnecessary transposition in TTransform.
18276e36b511 Small speedup in FTransform.
18289dbd4aad Merge "fix C and SIMD flags completion."
1829e60853ea Add missing common_sse2.h file to makefile.unix
1830696eb2b0 fix C and SIMD flags completion.
18312b4fe33e Merge "fix multiple allocation for transform buffer"
18322f5e8986 fix multiple allocation for transform buffer
1833bf2b4f11 Regroup common SSE code + optimization.
18344ed650a1 force "-pass 6" if -psnr or -size is used but -pass isn't.
18353ef1ce98 yuv_sse2: fix -Wconstant-conversion warning
1836a7a03e9f Merge changes I4852d18f,I51ccb85d
18375e122bd6 gif2webp: set enc_options.verbose = 0 w/-quiet
1838ab3c2583 anim_encode,DefaultEncoderOptions: init verbose
18398f0dee77 Merge "configure: fix builtin detection w/-Werror"
18404a7b85a9 cmake: fix builtin detection w/-Werror
1841b74657fb configure: fix builtin detection w/-Werror
18423661b980 Add a CMakeLists.txt
184375f4af4d remove useless #include
18446c1d7631 avoid Yoda style for comparison
18458ce975ac SSE optimization for vector mismatch.
18467db53831 Merge tag 'v0.5.0'
184737f04949 update ChangeLog (tag: v0.5.0-rc1, tag: v0.5.0, origin/0.5.0)
18487e7b6ccc faster rgb565/rgb4444/argb output
18494c7f565f update NEWS
18501f62b6b2 update AUTHORS
1851e224fdc8 update mailmap
185271100500 bump version to 0.5.0
1853230a685e README: update help text, repo link
1854d48e427b Merge "demux: accept raw bitstreams"
185599a01f4f Merge "Unify some entropy functions."
18564b025f10 Merge "configure: disable asserts by default"
185792cbddf8 Merge "fix PrintBlockInfo()"
1858ca509a33 Unify some entropy functions.
1859367bf903 fix PrintBlockInfo()
1860b0547ff0 move back common constants for lossless_enc*.c into the .h
1861fb4c7832 lossless: simpler alpha cleanup preprocessing
1862ba7f4b68 Merge "anim_diff: add brief description of options"
186347ddd5a4 Move some codec logic out of ./dsp .
1864b4106c44 anim_diff: add brief description of options
1865357f455d yuv_sse2: fix 32-bit visual studio build
1866b9d80fa4 configure: disable asserts by default
18677badd3da cosmetic fix: sizeof(type) -> sizeof(*var)
186880ce27d3 Speed up 24-bit packing / unpacking in YUV / RGB conversions.
186968eebcb0 remove a TODO about rotation
18702dee2966 remove few obsolete TODO about aligned loads in SSE2
1871e0c0bb34 remove TODO about unused ref_lf_delta[]
18729cf1cc2b remove few TODO:   * 256 -> RD_DISTO_MULT   * don't use TDisto for UV mode picking
187379189645 Merge changes from topic 'demux-fragment-cleanup'
187447399f92 demux: remove GetFragment()
1875d3cfb79a demux: remove dead fragment related TODO
1876ab714b8a demux, Frame: remove is_fragment_ field
1877b105921c yuv_sse2, cosmetics: fix indent
1878466c92e8 demux,WebPIterator: remove fragment_num/num_fragments
187911714ff1 demux: remove WebPDemuxSelectFragment
1880c0f7cc47 fix for bug #280: UMR in next->bits
1881578beeb8 Merge "enc/Makefile.am: add missing headers"
18821a819f00 makefile.unix: make visibility=hidden the default
1883d4f9c2ef enc/Makefile.am: add missing headers
1884846caff4 configure: check for -fvisibility=hidden
18853f3ea2c5 demux: accept raw bitstreams
1886d6dad5d0 man cwebp: add precision about exactness of the 'lossless' mode
188746bb1e34 Merge "gifdec: remove utils.h include"
18882b882e94 Merge "Makefile.vc: define WEBP_HAVE_GIF for gifdec.c"
1889892b9238 Merge "man/*, AUTHORS: clarify origin of the tool"
1890e5687a18 Merge "fix optimized build with -mcmodel=medium"
1891e56e6859 Makefile.vc: define WEBP_HAVE_GIF for gifdec.c
18924077d944 gifdec: remove utils.h include
1893b5e30dac man/*, AUTHORS: clarify origin of the tool
1894b275e598 fix optimized build with -mcmodel=medium
189564da45a9 cosmetics, cwebp: fix indent
1896038a060d Merge "add disto-based refinement for UV mode (if method = 1 or 2)"
18972835089d Provide an SSE2 implementation of CombinedShannonEntropy.
1898e6c93519 add disto-based refinement for UV mode (if method = 1 or 2)
189904507dc9 Merge "fix undefined behaviour during shift, using a cast"
1900793c5261 Merge "wicdec: add support for reading from stdin"
1901d3d16397 Optimize the heap usage in HistogramCombineGreedy.
1902202a710b fix undefined behaviour during shift, using a cast
190314d27a46 improve method #2 by merging DistoRefine() and  SimpleQuantize()
1904cb1ce996 Merge "10% faster table-less SSE2/NEON version of YUV->RGB conversion"
1905ac761a37 10% faster table-less SSE2/NEON version of YUV->RGB conversion
190679fcf29a wicdec: add support for reading from stdin
1907015f173f Merge "cwebp: add support for stdin input"
1908a9947c32 cwebp: add support for stdin input
19097eb01ff3 Merge "Improved alpha cleanup for the webp encoder when prediction transform is used."
1910fb8c9106 Merge "introduce WebPMemToUint32 and WebPUint32ToMem for memory access"
1911bd91af20 Merge "bit_reader: remove aarch64 BITS TODO"
19126c702b81 Speed up hash chain initialization using memset.
19134c60f63c make ReadPNG and ReadJPEG take a filename instead of a FILE
1914464ed10f bit_reader: remove aarch64 BITS TODO
1915d478e589 Merge "configure: update issue tracker"
191669381113 Improved alpha cleanup for the webp encoder when prediction transform is used.
19172c08aac8 introduce WebPMemToUint32 and WebPUint32ToMem for memory access
1918010ca3d1 Fix FindMatchLength with non-aligned buffers.
1919a90e1e3f README: add prerequisites for an autoconf build
1920458f0866 configure: update issue tracker
192133914595 vwebp: work around the transparent background with GLUT bug
1922e4a7eed4 cosmetics: fix indent
192308375129 Merge "Make a separate case for low_effort in CopyImageWithPrediction"
1924aa2eb2d4 Merge "cosmetics: fix indent"
1925b7551e90 cosmetics: fix indent
19265bda52d4 Make a separate case for low_effort in CopyImageWithPrediction
192766fa598a Merge "configure: fix intrinsics build w/older gcc"
19285ae220be backward_references.c: Fixed compiler warning
19291556da09 Merge "configure: restore 2 warnings"
193071a17e58 configure: restore 2 warnings
19319eeabc07 configure: fix intrinsics build w/older gcc
1932363babe2 Merge "fix some warning about unaligned 32b reads"
1933a1411782 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.
1934829bd141 Combine Huffman cost and bit entropy into one loop
1935a7a954c8 Merge "lossless: make prediction in encoder work per scanline"
193661b605b4 Merge "fix of undefined multiply (int32 overflow)"
1937239421c5 lossless: make prediction in encoder work per scanline
1938f5ca40e0 fix of undefined multiply (int32 overflow)
19395cd2ef4c Merge changes from topic 'win-threading-compat'
194076ce9187 Makefile.vc: enable WEBP_USE_THREAD for windows phone
1941d2afe974 thread: use CreateThread for windows phone
19420fd0e12b thread: use WaitForSingleObjectEx if available
194363fadc9f thread: use InitializeCriticalSectionEx if available
1944110ad583 thread: use native windows cond var if available
1945912c9fdf dec/webp: use GetLE(24|32) from utils
1946f1694481 utils/GetLE32: correct uint32 promotion
1947158763de Merge "always call WebPInitSamplers(), don't try to be smart"
19483770f3bb Merge "cleanup the YFIX/TFIX difference by removing some code and #define"
1949a40f60a9 Merge "3% speed improvement for lossless webp encoder for low effort mode:"
1950ed1c2bc6 always call WebPInitSamplers(), don't try to be smart
1951b8c44f1a 3% speed improvement for lossless webp encoder for low effort mode:
1952997e1038 cleanup the YFIX/TFIX difference by removing some code and #define
1953d73d1c8b Merge "Make discarding invisible RGB values (cleanup alpha) the default."
19541f9be97c Make discarding invisible RGB values (cleanup alpha) the default.
1955f240117b Make dwebp listen more to the -quiet flag
1956b37b0179 fix for issue #275: don't compare to out-of-bound pointers
195721735e06 speed-up trivial one-symbol decoding case for lossless
1958397863bd Refactor CopyPlane() and CopyPixels() methods: put them in utils.
19596ecd72f8 Re-enable encoding of alpha plane with color cache for next release.
19601f7148a4 Merge "remove unused fields from WebPDecoderOptions and WebPBitstreamFeatures"
19616ae395fa Merge "use ExReadFile() for ReadYUV()"
19628076a00e gitignore list: add anim_diff.
19631c1702d8 use ExReadFile() for ReadYUV()
1964775d3a37 remove unused fields from WebPDecoderOptions and WebPBitstreamFeatures
1965c13245c7 AnimEncoder: Add a GetError() method.
1966688b265d AnimDecoder API: Add a GetDemuxer() method.
19671aa4e3d6 WebPAnimDecoder: add an option to enable multi-threaded decoding.
19683584abca AnimDecoder: option to decode to common color modes.
1969afd5a62c Merge "mux.h does NOT need to include encode.h"
19708550d443 Merge "migrate anim_diff tool from C++ to C89"
197196201e50 migrate anim_diff tool from C++ to C89
1972945cfa3b mux.h does NOT need to include encode.h
19738da07e8d Merge "~2x faster SSE2 RGB24toY, BGR24toY, ARGBToY|UV"
1974bfd3fc02 ~2x faster SSE2 RGB24toY, BGR24toY, ARGBToY|UV
197502432427 man/cwebp.1, cosmetics: escape '-'s
197696f5b423 man/cwebp: group lossy-only options
197752fdbdfe extract some RGB24 to Luma conversion function from enc/ to dsp/
1978ab8c2300 add missing \n
19798304179a sync NEWS with 0.4.4
19805bd04a08 sync versions with 0.4.4
19818f1fcc15 Merge "Move ARGB->YUV functions from dec/vp8l.c to dsp/yuv.c"
198225bf2ce5 fix some warning about unaligned 32b reads
1983922268fd s/TIFF/WebP
1984fa8927ef Move ARGB->YUV functions from dec/vp8l.c to dsp/yuv.c
19859b373598 Merge "for ReadXXXX() image-readers, use the value of pic->use_argb"
1986f7c507a5 Merge "remove unnecessary #include "yuv.h""
19877861578b for ReadXXXX() image-readers, use the value of pic->use_argb
198814e4043b remove unnecessary #include "yuv.h"
1989469ba2cd vwebp: fix incorrect clipping w/NO_BLEND
19904b9186b2 update issue tracker url
1991d64d376c change WEBP_ALIGN_CST value to 31
1992f717b828 vp8l.c, cosmetics: fix indent after 95509f9
1993927ccdc4 Merge "fix alignment of allocated memory in AllocateTransformBuffer"
1994fea94b2b fix alignment of allocated memory in AllocateTransformBuffer
19955aa8d61f Merge "MIPS: rescaler code synced with C implementation"
1996e7fb267d MIPS: rescaler code synced with C implementation
199793c86ed5 Merge "format_constants.h: MKFOURCC, correct cast"
19985d791d26 format_constants.h: MKFOURCC, correct cast
199965726cd3 dsp/lossless: Average2, make a constant unsigned
2000d26d9def Use __has_builtin to check clang support
200112ec204e moved ALIGN_CST into util/utils.h and renamed WEBP_ALIGN_xxx
2002a2640838 Merge "rescaler: ~20% faster SSE2 implementation for lossless ImportRowExpand"
20033fb600d5 Merge "wicdec: fix alpha detection w/64bpp BGRA/RGBA"
200467c547fd rescaler: ~20% faster SSE2 implementation for lossless ImportRowExpand
200599e3f812 Merge "large re-organization of the delta-palettization code"
200695509f99 large re-organization of the delta-palettization code
200774fb458b fix for weird msvc warning message
2008ae49ad86 Merge "SSE2 implementation of ImportRowShrink"
2009932fd4df SSE2 implementation of ImportRowShrink
2010badfcbaa wicdec: fix alpha detection w/64bpp BGRA/RGBA
201135cafa6c Merge "iosbuild: fix linking with Xcode 7 / iOS SDK 9"
2012b0c9d8af label rename: NO_CHANGE -> NoChange
2013b4e731cd neon-implementation for rescaler code
2014db1321a6 iosbuild: fix linking with Xcode 7 / iOS SDK 9
20156dfa5e3e rescaler: better handling of the fxy_scale=0 special case.
201655c05293 Revert "rescaler: better handling of the fxy_scale=0 special case."
20179f226bf8 rescaler: better handling of the fxy_scale=0 special case.
2018f7b8f907 delta_palettization.*: add copyright
2019c1e1b710 Changed delta palette to compress better
20200dd28267 Merge "Add delta_palettization feature to WebP"
202148f66b66 Add delta_palettization feature to WebP
202227933e2a anim_encoder: drop a frame if it has same pixels as the prev frame.
2023df9f6ec8 Merge "webpmux/DisplayInfo: send non-error output to stdout"
20248af4993b Merge "rescaler_mips_dsp_r2: cosmetics, fix indent"
20252b9d2495 Merge "rescaler: cosmetics, join two lines"
2026cc020a8c webpmux/DisplayInfo: send non-error output to stdout
2027a288e746 configure: add -Wshorten-64-to-32
2028c4c3cf2d pngdec: fix type conversion warnings
2029bef8e97d webpmux: fix type conversion warning
20305a84460d rescaler_mips_dsp_r2: cosmetics, fix indent
2031acde0aae rescaler: cosmetics, join two lines
2032306ce4fd rescaler: move the 1x1 or 2x1 handling one level up
2033cced974b remove _mm_set_epi64x(), which is too specific
203456668c9f fix warnings about uint64_t -> uint32_t conversion
203576a7dc39 rescaler: add some SSE2 code
20361df1d0ee rescaler: harmonize function protos
20379ba1894b rescaler: simplify ImportRow logic
20385ff0079e fix rescaler vertical interpolation
2039cd82440e VP8LAllocateHistogramSet: align histogram[] entries
2040a406b1dd Merge "fix memory over-allocation in lossless rescaler init"
20410fde33e3 add missing const in VP8InitFrame signature
2042ac7d5e8d fix memory over-allocation in lossless rescaler init
2043017f8ccc Loosen the buffer size checks for Y/U/V/A too.
204415ca5014 loosen the padding check on buffer size
2045d623a870 dec_neon: add whitespace around stringizing operator
204629377d55 dsp/mips: cosmetics: add whitespace around XSTR macro
2047eebaf97f dsp/mips: add whitespace around stringizing operator
2048d39dc8f3 Create a WebPAnimDecoder API.
204903fb7522 gif2webp: print output file size
205014efabbf Android: limit use of cpufeatures
20517b83adbe preparatory cosmetics for Rescaler code fix and clean-up
205277fb41c2 dec/vp8l/DecodeAlphaData: remove redundant cast
205390fcfcd9 Insert less hash chain entries from the beginnings of long copies.
2054bd55604d SSE2: add yuv444 converters, re-using yuv_sse2.c
205541a5d99d add a -quiet option to 'dwebp'
205680ab3edb Merge "README: update dwebp help output after 1e595fe"
205732b71b2e README: update dwebp help output after 1e595fe
20583ec11827 use the DispatchAlpha() call from dsp
2059c5f00621 incorporate bzero() into WebPRescalerInit() instead of call site
20603ebcdd41 remove duplicate "#include <stdlib.h>"
20611e595fe1 dwebp: add -resize as a synonym for -scale
206224a96932 dec: allow 0 as a scaling dimension
2063b9187242 utils/rescaler: add WebPRescalerGetScaledDimensions
2064923e8eda Merge "update NEWS"
2065020fd099 Merge "WebPPictureDistortion: support ARGB format for 'pic' when computing distortion."
20666a5292f6 update NEWS
206756a2e9f5 WebPPictureDistortion: support ARGB format for 'pic' when computing distortion.
20680ae582e4 configure: test and add -Wunreachable-code
2069c2f9dc06 bit_writer: convert VP8L macro values to immediates
2070b969f888 Reduce magic in palette reordering
2071acb297e9 anim_diff: add a -raw_comparison flag
2072155c1b22 Merge changes I76f4d6fe,I45434639
2073717e4d5a mips32/mipsDSPr2: function ImportRow rebased
20747df93893 fix rescaling bug (uninitialized read, see bug #254).
20755cdcd561 lossless_enc_neon: add VP8LTransformColor
2076a53c3369 lossless_neon: add VP8LTransformColorInverse
207799131e7f Merge changes I9fb25a89,Ibc648e9e
2078c4556766 simplify the main loop for downscaling
20792a010f99 lossless_neon: remove predictors 5-13
2080ca221bbc ll_enc_neon: enable VP8LSubtractGreenFromBlueAndRed
2081585d93db Container spec: clarify ordering of ALPH chunk.
208201d61fd9 lossless: ~20 % speedup
2083f722c8f0 lossless: Speed up ComputeCacheEntropy by 40 %
20841ceecdc8 add a VP8LColorCacheSet() method for color cache
208517eb6099 lossless: Allow copying from prev row in rle-mode.
2086f3a7a5bf lossless: bit writer optimization
2087d97b9ff7 Merge changes from topic 'lossless-enc-improvements'
20880250dfcc msvc: fix pointer type warning in BitsLog2Floor
208952931fd5 lossless: combine the Huffman code with extra bits
2090c4855ca2 lossless: Inlining add literal
20918e9c94de lossless: simplify HashChainFindCopy heuristics
2092888429f4 lossless: 0.5 % compression density improvement
20937b23b198 lossless: Add zeroes into the predicted histograms.
209485b44d8a lossless: encoding, don't compute unnecessary histo
2095d92453f3 lossless: Remove about 25 % of the speed degradation
20962cce0317 Faster alpha coding for webp
20975e75642e lossless: rle mode not to accept lengths smaller than 4.
209884326e4a lossless: Less code for the entropy selection
209916ab951a lossless: 0.37 % compression density improvement
2100822f113e add WebPFree() to the API
21010ae2c2e4 SSE2/SSE41: optimize SSE_16xN loops
210239216e59 cosmetics: fix indent after 32462a07
2103559e54ca Merge "SSE2: slightly faster FTransformWHT"
21048ef9a63b SSE2: slightly faster FTransformWHT
2105f27f7735 lossless_neon: enable VP8LAddGreenToBlueAndRed
210636e9c4bc SSE2: minor cosmetrics on in-loop filter code
21074741fac4 dsp/lossless_*sse2: remove some unnecessary inlines
21081819965e fix warning ("left shift of negative value") using a cast
210970170014 SSE2: speed-up some lossless-encoding functions
2110abcb0128 Merge "SSE2: slightly faster (~5%) AddGreenToBlueAndRed()"
21112df5bd30 Merge "Speedup to HuffmanCostCombinedCount"
21129e356d6b SSE2: slightly faster (~5%) AddGreenToBlueAndRed()
2113fc6c75a2 SSE2: 53% faster TransformColor[Inverse]
211449073da6 SSE2: 46% speed-up of TransformColor[Inverse]
211532462a07 Speedup to HuffmanCostCombinedCount
2116f3d687e3 SSE4.1 implementation of some lossless encoding functions
2117bfc300c7 SSE4.1 implementation of some alpha-processing functions
21187f9c98f2 Merge "sse2 in-loop: simplify SignedShift8b() a bit"
2119ef314a5d dec_sse2/GetNotHEV: micro optimization
2120a729cff9 sse2 in-loop: simplify SignedShift8b() a bit
2121422ec9fb simplify Load8x4() a bit
21228df238ec Merge "remove some duplicate FlipSign()"
2123751506c4 remove some duplicate FlipSign()
212465ef5afc Merge "lossless: 0.13% compression density gain"
21252beef2f2 lossless: 0.13% compression density gain
21263033f24c lossless: 0.06 % compression density improvement
212764960da9 dec_neon: add VE8uv / VE16
212814dbd87b dec_neon: add HE8uv / HE16
2129ac768011 introduce FTransform2 to perform two transforms at a time.
2130aa6065ae dec_neon: use vld1_dup(mem) rather than vdup(mem[0])
21318b63ac78 Merge "dec_neon: add TM16"
2132f51be09e Merge "dec_neon/TrueMotion: simply left border load"
2133dc48196b dec_neon: add TM16
2134ea95b305 dec_neon/TrueMotion: simply left border load
2135f262d612 speed-up SetResidualSSE2
2136bf46d0ac fix mips2 build target
2137929a0fdc enc_sse2/TTransform: simplify abs calculation
213817dbd058 enc_sse2/CollectHistogram: simplify abs calculation
2139a6c15936 dec_neon: add DC16 intra predictors
214003b4f50d Makefile.vc: add anim_diff build support.
21411b989874 Merge changes I9cd84125,Iee7e387f,I7548be72
2142acd7b5af Introduce a test tool anim_diff.
2143f274a96c dsp/enc_sse2: add luma4 intra predictors
2144040b11bd dsp/enc_sse2: add chroma intra predictors
2145aee021bb dsp/enc_sse2: add luma16 intra predictors
21469e00a499 makefile.unix: remove superclean target
2147cefc9c09 makefile.unix: clean up after extras target
21484c9af023 dec_neon: add DC8uvNoTopLeft
2149dd55b873 Merge "doc/webp-container-spec: update repo browser link"
2150f0486968 doc/webp-container-spec: update repo browser link
21519287761d Merge "GetResidualCostSSE2: simplify abs calculation"
21520e009366 dsp/cpu.c(x86): check maximum supported cpuid feature
2153b243a4bc GetResidualCostSSE2: simplify abs calculation
21546d4602b8 Merge "fix typo: constitutes -> constitute"
21555fe1fe37 fix typo: constitutes -> constitute
2156b83bd7c4 Merge "populate 'libwebpextras' with: import gray, rgb565 and rgb4444 functions"
2157b0114a32 Merge "histogram.h: cosmetics: remove unnecessary includes"
2158feab45ef gifdec: Move inclusion of webp/config.h to header.
2159dbba67d1 histogram.h: cosmetics: remove unnecessary includes
2160e978fec6 Merge "VP8LBitReader: fix remaining ubsan error with large shifts"
2161d6fe5884 Merge "ReconstructRow: move some one-time inits out of the main loop"
2162a21d647c ReconstructRow: move some one-time inits out of the main loop
21637a01c3c3 VP8LBitReader: fix remaining ubsan error with large shifts
21647fa67c9b change GetPixPairHash64() return type to uint32_t
2165ec1fb9f8 Merge "dsp/enc.c: cosmetics: move DST() def closer to use"
21667073bfb3 Merge "split 64-mult hashing into two 32-bit multiplies"
21670768b252 dsp/enc.c: cosmetics: move DST() def closer to use
21686a48b8f0 Merge "fix MSVC size_t->int conversion warning"
21691db07cde Merge "anim_encode: cosmetics: fix alignment"
2170e28271a3 anim_encode: cosmetics: fix alignment
21717fe357b8 split 64-mult hashing into two 32-bit multiplies
2172af74c145 populate 'libwebpextras' with: import gray, rgb565 and rgb4444 functions
217361214134 remove VP8Residual::cost unused field
2174e2544823 fix MSVC size_t->int conversion warning
2175b69a6c35 vwebp: don't redefine snprintf with VS2015+
21760ac29c51 AnimEncoder API: Consistent use of trailing underscores in struct.
2177d4845550 AnimEncoder API: Use timestamp instead of duration as input to Add().
21789904e365 dsp/dec_sse2: DC8uv / DC8uvNoLeft speedup
21797df20497 dsp/dec_sse2: DC16 / DC16NoLeft speedup
21808e515dfe Merge "makefile.unix: add some missing headers"
2181db12250f cosmetics: vp8enci.h: break long line
2182bf516a87 makefile.unix: add some missing headers
2183b44eda3f dsp: add DSP_INIT_STUB
218403e76e96 clarify the comment about double-setting the status in SetError()
21859fecdd71 remove unused EmitRGB()
218643f010dd move ReconstructRow to top
218782d98020 add a dec/common.h header to collect common enc/dec #defines
21885d4744a2 Merge "enc_sse41: add Disto4x4 / Disto16x16"
2189e38886a7 mux.h: Bump up ABI version
219046305ca6 configure: add --disable-<avx2|sse4.1|sse2>
21912fc8b658 CPPFLAGS->CFLAGS for detecting sse4.1 in preprocessor
21921a338fb3 enc_sse41: add Disto4x4 / Disto16x16
219394055503 encoding SSE4.1 stub for StoreHistogram + Quantize + SSE_16xN
2194c64659e1 remove duplicate variables after the lossless{_enc}.c split
219567ba7c7a enc_sse2: call local FTransform in CollectHistogram
219618249799 dsp: s/VP8LSetHistogramData/VP8SetHistogramData/
2197ede5e158 cosmetics: dsp/lossless.h: reorder prototypes
2198553051f7 dsp/lossless: split enc/dec functions
21999064adc8 Merge "conditionally add -msse4.1 in Makefile.unix"
2200cecf5096 dsp/yuv*.c: rework WEBP_USE_<arch> ifdef
22016584d398 dsp/upsampling*.c: rework WEBP_USE_<arch> ifdef
220280809422 dsp/rescaler*.c: rework WEBP_USE_<arch> ifdef
22031d93ddec dsp/lossless*.c: rework WEBP_USE_<arch> ifdef
220473805ff2 dsp/filters*.c: rework WEBP_USE_<arch> ifdef
2205fbdcef24 dsp/enc*.c: rework WEBP_USE_<arch> ifdef
220666de69c1 dsp/dec*.c: rework WEBP_USE_<arch> ifdef
220748e4ffd1 dsp/cost*.c: rework WEBP_USE_<arch> ifdef
220829fd6f90 dsp/argb*.c: rework WEBP_USE_<arch> ifdef
220980ff3813 dsp/alpha*.c: rework WEBP_USE_<arch> ifdef
2210bf09cf1e conditionally add -msse4.1 in Makefile.unix
2211e9570dd9 stub for SSE4.1 support.
22124a95384b Merge "dsp: add sse4.1 detection"
2213cabf4bd2 dsp: add sse4.1 detection
22144ecba1ab thread.h: rename interface param
2215b8d706c8 Merge "sync versions with 0.4.3"
2216ae64a711 Merge "add shell for libwebpextras"
221792a5da9c sync versions with 0.4.3
22189d4e2d16 Merge "~30% faster smart-yuv (-pre 4) with early-out criterion"
2219b1bdbbab ~30% faster smart-yuv (-pre 4) with early-out criterion
22207efb9748 Merge "Disable NEON code on Native Client"
2221ac4f5784 Disable NEON code on Native Client
22220873f85b AnimEncoder API: Support input frames in YUV(A) format.
22235c176d2d add shell for libwebpextras
222444bd9561 fix signature for VP8RecordCoeffTokens()
2225c9b8ea0e small cosmetics on TokenBuffer.
222676394c09 Merge "MIPS: dspr2: added optimization for TrueMotion"
22270f773693 WebPPictureRescale: add a note about 0 width/height
2228241bb5d9 MIPS: dspr2: added optimization for TrueMotion
22296cef0e4f examples/Android.mk: add webpmux_example target
223053c16ff0 Android.mk: add webpmux target
223121852a00 Android.mk: add webpdemux target
22328697a3bc Android.mk: add webpdecoder{,_static} targets
22334a670491 Android.mk: split source lists per-directory
2234b5e79422 MIPS: dspr2: Added optimization for some convert functions
22350f595db6 MIPS: dspr2: Added optimization for some convert functions
22368a218b4a MIPS: [mips32|dspr2]: GetResidualCost rebased
2237ef987500 Speedup method StoreImageToBitMask by 5%.
2238602a00f9 fix iOS arm64 build with Xcode 6.3
223923820507 1-2% faster encoding by removing an indirection in GetResidualCost()
2240eddb7e70 MIPS: dspr2: added otpimization for DC8uv, DC8uvNoTop and DC8uvNoLeft
224173ba2915 MIPS: dspr2: added optimization for functions RD4 and LD4
2242c7129da5 Merge "4-5% faster encoding using SSE2 for GetResidualCost"
224394380d00 MIPS: dspr2: added optimizaton for functions VE4 and DC4
22442a407092 4-5% faster encoding using SSE2 for GetResidualCost
224517e19862 Merge "MIPS: dspr2: added optimization for simple filtering functions"
22463ec404c4 Merge "dsp: normalize WEBP_TSAN_IGNORE_FUNCTION usage"
2247b969f5df dsp: normalize WEBP_TSAN_IGNORE_FUNCTION usage
2248d7b8e711 MIPS: dspr2: added optimization for simple filtering functions
2249235f774e Merge "MIPS: dspr2: Added optimization for function VP8LTransformColorInverse_C"
225042a8a628 MIPS: dspr2: Added optimization for function VP8LTransformColorInverse_C
2251b442bef3 Merge "ApplyFiltersAndEncode: only copy lossless stats"
2252b510fbfe doc/webp-container-spec: note MSB order for chunk diagrams
22539bc0f922 ApplyFiltersAndEncode: only copy lossless stats
22543030f115 Merge "dsp/mips: add some missing TSan annotations"
2255dfcf4593 Merge "MIPS: dspr2: Added optimization for function VP8LAddGreenToBlueAndRed_C"
225655c75a25 dsp/mips: add some missing TSan annotations
22572cb879f0 MIPS: dspr2: Added optimization for function VP8LAddGreenToBlueAndRed_C
2258e1556010 move some cost tables from enc/ to dsp/
2259c3a03168 Merge "picture_csp: fix build w/USE_GAMMA_COMPRESSION undefined"
226039537d7c Merge "VP8LDspInitMIPSdspR2: add missing TSan annotation"
22611dd419ce picture_csp: fix build w/USE_GAMMA_COMPRESSION undefined
226243fd3543 VP8LDspInitMIPSdspR2: add missing TSan annotation
2263c7233dfc Merge "VP8LDspInit: remove memcpy"
22640ec4da96 picture_csp::InitGammaTables*: add missing TSan annotations
226535579a49 VP8LDspInit: remove memcpy
226697f6aff8 VP8YUVInit: add missing TSan annotation
2267f9016d66 dsp/enc::InitTables: add missing TSan annotation
2268e3d9771a VP8EncDspCostInit*: add missing TSan annotations
2269d97c143d Merge "doc/webp-container-spec: cosmetics"
2270309b7908 MIPS: mips32: Added optimization for function SetResidualCoeffs
2271a987faed MIPS: dspr2: added optimization for function GetResidualCost
2272e7d3df23 doc/webp-container-spec: cosmetics
2273be6635e9 Merge "VP8TBufferClear: remove some misleading const's"
227402971e72 Merge "VP8EmitTokens: remove unnecessary param void cast"
22753b77e5a7 VP8TBufferClear: remove some misleading const's
2276aa139c8f VP8EmitTokens: remove unnecessary param void cast
2277c24d8f14 cosmetics: upsampling_sse2: add const to some casts
22781829c42c cosmetics: lossless_sse2: add const to some casts
2279183168f3 cosmetics: enc_sse2: add const to some casts
2280860badca cosmetics: dec_sse2: add const to some casts
22810254db97 cosmetics: argb_sse2: add const to some casts
22821aadf856 cosmetics: alpha_processing_sse2: add const to some casts
22831579de3c vwebp: clear canvas at the beginning of each loop
22844b9fa5d0 Merge "webp-container-spec: clarify background clear on loop"
22854c82284d Updated the near-lossless level mapping.
228656039479 webp-container-spec: clarify background clear on loop
228719f0ba0e Implement true-motion prediction in SSE2
2288774d4cb7 make VP8PredLuma16[] array non-const
2289d7eabb80 Merge "MIPS: dspr2: Added optimization for function CollectHistogram"
2290fe42739c Use integers for kmin/kmax for simplicity.
2291b9df35f7 AnimEncode API: kmax=0 should imply all keyframes.
22926ce296da MIPS: dspr2: Added optimization for function CollectHistogram
22932c906c40 vwebp: remove unnecessary static Help() prototype
2294be0fd1d5 Merge "dec/vp8: clear 'dither_' on skipped blocks"
2295e96170fe Merge "vwebp/animation: display last frame on end-of-loop"
22960f017b56 vwebp/animation: display last frame on end-of-loop
2297c86b40cc enc/near_lossless.c: fix alignment
229866935fb9 dec/vp8: clear 'dither_' on skipped blocks
2299b7de7946 Merge "lossless_neon: enable subtract green for aarch64"
230077724f70 SSE2 version of GradientUnfilter
2301416e1cea lossless_neon: enable subtract green for aarch64
230272831f6b Speedup AnalyzeAndInit for low effort compression.
2303a6597483 Speedup Analyze methods for lossless compression.
230498c81386 Enable Near-lossless feature.
2305c6b24543 AnimEncoder API: Fix for kmax=1 and default kmin case.
2306022d2f88 add SSE2 variants for alpha filtering functions
23072db15a95 Temporarily disable encoding of alpha plane with color cache.
23081d575ccd Merge "Lossless decoding: Remove an unnecessary if condition."
2309cafa1d88 Merge "Simplify backward refs calculation for low-effort."
23107afdaf84 Alpha coding: reorganize the filter/unfiltering code
23114d6d7285 Simplify backward refs calculation for low-effort.
2312ec0d1be5 Cleaup Near-lossless code.
23139814ddb6 Remove the post-transform near-lossless heuristic.
23144509e32e Lossless decoding: Remove an unnecessary if condition.
2315f2ebc4a8 Merge "Regression fix for lossless decoding"
2316783a8cda Regression fix for lossless decoding
23179a062b8e AnimEncoder: Bugfix for kmin = 1 and kmax = 2.
23180f027a72 simplify smart RGB->YUV conversion code
23190d5b334e BackwardReferencesHashChainFollowChosenPath: remove unused variable
2320f480d1a7 Fix to near lossless artefacts on palettized images.
2321d4615d08 Merge changes Ia1686828,I399fda40
2322cb4a18a7 rename HashChainInit into HashChainReset
2323f079e487 use uint16_t for chosen_path[]
2324da091212 MIPS: dspr2: Added optimization for function FTransformWHT
2325b8c20135 Merge "wicdec: (msvs) quiet some /analyze warnings"
23269b228b54 wicdec: (msvs) quiet some /analyze warnings
2327daeb276a Merge "MIPS: dspr2: Added optimization for MultARGBRow function"
2328cc087424 Merge "dsp/cpu: (msvs) add include for __cpuidex"
23294a82aab5 Merge changes I87544e92,I0bb6cda5
23307a191398 dwebp/WritePNG: mark png variables volatile
2331775dfad2 dwebp: include setjmp.h w/WEBP_HAVE_PNG
233247d26be7 dwebp: correct sign in format strings
2333f0e0677b VP8LEncodeStream: add an assert
2334c5f7747f VP8LColorCacheCopy: promote an int before shifting
23350de5f33e dsp/cpu: (msvs) add include for __cpuidex
23367d850f7b MIPS: dspr2: Added optimization for MultARGBRow function
233754875293 MIPS: dspr2: added optimization for function QuantizeBlock
23384fbe9cf2 dsp/cpu: (msvs) avoid immintrin.h on _M_ARM
23393fd59039 simplify/reorganize arguments for CollectColorBlueTransforms
2340b9e356b9 Disable costly TraceBackwards for method=0.
2341a7e7caa4 MIPS: dspr2: added optimization for function TransformColorRed
23422cb39180 Merge "MIPS: dspr2: added optimization for function TransformColorBlue"
2343279e6613 Merge "dsp/cpu: add include for _xgetbv() w/MSVS"
2344b6c0428e dsp/cpu: add include for _xgetbv() w/MSVS
2345d1c4ffae gif2webp: Move GIF decoding related code to a support library.
234607c39559 Merge "AnimEncoder API: Add info in README.mux"
23477b161973 MIPS: dspr2: added optimization for function TransformColorBlue
2348d7c4b02a cpu: fix AVX2 detection for gcc/clang targets
23499d299469 AnimEncoder API: Add info in README.mux
2350d581ba40 follow-up: clean up WebPRescalerXXX dsp function
2351f8740f0d dsp: s/USE_INTRINSICS/WEBP_USE_INTRINSICS/
2352ce73abe0 Merge "introduce a separate WebPRescalerDspInit to initialize pointers"
2353ab66beca introduce a separate WebPRescalerDspInit to initialize pointers
2354205c7f26 fix handling of zero-sized partition #0 corner case
2355cbcdd5ff Merge "move rescaler functions to rescaler* files in src/dsp/"
2356bf586e88 Merge changes I230b3532,Idf3057a7
23576dc79dc2 Merge "anim_encode: fix type conversion warnings"
235811fce25a Merge "dec_neon: remove returns from void functions"
2359c4e63f99 Makefile.vc: add gif2webp target
23604f43d38c enable NEON for Windows ARM builds
23613f6615ac Makefile.vc: add rudimentary Windows ARM support
2362e7c5954c dec_neon: remove returns from void functions
2363f79c163b anim_encode: fix type conversion warnings
23640f54f1ec Remove gif2webp_util which is no longer needed.
2365cbcbedd0 move rescaler functions to rescaler* files in src/dsp/
2366ac79ed19 webpmux: remove experimental fragment handling
2367e8694d4d mux: remove experimental FRGM parsing
23689e92b6ea AnimEncoder API: Optimize single-frame animated images
2369abbae279 Merge "Move over gif2webp to the new AnimEncoder API."
2370a28c4b36 MIPS: move WORK_AROUND_GCC define to appropriate place
2371012d2c60 MIPS: dspr2: added optimization for functions SSEAxB
237267720c8b Move over gif2webp to the new AnimEncoder API.
23739241ecf4 MIPS: dspr2: added optimization for function Average
23749422211d Merge "Tune BackwardReferencesLz77 for low_effort (m=0)."
2375df40057b Merge "Speedup VP8LGetHistoImageSymbols for low effort (m=0) mode."
2376ea08466d Tune BackwardReferencesLz77 for low_effort (m=0).
2377b0b973c3 Speedup VP8LGetHistoImageSymbols for low effort (m=0) mode.
2378c6d32927 argb_sse2: cosmetics
237967f601cd make the 'last_cpuinfo_used' variable names unique
2380b9489861 AnimEncoder API: Init method for default options.
2381856f8ec1 Merge "AnimEncoder API: Remove AnimEncoderFrameOptions."
2382c537514d Merge "AnimEncoder API: GenerateCandidates bugfix."
2383dc0ce039 Merge "AnimEncoder API: Compute change rectangle for first frame too."
2384f00b639b Merge "AnimEncoder API: In Assemble(), always set animation parameters."
238529ed796c Merge "AnimEncoder lib cleanup: prev to prev canvas not needed."
23869f0dd6e5 Merge "WebPAnimEncoder API: Header and implementation"
23875e56bbe0 AnimEncoder API: Remove AnimEncoderFrameOptions.
2388b902c3ea AnimEncoder API: GenerateCandidates bugfix.
2389ef3c39bb AnimEncoder API: Compute change rectangle for first frame too.
2390eec423ab AnimEncoder API: In Assemble(), always set animation parameters.
2391ae1c046e AnimEncoder lib cleanup: prev to prev canvas not needed.
23924b997ae4 WebPAnimEncoder API: Header and implementation
239372208bec move argb_*.o build target to encoder list
239495920538 Merge "multi-thread fix: lock each entry points with a static var"
23954c1b300a Merge "SSE2 implementation of VP8PackARGB"
2396fbcc2004 Merge "add -Wformat-nonliteral and -Wformat-security"
239780d950d9 add -Wformat-nonliteral and -Wformat-security
239804c20e75 Merge "MIPS: dspr2: added optimization for function Intra4Preds"
2399a437694a multi-thread fix: lock each entry points with a static var
2400ca7f60db SSE2 implementation of VP8PackARGB
240172d573f6 simplify the PackARGB signature
24024e2589ff demux: restore strict fragment flag check
24034ba8e074 Merge "webp-container-spec: remove references to fragments"
2404e752f0a6 Merge "demux: remove experimental FRGM parsing"
2405f8abb112 Merge changes I109ec4d9,I73fe7743
2406ae2188a4 MIPS: dspr2: added optimization for function Intra4Preds
24071f4b8642 move VP8EncDspARGBInit() call closer to where it's needed
240814108d78 dec_neon: add DC8uvNoTop / DC8uvNoLeft
2409d8340da7 dec_neon: add DC8uv
2410a66e66c7 webp-container-spec: remove references to fragments
24117ce8788b MIPS: dspr2: added optimization for function MakeARGB32
2412012e623d demux: remove experimental FRGM parsing
241387c3d531 method=0: Don't evaluate any predictor
24146f4fcb98 Merge "MIPS: dspr2: added optimization for function ImportRow"
241524284459 replace unneeded calls to HistogramCopy() by swaps
2416bdf7b40c MIPS: dspr2: added optimization for function ImportRow
2417e66a9225 Merge "MIPS: dspr2: added optimization for function ExportRowC"
2418c279fec1 MIPS: dspr2: added optimization for function ExportRowC
241931a9cf64 Speedup WebP lossless compression for low effort (m=0) mode with following: - Disable Cross-Color transform. - Evaluate predictors #11 (paeth), #12 and #13 only.
24209275d91c MIPS: dspr2: added optimization for function TrueMotion
242126106d66 Merge "enc_neon: fix building with non-Xcode clang (iOS)"
24221c4e3efe unroll the kBands[] indirection to remove a dereference in GetCoeffs()
2423a3946b89 enc_neon: fix building with non-Xcode clang (iOS)
24248ed9c00d Merge "simplify the Histogram struct, to only store max_value and last_nz"
2425bad77571 simplify the Histogram struct, to only store max_value and last_nz
24263cca0dc7 MIPS: dspr2: Added optimization for DCMode function
242737e395fd MIPS: fix functions to use generic BPS istead of hardcoded value
24289475bef4 PickBestUV: fix VP8Copy16x8 invocation
2429441f273f Merge changes I55f8da52,Id73a1e96
24304a279a68 cosmetics: add some missing != NULL comparisons
243166ad3725 factorize BPS definition in dsp.h and add VP8Copy16x8
2432432e5b55 make ALIGN_xxx naming consistent
243357606047 encoder: switch BPS to 32 instead of 16
24341b66bbe9 MIPS: dspr2: added optimization for function TransformColor_C
2435c6d0f9e7 histogram: cosmetics
2436f399d307 Merge changes I6eac17e5,I32d2b514
24379de9074c dec_neon: add TM8uv
24388e517eca bit_reader/kVP8NewRange: range_t -> uint8_t
2439e1857139 dsp: initialize VP8PredChroma8 in VP8DspInit()
2440e0c809ad Move Entropy methods to lossless.c
2441a96ccf8f iosbuild: add x64_64 simulator support
2442a0df5510 Remove handling for WEBP_HINT_GRAPH
2443413dfc0c Move static method definition before its usage.
24440f235665 Update BackwardRefsWithLocalCache.
2445d69e36ec Remove TODOs from lossless encoder code.
2446fdaac8e0 Optmize VP8LGetBackwardReferences LZ77 references.
24472f0e2ba8 MIPS: dspr2: added optimization for function Select
2448a3e79a46 Merge "WebPEncode: Support encoding same pic twice (even if modified)"
2449e4f4dddb WebPEncode: Support encoding same pic twice (even if modified)
2450cbc3fbb4 Merge "Updated VP8LGetBackwardReferences and color cache."
245195a9bd85 Updated VP8LGetBackwardReferences and color cache.
245254f2c14c MIPS: dspr2: added optimization for function FTransform
2453aa42f423 MIPS: dspr2: Added optimization for function VP8LSubtractGreenFromBlueAndRed
245411a25f75 Merge "FlattenSimilarBlocks should only be tried when blending is possible."
24555cccdadf FlattenSimilarBlocks should only be tried when blending is possible.
245695ca44a7 MIPS: dspr2: added optimization for Disto4x4
24574171b672 backward_references.c: reindent after c8581b0
2458c8581b06 Optimize BackwardReferences for RLE encoding.
24595798eee6 MIPS: dspr2: unfilters bugfix (Ie7b7387478a6b5c3f08691628ae00f059cf6d899)
24604167a3f5 Optimize backwardreferences
2461d18554c3 Merge "webp/types.h: use inline for clang++/-std=c++11"
24627489b0e7 gif2webp: Add '-min-size' option to get best compression.
246377bdddf0 Speed up BackwardReferences
24646638710b webp/types.h: use inline for clang++/-std=c++11
2465abf04205 Enable entropy based merge histo for (q<100)
2466572022a3 filters_mips_dsp_r2.c: disable unfilters
2467a28e21b1 MIPS: dspr2: Added optimization for function ClampedAddSubtractFull
246818d5a1ef MIPS: dspr2: added optimization for function ClampedAddSubtractHalf
2469829a8c19 MIPS: dspr2: added optimization for ITransform
2470c94ed49e gif2webp: Use the default hint instead of WEBP_HINT_GRAPH.
2471653ace55 Increase the MAX_COLOR_CACHE_BITS from 9 to 10.
2472919220c7 Change the logic adjusting the Histogram bits.
247353b096c0 Merge "Fix bug in VP8LCalculateEstimateForCacheSize."
2474e912bd55 Fix bug in VP8LCalculateEstimateForCacheSize.
2475541d7839 Merge "dec_neon: add RD4 intra predictor"
2476f8cd0672 Merge "Makefile.vc: add a 'legacy' RTLIBCFG option"
247722881c99 dec_neon: add RD4 intra predictor
2478613d281e update NEWS
24791304eb34 Merge "dec_neon: DC4: use pair-wise adds for top row"
248034c20c06 Makefile.vc: add a 'legacy' RTLIBCFG option
24817083006b Merge "dsp/dec_{neon,sse2}: VE4: normalize variable names"
24820db9031c dsp/dec_{neon,sse2}: VE4: normalize variable names
2483b5bc1530 dec_neon: DC4: use pair-wise adds for top row
24845b90d8fe Unify the API between VP8BitWriter and VP8LBitWriter
2485f7ada560 Merge changes I2e06907b,Ia9ed4ca6,I782282ff
24865beb6bf0 Merge "dec_neon: add VE4 intra predictor"
2487eba6ce06 dec_neon: add DC4 intra predictor
248879abfbd9 dec_neon: add TM4 intra predictor
2489fe395f0e dec_neon: add LD4 intra predictor
249032de385e dec_neon: add VE4 intra predictor
249172395ba9 Merge "Modify CostModel to allocate optimal memory."
249265e5eb8a gif2webp: Support GIF_DISPOSE_RESTORE_PREVIOUS
2493e4c829ef gif2webp: Handle frames with odd offsets + disposal to background.
2494c2b5a039 Modify CostModel to allocate optimal memory.
2495b7a33d7e implement VE4/HE4/RD4/... in SSE2
249697c76f1f make VP8PredLuma4[] non-const and initialize array in VP8DspInit()
24970ea8c6c2 Merge "PrintReg: output to stderr"
2498d7ff2f97 Merge "stopwatch.h: fix includes"
2499f85ec712 PrintReg: output to stderr
250054edbf65 stopwatch.h: fix includes
2501139142e4 Optimize BackwardReferenceHashChainFollowPath.
25025f36b68d enc/backward_references.c: fix indent
2503e0e9960d Merge "sync version numbers to 0.4.2 release"
250464ac5144 sync version numbers to 0.4.2 release
2505c24f8954 Simplify and speedup Backward refs computation.
2506d1c359ef fix shared object build with -fvisibility=hidden
2507a4c3a31b WEBP_TSAN_IGNORE_FUNCTION: fix gcc compat warning
2508f358eeb8 add code for testing random incremental decoding in dwebp
250980247291 mark some init function as being safe for thread_sanitizer.
251079b5bdbf bit_reader.h: cosmetics: fix a typo
25116c673681 Improved near-lossless mode.
25120ce27e71 enc_mips32: workaround gcc-4.9 bug
2513aca1b98f enc/vp8l.c: fix indent
2514ca005027 Evaluate non-palette compression for palette image
2515c8a87bb6 AssignSegments: quiet -Warray-bounds warning
251632f67e30 Merge "enc_neon: initialize vectors w/vdup_n_u32"
2517fabc65da 1-3% faster encoding optimizing SSE_NxN functions
25187534d716 enc_neon: initialize vectors w/vdup_n_u32
25195f813912 Merge "Fix return code of EncodeImageInternal()"
2520e321abe4 Fix return code of EncodeImageInternal()
2521f82cb06a optimize palette ordering
2522f545feee don't set the alpha value for histogram index image
25232d9b0a44 add WebPDispatchAlphaToGreen() to dsp
25241bd4c2ad Merge "Change Entropy based Histogram Combine heuristic."
2525e295b8f1 Merge "iosbuild: cleanup"
25261be4e760 Merge "iosbuild: output autoconf req. on failure"
2527d5e498d4 Change Entropy based Histogram Combine heuristic.
252847a2d8e1 fix MSVC float->int conversion warning
2529041956f6 iosbuild: cleanup
2530767eb402 iosbuild: output autoconf req. on failure
253135ad48b8 HistoHeapInit: correct positions allocation size
253245d9635f lossless: entropy clustering for high qualities.
2533dc37df8c fix type warning for VS9_x64
25349f7d9e6d iosbuild: make iOS 6 the minimum requirement
2535fdd6528b Remove unused VP8LDecoder member variable
2536ea3bba5a Merge "rewrite Disto4x4 in enc_neon.c with intrinsic"
2537f060dfc4 add lossless incremental decoding support
2538ab70794d rewrite Disto4x4 in enc_neon.c with intrinsic
2539d4471637 MIPS: dspr2: added optimization for function FilterLoop24
25402aef54d4 Merge "prepare VP8LDecodeImage for incremental decode"
2541aed0f5a2 Merge "MIPS: dspr2: added optimization for function FilterLoop26"
254228630685 prepare VP8LDecodeImage for incremental decode
2543248f3aed remove br->error_ field
254449e15044 MIPS: dspr2: added optimization for function FilterLoop26
254538128cb9 iobuild.sh: only install .h files in Headers
2546c792d412 Premultiply with alpha during U/V downsampling
25470cc811d7 gif2webp: Background color correction
2548d7167ff7 Amend the lossless spec according to issue #205, #206 and #224
2549b901416b Record the lossless size stats.
2550cddd3340 Add a WebPExtractAlpha function to dsp
25510716a98e fix indent after I0204949917836f74c0eb4ba5a7f4052a4797833b
2552f9ced95a Optimize lossless decoding for trivial(ARB) codes.
2553924fcfd9 Merge "webpmux: simplify InitializeConfig()"
2554c0a462ca webpmux: simplify InitializeConfig()
25556986bb5e webpmux: fix indent
2556f89e1690 webpmux: fix exit status on numeric value parse error
25572172cb62 Merge "webpmux: fix loop_count range check"
2558e3b343ec Merge "examples: warn on invalid numeric parameters"
25590e23c487 webpmux: fix loop_count range check
25606208338a Merge "fix loop bug in DispatchAlpha()"
2561d51f3e40 gif2webp: Handle frames with missing  graphic control extension
2562690b491a fix loop bug in DispatchAlpha()
256396d43a87 examples: warn on invalid numeric parameters
25643101f537 MIPS: dspr2: added optimization for TransformOne
2565a6bb9b17 SSE2 for inverse Mult(ARGB)Row and ApplyAlphaMultiply
2566d84a8ffd Remove default initialization of decoder status.
2567be70b86c configure: simplify libpng-config invocation
2568e0a99321 Rectify bug in lossless incremental decoding.
2569e2502a97 MIPS: dspr2: added optimization for TransformAC3
257024e1072a MIPS: dspr2: added optimization for TransformDC
2571c0e84df8 Merge "Slightly faster lossless decoding (1%)"
25728dd28bb5 Slightly faster lossless decoding (1%)
2573f0103595 MIPS: dspr2: added optimization for ColorIndexInverseTransforms
2574d3242aee make VP8LSetBitPos() set br->eos_ flag
2575a9decb55 Lossless decoding: fix eos_ flag condition
25763fea6a28 fix erroneous dec->status_ setting
257780b8099f MIPS: dspr2: add some specific mips code to commit I2c3f2b12f8df15b785fad5a9c56316e954ae0c53
2578e5640625 Merge "further refine the COPY_PATTERN optim for DecodeAlpha"
2579854509fe enc/histogram.c: reindent after f4059d0
258034421964 Merge "~3-5% faster encoding optimizing PickBestIntra*()"
2581865069c1 further refine the COPY_PATTERN optim for DecodeAlpha
2582a5956228 added C-level optimization for DecodeAlphaData function
2583187d379d add a fallback to ALPHA_NO_COMPRESSION
2584a48a2d76 ~3-5% faster encoding optimizing PickBestIntra*()
2585a6140194 ExUtilReadFromStdin: (windows) open stdin in bin mode
2586e80eab1f webpmux: (windows) open stdout in binary mode
2587e9bfb116 cwebp: (windows) open stdout in binary mode
25885927e15b example_util: add ExUtilSetBinaryMode
258930f3b75b webpmux man page: Clarify some title, descriptions and examples
259077d4c7e3 address cosmetic comments from patch #71380
2591f75dfbf2 Speed up Huffman decoding for lossless
2592637b3888 dsp/lossless: workaround gcc-4.9 bug on arm
25938323a903 dsp.h: collect gcc/clang version test macros
2594e6c4b52f move static initialization of WebPYUV444Converters[] to the Init function.
259549911d4d Merge "fix indentation"
2596f4059d0c Code cleanup for HistogramRemap.
2597e632b092 fix indentation
2598f5c04d64 Merge "add a DispatchAlpha() for SSE2 that handles 8 pixels at a time"
2599fc98edd9 add a DispatchAlpha() for SSE2 that handles 8 pixels at a time
260073d361dd introduce VP8EncQuantize2Blocks to quantize two blocks at a time
26010b21c30b MIPS: dspr2: added optimization for EmitAlphaRGB
2602953acd56 enc_neon: enable QuantizeBlock for aarch64
2603f4ae1437 MIPS: mips32: code rebase
260456977154 MIPS: dspr2: added optimizations for VP8YuvTo*
26052523aa73 SmartRGBYUV: fix odd-width problem with pixel replication
2606ee52dc4e fix some MSVC64 warning about float conversion
26073fca851a cpu: check for _MSC_VER before using msvc inline asm
2608e2a83d71 faster RGB->YUV conversion function (~7% speedup)
2609de2d03e1 Merge "Add smart RGB->YUV conversion option -pre 4"
26103fc4c539 Add smart RGB->YUV conversion option -pre 4
2611b4dc4069 MIPS: dspr2: added optimization for (un)filters
2612137e6090 Merge "configure: add work around for gcc-4.9 aarch64 bug"
2613b61c9cec MIPS: dspr2: Optimization of some simple point-sampling functions
2614e2b8cec0 configure: add work around for gcc-4.9 aarch64 bug
261598c54107 MIPS: mips32r2: added optimization for BSwap32
2616dab702b3 Update PATENTS to reflect s/VP8/WebM/g
2617b564f7c7 Merge "MIPS: detect mips32r6 and disable mips32r1 code"
2618b7e5a5c4 MIPS: detect mips32r6 and disable mips32r1 code
261963c2fc02 Correctly use the AC_CANONICAL_* macros
2620bb07022b Merge "cosmetics"
2621e300c9d8 cosmetics
26220e519eea Merge "cosmetics: remove some extraneous 'extern's"
26233ef0f08a Merge "vp8enci.h: cosmetics: fix '*' placement"
26244c6dde37 bit_writer: cosmetics: rename kFlush() -> Flush()
2625f7b4c48b cosmetics: remove some extraneous 'extern's
2626b47fb00a vp8enci.h: cosmetics: fix '*' placement
2627b5a36cc9 add -near_lossless [0..100] experimental option
26280524d9e5 dsp: detect mips64 & disable mips32 code
2629d3485d96 cwebp.1: fix quality description placement
263029a9fe22 Merge tag 'v0.4.1'
26318af27718 update ChangeLog (tag: v0.4.1, origin/0.4.1)
2632e09e9ff6 Record & log the image pre-processing time.
2633f59c0b4b iosbuild.sh: specify optimization flags
26348d34ea3e update ChangeLog (tag: v0.4.1-rc1)
2635dbc3da66 makefile.unix: add vwebp.1 to the dist target
263689a7c83c update ChangeLog
2637ffe67ee9 Merge "update NEWS for the next release" into 0.4.1
26382def1fe6 gif2webp: dust up the help message
2639fb668d78 remove -noalphadither option from README/vwebp.1
2640e49f693b update NEWS for the next release
2641cd013580 Merge "update AUTHORS" into 0.4.1
2642268d01eb update AUTHORS
264385213b9b bump version to 0.4.1
2644695f80ae Merge "restore mux API compatibility" into 0.4.1
2645862d296c restore mux API compatibility
26468f6f8c5d remove the !WEBP_REFERENCE_IMPLEMENTATION tweak in Put8x8uv
2647d713a696 Merge changes If4debc15,I437a5d5f into 0.4.1
2648c2fc52e4 restore encode API compatibility
2649793368e8 restore decode API compatibility
2650b8984f31 gif2webp: fix compile with giflib 5.1.0
2651222f9b1a gif2webp: simplify giflib version checking
2652d2cc61b7 Extend MakeARGB32() to accept Alpha channel.
26534595b62b Merge "use explicit size of kErrorMessages[] arrays"
2654157de015 Merge "Actuate memory stats for PRINT_MEMORY_INFO"
2655fbda2f49 JPEG decoder: delay conversion to YUV to WebPEncode() call
26560b747b1b use explicit size of kErrorMessages[] arrays
26573398d81a Actuate memory stats for PRINT_MEMORY_INFO
26586f3202be Merge "move WebPPictureInit to picture.c"
26596c347bbb move WebPPictureInit to picture.c
2660fb3acf19 fix configure message for multi-thread
266140b086f7 configure: check for _beginthreadex
26621549d620 reorder the YUVA->ARGB and ARGB->YUVA functions correctly
2663c6461bfd Merge "extract colorspace code from picture.c into picture_csp.c"
2664736f2a17 extract colorspace code from picture.c into picture_csp.c
2665645daa03 Merge "configure: check for -Wformat-security"
2666abafed86 configure: check for -Wformat-security
2667fbadb480 split monolithic picture.c into picture_{tools,psnr,rescale}.c
2668c76f07ec dec_neon/TransformAC3: initialize vector w/vcreate
2669bb4fc051 gif2webp: Allow single-frame animations
267046fd44c1 thread: remove harmless race on status_ in End()
26715a1a7264 Merge "configure: check for __builtin_bswapXX()"
26726781423b configure: check for __builtin_bswapXX()
26736450c48d configure: fix iOS builds
26746422e683 VP8LFillBitWindow: enable fast path for 32-bit builds
26754f7f52b2 VP8LFillBitWindow: respect WEBP_FORCE_ALIGNED
2676e458badc endian_inl.h: implement htoleXX with BSwapXX
2677f2664d1a endian_inl.h: add BSwap16
26786fbf5345 Merge "configure: add --enable-aligned"
2679dc0f479d configure: add --enable-aligned
26809cc69e2b Merge "configure: support WIC + OpenGL under mingw64"
2681257adfb0 remove experimental YUV444 YUV422 and YUV400 code
268210f4257c configure: support WIC + OpenGL under mingw64
2683380cca4f configure.ac: add AC_C_BIGENDIAN
2684ee70a901 endian_inl.h: add BSwap64
268547779d46 endian_inl.h: add BSwap32
2686d5104b1f utils: add endian_inl.h
268758ab6224 Merge "make alpha-detection loop in IsKeyFrame() in good x/y order"
26889d562902 make alpha-detection loop in IsKeyFrame() in good x/y order
2689516971b1 lossless: Remove unaligned read warning
2690b8b596f6 Merge "configure.ac: add an autoconf version prerequisite"
269134b02f8c configure.ac: add an autoconf version prerequisite
2692e59f5360 neon: normalize vdup_n_* usage
26936ee7160d Merge changes I0da7b3d3,Idad2f278,I4accc305
2694abc02f24 Merge "fix (uncompiled) typo"
2695bc03670f neon: add INIT_VECTOR4
26966c1c632b neon: add INIT_VECTOR3
2697dc7687e5 neon: add INIT_VECTOR2
26984536e7c4 add WebPMuxSetCanvasSize() to the mux API
2699824eab10 fix (uncompiled) typo
27001f3e5f1e remove unused 'shift' argument and QFIX2 define
27018e867051 Merge "VP8LoadNewBytes: use __builtin_bswap32 if available"
27021b6a2635 Merge "Fix handling of weird GIF with canvas dimension 0x0"
27031da3d461 VP8LoadNewBytes: use __builtin_bswap32 if available
27041582e402 Fix handling of weird GIF with canvas dimension 0x0
2705b8811dac Merge "rename interface -> winterface"
2706db8b8b5f Fix logic in the GIF LOOP-detection parsing
270725aaddc8 rename interface -> winterface
27085584d9d2 make WebPSetWorkerInterface() check its arguments
2709a9ef7ef9 Merge "cosmetics: update thread.h comments"
2710c6af9991 Merge "dust up the help message"
27110a8b8863 dust up the help message
2712a9cf3191 cosmetics: update thread.h comments
271327bfeee4 QuantizeBlock SSE2 Optimization:
27142bc0dc3e Merge "webpmux: warn when odd frame offsets are used"
27153114ebe4 Merge changes Id8edd3c1,Id418eb96,Ide05e3be
2716c0726634 webpmux: warn when odd frame offsets are used
2717c5c6b408 Merge "add alpha dithering for lossy"
2718d5146784 examples/Android.mk: add cwebp
2719ca0fa7c7 Android.mk: move dwebp to examples/Android.mk
272073d8fca0 Android.mk: add ENABLE_SHARED flag
27216e93317f muxread: fix out of bounds read
27228b0f6a48 Makefile.vc: fix CFLAGS assignment w/HAVE_AVX2=1
2723bbe32df1 add alpha dithering for lossy
272479020767 Merge "make error-code reporting consistent upon malloc failure"
272577bf4410 make error-code reporting consistent upon malloc failure
27267a93c000 **/Makefile.am: remove unused AM_CPPFLAGS
272724e30805 Add an interface abstraction to the WebP worker thread implementation
2728d6cd6358 Merge "fix orig_rect==NULL case"
27292bfd1ffa fix orig_rect==NULL case
2730059e21c1 Merge "configure: move config.h to src/webp/config.h"
2731f05fe006 properly report back encoding error code in WebPFrameCacheAddFrame()
273232b31379 configure: move config.h to src/webp/config.h
273390090d99 Merge changes I7c675e51,I84f7d785
2734ae7661b3 makefiles: define WEBP_HAVE_AVX2 when appropriate
273569fce2ea remove the special casing for res->first in VP8SetResidualCoeffs
27366e61a3a9 configure: test for -msse2
2737b9d2efc6 rename upsampling_mips32.c to yuv_mips32.c
2738bdfeebaa dsp/yuv: move sse2 functions to yuv_sse2.c
273946b32e86 Merge "configure: set WEBP_HAVE_AVX2 when available"
274088305db4 Merge "VP8RandomBits2: prevent signed int overflow"
274173fee88c VP8RandomBits2: prevent signed int overflow
2742db4860b3 enc_sse2: prevent signed int overflow
27433fdaf4d2 Merge "real fix for longjmp warning"
2744385e3340 real fix for longjmp warning
2745230a0555 configure: set WEBP_HAVE_AVX2 when available
2746a2ac8a42 restore original value_/range_ field order
27475e2ee56f Merge "remove libwebpdspdecode dep on libwebpdsp_avx2"
274861362db5 remove libwebpdspdecode dep on libwebpdsp_avx2
274942c447ae Merge "lossy bit-reader clean-up:"
2750479ffd8b Merge "remove unused #include's"
27519754d39a Merge "strong filtering speed-up (~2-3% x86, ~1-2% for NEON)"
2752158aff9b remove unused #include's
275309545eea lossy bit-reader clean-up:
2754ea8b0a17 strong filtering speed-up (~2-3% x86, ~1-2% for NEON)
27556679f899 Optimize VP8SetResidualCoeffs.
2756ac591cf2 fix for gcc-4.9 warnings about longjmp + local variables
27574dfa86b2 dsp/cpu: NaCl has no support for xgetbv
27584c398699 Merge "cwebp: fallback to native webp decode in WIC builds"
275933aa497e Merge "cwebp: add some missing newlines in longhelp output"
2760c9b340a2 fix missing WebPInitAlphaProcessing call for premultiplied colorspace output
276157897bae Merge "lossless_neon: use vcreate_*() where appropriate"
27626aa4777b Merge "(enc|dec)_neon: use vcreate_*() where appropriate"
27630d346e41 Always reinit VP8TransformWHT instead of hard-coding
27647d039fc3 cwebp: fallback to native webp decode in WIC builds
2765d471f424 cwebp: add some missing newlines in longhelp output
2766bf0e0030 lossless_neon: use vcreate_*() where appropriate
27679251c2f6 (enc|dec)_neon: use vcreate_*() where appropriate
2768399b916d lossy decoding: correct alpha-rescaling for YUVA format
276978c12ed8 Merge "Makefile.vc: add rudimentary avx2 support"
2770dc5b122f try to remove the spurious warning for static analysis
2771ddfefd62 Makefile.vc: add rudimentary avx2 support
2772a8911643 Merge "simplify VP8LInitBitReader()"
2773fdbcd44d simplify VP8LInitBitReader()
27747c004287 makefile.unix: add rudimentary avx2 support
2775515e35cf Merge "add stub dsp/enc_avx2.c"
2776a05dc140 SSE2: yuv->rgb speed-up for point-sampling
2777178e9a69 add stub dsp/enc_avx2.c
27781b99c09c Merge "configure: add a test for -mavx2"
2779fe728071 configure: add a test for -mavx2
2780e46a247c cpu: fix check for __cpuidex availability
2781176fda26 fix the bit-writer for lossless in 32bit mode
2782541784c7 dsp.h: add a check for AVX2 / define WEBP_USE_AVX2
2783bdb151ee dsp/cpu: add AVX2 detection
2784ab9f2f86 Merge "revamp the point-sampling functions by processing a full plane"
2785a2f8b289 revamp the point-sampling functions by processing a full plane
2786ef076026 use decoder's DSP functions for autofilter
27872b5cb326 Merge "dsp/cpu: add AVX detection"
2788df08e67e dsp/cpu: add AVX detection
2789e2f405c9 Merge "clean-up and slight speed-up in-loop filtering SSE2"
2790f60957bf clean-up and slight speed-up in-loop filtering SSE2
27919fc3ae46 .gitattributes: treat .ppm as binary
27923da924b5 Merge "dsp/WEBP_USE_NEON: test for __aarch64__"
2793c7164490 Android.mk: always include *_neon.c in the build
2794a577b23a dsp/WEBP_USE_NEON: test for __aarch64__
279554bfffca move RemapBitReader() from idec.c to bit_reader code
279634168ecb Merge "remove all unused layer code"
2797f1e77173 remove all unused layer code
2798b0757db7 Code cleanup for VP8LGetHistoImageSymbols.
27995fe628d3 make the token page size be variable instead of fixed 8192
2800f948d08c memory debug: allow setting pre-defined malloc failure points
2801ca3d746e use block-based allocation for backward refs storage, and free-lists
28021ba61b09 enable NEON intrinsics in aarch64 builds
2803b9d2bb67 dsp/neon.h: coalesce intrinsics-related defines
2804b5c75258 iosbuild: add support for iOSv7/aarch64
28059383afd5 Reduce number of memory allocations while decoding lossless.
2806888e63ed Merge "dsp/lossless: prevent signed int overflow in left shift ops"
28078137f3ed Merge "instrument memory allocation routines for debugging"
28082aa18736 instrument memory allocation routines for debugging
2809d3bcf72b Don't allocate VP8LHashChain, but treat like automatic object
2810bd6b8619 dsp/lossless: prevent signed int overflow in left shift ops
2811b7f19b83 Merge "dec/vp8l: prevent signed int overflow in left shift ops"
281229059d51 Merge "remove some uint64_t casts and use."
2813e69a1df4 dec/vp8l: prevent signed int overflow in left shift ops
2814cf5eb8ad remove some uint64_t casts and use.
281538e2db3e MIPS: MIPS32r1: Added optimization for HistogramAdd.
2816e0609ade dwebp: fix exit code on webp load failure
2817bbd358a8 Merge "example_util.h: avoid forward declaring enums"
28188955da21 example_util.h: avoid forward declaring enums
28196d6865f0 Added SSE2 variants for Average2/3/4
2820b3a616b3 make HistogramAdd() a pointer in dsp
2821c8bbb636 dec_neon: relocate some inline-asm defines
28224e393bb9 dec_neon: enable intrinsics-only functions
2823ba99a922 dec_neon: use positive tests for USE_INTRINSICS
282469058ff8 Merge "example_util: add ExUtilDecodeWebPIncremental"
2825a7828e8b dec_neon: make WORK_AROUND_GCC conditional on version
28263f3d717a Merge "enc_neon: enable intrinsics-only functions"
2827de3cb6c8 Merge "move LOCAL_GCC_VERSION def to dsp.h"
28281b2fe14d example_util: add ExUtilDecodeWebPIncremental
2829ca49e7ad Merge "enc_neon: move Transpose4x4 to dsp/neon.h"
2830ad900abd Merge "fix warning about size_t -> int conversion"
28314825b436 fix warning about size_t -> int conversion
283242b35e08 enc_neon: enable intrinsics-only functions
2833f937e012 move LOCAL_GCC_VERSION def to dsp.h
28345e1a17ef enc_neon: move Transpose4x4 to dsp/neon.h
2835c7b92a5a dec_neon: (WORK_AROUND_GCC) delete unused Load4x8
28368e5f90b0 Merge "make ExUtilLoadWebP() accept NULL bitstream param."
283705d4c1b7 Merge "cwebp: add webpdec"
2838ddeb6ac8 cwebp: add webpdec
283935d7d095 Merge "Reduce memory footprint for encoding WebP lossless."
28400b896101 Reduce memory footprint for encoding WebP lossless.
2841f0b65c9a make ExUtilLoadWebP() accept NULL bitstream param.
28429c0a60cc Merge "dwebp: move webp decoding to example_util"
28431d62acf6 MIPS: MIPS32r1: Added optimization for HuffmanCost functions.
28444a0e7390 dwebp: move webp decoding to example_util
2845c0220460 Merge "Bugfix: Incremental decode of lossy-alpha"
28468c7cd722 Bugfix: Incremental decode of lossy-alpha
28477955152d MIPS: fix error with number of registers.
2848b1dabe37 Merge "Move the HuffmanCost() function to dsp lib"
284975b12006 Move the HuffmanCost() function to dsp lib
28502772b8bd MIPS: fix assembler error revealed by clang's debug build
28516653b601 enc_mips32: fix unused symbol warning in debug
28528dec1209 enc_mips32: disable ITransform(One) in debug builds
285398519dd5 enc_neon: convert Disto4x4 to intrinsics
2854fe9317c9 cosmetics:
2855953b0746 enc_neon: cosmetics
2856a9fc697c Merge "WIP: extract the float-calculation of HuffmanCost from loop"
28573f84b521 Merge "replace some mult-long (vmull_u8) with mult-long-accumulate (vmlal_u8)"
28584ae0533f MIPS: MIPS32r1: Added optimizations for ExtraCost functions.
2859b30a04cf WIP: extract the float-calculation of HuffmanCost from loop
2860a8fe8ce2 Merge "NEON intrinsics version of CollectHistogram"
286195203d2d NEON intrinsics version of CollectHistogram
28627ca2e74b replace some mult-long (vmull_u8) with mult-long-accumulate (vmlal_u8)
286341c6efbd fix lossless_neon.c
28648ff96a02 NEON intrinsics version of FTransform
28650214f4a9 Merge "MIPS: MIPS32r1: Added optimizations for FastLog2"
2866baabf1ea MIPS: MIPS32r1: Added optimizations for FastLog2
28673d49871d NEON functions for lossless coding
28683fe02915 MIPS: MIPS32r1: Added optimizations for SSE functions.
2869c503b485 Merge "fix the gcc-4.6.0 bug by implementing alternative method"
2870abe6f487 fix the gcc-4.6.0 bug by implementing alternative method
28715598bdec enc_mips32.c: fix file mode
28722b1b4d5a MIPS: MIPS32r1: Add optimization for GetResidualCost
2873f0a1f3cd Merge "MIPS: MIPS32r1: Added optimization for FTransform"
28747231f610 MIPS: MIPS32r1: Added optimization for FTransform
2875869eaf6c  ~30% encoding speedup: use NEON for QuantizeBlock()
2876f758af6b enc_neon: convert FTransformWHT to intrinsics
28777dad095b MIPS: MIPS32r1: Added optimization for Disto4x4 (TTransform)
28782298d5f3 MIPS: MIPS32r1: Added optimization for QuantizeBlock
2879e88150c9 Merge "MIPS: MIPS32r1: Add optimization for ITransform"
2880de693f25 lossless_neon: disable VP8LConvert* functions
28814143332b NEON intrinsics for encoding
28820ca2914b MIPS: MIPS32r1: Add optimization for ITransform
288371bca5ec dec_neon: use vst_lane instead of vget_lane
2884bf061052 Intrinsics NEON version of TransformOne
288519c6f1ba Merge "dec_neon: use vld?_lane instead of vset?_lane"
28867a94c0cf upsampling_neon: drop NEON suffix from local functions
2887d14669c8 upsampling_sse2: drop SSE2 suffix from local functions
28882ca42a4f enc_sse2: drop SSE2 suffix from local functions
2889d038e619 dec_sse2: drop SSE2 suffix from local functions
2890fa52d752 dec_neon: use vld?_lane instead of vset?_lane
2891c520e77d cosmetic: fix long line
28924b0f2dae Merge "add intrinsics NEON code for chroma strong-filtering"
2893e351ec07 add intrinsics NEON code for chroma strong-filtering
2894aaf734b8 Merge "Add SSE2 version of forward cross-color transform"
2895c90a902e Add SSE2 version of forward cross-color transform
2896bc374ff3 Use histogram_bits to initalize transform_bits.
28972132992d Merge "Add strong filtering intrinsics (inner and outer edges)"
28985fbff3a6 Add strong filtering intrinsics (inner and outer edges)
2899d4813f0c Add SSE2 function for Inverse Cross-color Transform
290026029568 dec_neon: add strong loopfilter intrinsics
2901cca7d7ef Merge "add intrinsics version of SimpleHFilter16NEON()"
29021a05dfa7 windows: fix dll builds
2903d6c50d8a Merge "add some colorspace conversion functions in NEON"
29044fd7c82e SSE2 variants of Subtract-Green: Rectify loop condition
290597e5fac3 add some colorspace conversion functions in NEON
2906b9a7a45f add intrinsics version of SimpleHFilter16NEON()
2907daccbf40 add light filtering NEON intrinsics
2908af444608 fix typo in STORE_WHT
29096af6b8e1 Tune HistogramCombineBin for large images.
2910af93bdd6 use WebPSafe[CM]alloc/WebPSafeFree instead of [cm]alloc/free
291151f406a5 lossless_sse2: relocate VP8LDspInitSSE2 proto
29120f4f721b separate SSE2 lossless functions into its own file
2913514fc251 VP8LConvertFromBGRA: use conversion function pointers
29146d2f3527 dsp/dec: TransformDCUV: use VP8TransformDC
2915defc8e1b Merge "fix out-of-bound read during alpha-plane decoding"
2916fbed3643 Merge "dsp: reuse wht transform from dec in encoder"
2917d8467084 Merge "Add SSE2 version of ARGB -> BGR/RGB/... conversion functions"
2918207d03b4 fix out-of-bound read during alpha-plane decoding
2919d1b33ad5 2-5% faster trellis with clang/MacOS (and ~2-3% on ARM)
2920369c26dd Add SSE2 version of ARGB -> BGR/RGB/... conversion functions
2921df230f27 dsp: reuse wht transform from dec in encoder
292280e218d4 Android.mk: fix build with APP_ABI=armeabi-v7a-hard
292359daf083 Merge "cosmetics:"
292453622008 cosmetics:
29253e7f34a3 AssignSegments: quiet array-bounds warning
29263c2ebf58 Merge "UpdateHistogramCost: avoid implicit double->float"
2927cf821c82 UpdateHistogramCost: avoid implicit double->float
2928312e638f Extend the search space for GetBestGreenRedToBlue
29291c58526f Fix few nits
2930fef22704 Optimize and re-structure VP8LGetHistoImageSymbols
2931068b14ac Optimize lossless decoding.
29325f0cfa80 Do a binary search to get the optimum cache bits.
293324ca3678 Merge "allow 'cwebp -o -' to emit output to stdout"
2934e12f874e allow 'cwebp -o -' to emit output to stdout
29352bcad89b allow some more stdin/stout I/O
293684ed4b3a fix cwebp.1 typos after patch #69199
293765b99f1c add a -z option to cwebp, and WebPConfigLosslessPreset() function
293830176619 4-5% faster trellis by removing some unneeded calculations.
2939687a58ec histogram.c: reindent after b33e8a0
294006d456f6 Merge "~3-4% faster lossless encoding"
2941c60de260 ~3-4% faster lossless encoding
294242eb06fc Merge "few cosmetics after patch #69079"
294382af8264 few cosmetics after patch #69079
2944b33e8a05 Refactor code for HistogramCombine.
2945ca1bfff5 Merge "5-10% encoding speedup with faster trellis (-m 6)"
29465aeeb087 5-10% encoding speedup with faster trellis (-m 6)
294782ae1bf2 cosmetics: normalize VP8GetCPUInfo checks
2948e3dd9243 Merge "Refactor GetBestPredictorForTile for future tuning."
2949206cc1be Refactor GetBestPredictorForTile for future tuning.
29503cb84062 Merge "speed-up trellis quant (~5-10% overall speed-up)"
2951b66f2227 Merge "lossy encoding: ~3% speed-up"
29524287d0d4 speed-up trellis quant (~5-10% overall speed-up)
2953390c8b31 lossy encoding: ~3% speed-up
29549a463c4a Merge "dec_neon: convert TransformWHT to intrinsics"
2955e8605e96 Merge "dec_neon: add ConvertU8ToS16"
29564aa3e412 MIPS: MIPS32r1: rescaler bugfix
2957c16cd99a Speed up lossless encoder.
29589d6b5ff1 dec_neon: convert TransformWHT to intrinsics
29592ff0aae2 dec_neon: add ConvertU8ToS16
296077a8f919 fix compilation with USE_YUVj flag
29614acbec1b Merge changes I3b240ffb,Ia9370283,Ia2d28728
29622719bb7e dec_neon: TransformAC3: work on packed vectors
2963b7b60ca1 dec_neon: add SaturateAndStore4x4
2964b7685d73 Rescale: let ImportRow / ExportRow be pointer-to-function
2965e02f16ef dec_neon.c: convert TransformDC to intrinsics
29669cba963f add missing file
29678992ddb7 use static clipping tables
29680235d5e4 1-2% faster quantization in SSE2
2969b2fbc36c fix VC12-x64 warning
29706e37cb94 Merge "cosmetics: backward_references.c: reindent after a7d2ee3"
2971a42ea974 cosmetics: backward_references.c: reindent after a7d2ee3
29726c327442 Merge "fix missing __BIG_ENDIAN__ definition on some platform"
2973a8b6aad1 fix missing __BIG_ENDIAN__ definition on some platform
2974fde2904b Increase initial buffer size for VP8L Bit Writer.
2975a7d2ee39 Optimize cache estimate logic.
29767fb6095b Merge "dec_neon.c: add TransformAC3"
2977bf182e83 VP8LBitWriter: use a bit-accumulator
29783f40b4a5 Merge "MIPS: MIPS32r1: clang macro warning resolved"
29791684f4ee WebP Decoder: Mark some truncated bitstreams as invalid
2980acbedac4 MIPS: MIPS32r1: clang macro warning resolved
2981228e4877 dec_neon.c: add TransformAC3
2982393f89b7 Android.mk: avoid gcc-specific flags with clang
298332aeaf11 revamp VP8LColorSpaceTransform() a bit
29840c7cc4ca Merge "Don't dereference NULL, ensure HashChain fully initialized"
2985391316fe Don't dereference NULL, ensure HashChain fully initialized
2986926ff402 WEBP_SWAP_16BIT_CSP: remove code dup
29871d1cd3bb Fix decode bug for rgbA_4444/RGBA_4444 color-modes.
2988939e70e7 update AUTHORS file
29898934a622 cosmetics: *_mips32.c
2990dd438c9a MIPS: MIPS32r1: Optimization of some simple point-sampling functions. PATCH [6/6]
299153520911 Added support for calling sampling functions via pointers.
2992d16c6974 MIPS: MIPS32r1: Optimization of filter functions. PATCH [5/6]
299304336fc7 MIPS: MIPS32r1: Optimization of function TransformOne. PATCH [4/6]
299492d8fc7d MIPS: MIPS32r1: Optimization of function WebPRescalerImportRow. PATCH [3/6]
2995bbc23ff3 parse one row of intra modes altogether
2996a2f608f9 Merge "MIPS: MIPS32r1: Optimization of function WebPRescalerExportRow. [2/6]"
299788230854 MIPS: MIPS32r1: Optimization of function WebPRescalerExportRow. [2/6]
2998c5a5b028 decode mt+incremental: fix segfault in debug builds
29999882b2f9 always use fast-analysis for all methods.
3000000adac0 Merge "autoconf: update ax_pthread.m4"
30012d2fc37d update .gitignore
30025bf4255a Merge "Make it possible to avoid automagic dependencies"
3003c1cb1933 disable NEON for arm64 platform
300473a304e9 Make it possible to avoid automagic dependencies
30054d493f8d MIPS: MIPS32r1: Decoder bit reader function optimized. PATCH [1/6]
3006c741183c make WebPCleanupTransparentArea work with argb picture
30075da18552 add a decoding option to flip image vertically
300800c3c4e1 Merge "add man/vwebp.1"
30092c6bb428 add man/vwebp.1
3010ea59a8e9 Merge "Merge tag 'v0.4.0'"
30117574bed4 fix comments related to array sizes
30120b5a90fd dwebp.1: fix option formatting
3013effcb0fd Merge tag 'v0.4.0'
30147c76255d autoconf: update ax_pthread.m4
3015fff2a11b make -short work with -print_ssim, -print_psnr, etc.
301668e7901d update ChangeLog (tag: v0.4.0-rc1, tag: v0.4.0, origin/0.4.0)
3017256e4333 update NEWS description with new general features
301829625340 Merge "gif2webp: don't use C99 %zu" into 0.4.0
30193b9f9dd0 gif2webp: don't use C99 %zu
3020b5b2e3c7 cwebp: fix metadata output w/lossy+alpha
3021ad26df1a makefile.unix: clean up libgif2webp_util.a
3022c3b45570 update Changelog
3023ca841121 Merge "bump version to 0.4.0" into 0.4.0
30248c524db8 bump version to 0.4.0
3025eec2398c update AUTHORS & .mailmap
3026b9bbf6a1 update NEWS for 0.4.0
3027c72e0811 Merge "dec/webp.c: don't wait for data before reporting w/h"
30285ad65314 dec/frame.c: fix formatting
3029f7fc4bc8 dec/webp.c: don't wait for data before reporting w/h
303066a32af5 Merge "NEON speed up"
303126d842eb NEON speed up
3032f307f98b Merge "webpmux: let -- stop parameter parsing"
3033fe051da7 Merge "README: add a section on gif2webp"
30346fd2bd62 Merge "manpage pedantry"
30354af19007 README: add a section on gif2webp
30366f36ade9 manpage pedantry
3037f9016cb9 README: update dwebp options
3038b4fa0a47 webpmux: let -- stop parameter parsing
3039a9a20acf gif2webp: Add a multi-threaded encode option
3040495bef41 fix bug in TrellisQuantize
3041605a7127 simplify __cplusplus ifdef
304233109f99 Merge "drop: ifdef __cplusplus checks from C files"
30437f9de0b9 Merge changes I994a5587,I8467bb71,I13b50688,I1e2c9c7b
30445459030b gif2webp: let -- stop parameter parsing
3045a4b0aa06 vwebp: let -- stop parameter parsing
304698af68fe cwebp: let -- stop parameter parsing
3047a33831e2 dwebp: let -- stop parameter parsing
304836301249 add some checks on error paths
3049ce4c7139 Merge "autoconf: add --disable-wic"
30505227d991 drop: ifdef __cplusplus checks from C files
3051f6453559 dwebp.1: fix typo
3052f91034f2 Merge "cwebp: print metadata stats when no output file is given"
3053d4934553 gif2webp: Backward compatibility for giflib version <= 4.1.3
30544c617d32 gif2webp: Disable output of ICC profile by default
305573b731fb introduce a special quantization function for WHT
305641c0cc4b Make Forward WHT transform use 32bit fixed-point calculation
3057a3359f5d Only compute quantization params once
305870490437 cwebp: print metadata stats when no output file is given
3059d513bb62 * fix off-by-one zthresh calculation * remove the sharpening for non luma-AC coeffs * adjust the bias a little bit to compensate for this
3060ad9dec0c Merge "cosmetics: dwebp: fix local function name format"
3061f737f037 Merge "dwebp: remove a dead store"
30623c3a70da Merge "makefile.unix: install binaries in $(DESTDIR)/bin/"
3063150b655f Merge "Android.mk: add some release compile flags"
3064dbebd33b cosmetics: dwebp: fix local function name format
306527749951 dwebp: remove a dead store
3066a01e04fe autoconf: add --disable-wic
30675009b227 makefile.unix: install binaries in $(DESTDIR)/bin/
3068bab30fca Merge "fix -print_psnr / ssim options"
3069ebef7fb3 fix -print_psnr / ssim options
3070cb637855 Merge "fix bug due to overzealous check in WebPPictureYUVAToARGB()"
30718189885b Merge "EstimateBestFilter: use an int to iterate WEBP_FILTER_TYPE"
30724ad7d335 Android.mk: add some release compile flags
3073c12e2369 cosmetics: fix a few typos
30746f104034 fix bug due to overzealous check in WebPPictureYUVAToARGB()
30753f6c35c6 EstimateBestFilter: use an int to iterate WEBP_FILTER_TYPE
3076cc55790e Merge changes I8bb7a4dc,I2c180051,I021a014f,I8a224a62
3077c536afb5 Merge "cosmetics: fix some typos"
3078cbdd3e6e add a -dither dithering option to the decoder
3079e8124012 Updated iosbuild.sh for XCode 5.x
30804931c329 cosmetics: fix some typos
308105aacf77 mux: add some missing casts
3082617d9348 enc/vp8l: add a missing cast
308346db2865 idec: add some missing casts
3084b524e336 ErrorStatusLossless: correct return type
3085cb261f79 fix a descaling bug for vertical/horizontal U/V interpolation
3086bcb3955c Merge changes I48968468,I181bc736
308773f52133 gif2webp: Add a mixed compression mode
30886198715e demux: split chunk parsing from ParseVP8X
3089d2e3f4e6 demux: add a tail pointer for chunks
309087cffcc3 demux: cosmetics: s/has_frames/is_animation/
3091e18e6677 demux: strictly enforce the animation flag
3092c4f39f4a demux: cosmetics: remove a useless break
309361cb884d demux: (non-exp) fail if the fragmented flag is set
3094ff379db3 few % speedup of lossless encoding
3095df3649a2 remove all disabled code related to P-frames
30966d0cb3de Merge "gif2webp: kmin = 0 should suppress key-frame addition."
309736555983 gif2webp: kmin = 0 should suppress key-frame addition.
30987708e609 Merge "detect flatness in blocks and favor DC prediction"
309906b1503e Merge "add comment about the kLevelsFromDelta[][] LUT generation"
31005935259c add comment about the kLevelsFromDelta[][] LUT generation
3101e3312ea6 detect flatness in blocks and favor DC prediction
3102ebc9b1ee Merge "VPLBitReader bugfix: Catch error if bit_pos > LBITS too."
310396ad0e0a VPLBitReader bugfix: Catch error if bit_pos > LBITS too.
3104a014e9c9 tune quantization biases toward higher precision
31051e898619 add helpful PrintBlockInfo() function
3106596a6d73 make use of 'extern' consistent in function declarations
3107c8d48c6e Merge "extract random utils to their own file util/random.[ch]"
310898aa33cf extract random utils to their own file util/random.[ch]
3109432a723e Merge "swig: add basic go bindings"
3110fab618b5 Merge "rename libwebp.i -> libwebp.swig"
3111e4e7fcd6 swig: add basic go bindings
3112d3408720 Merge "fast auto-determined filtering strength"
3113f8bfd5cd fast auto-determined filtering strength
3114ac0bf951 small clean-up in ExpandMatrix()
31151939607e rename libwebp.i -> libwebp.swig
311643148b6c filtering: precompute ilimit and hev_threshold
311718f992ec simplify f_inner calculation a little
3118241d11f1 add missing const
311986c0031e add a 'format' field to WebPBitstreamFeatures
3120dde91fde Demux: Correct the extended format validation
31215d6c5bd2 add entry for '-resize' option in cwebp's man
31227c098d18 Use some gamma-curve range compression when computing U/V average
31230b2b0504 Use deterministic random-dithering during RGB->YUV conversion
31248a2fa099 Add a second multi-thread method
31257d6f2da0 Merge "up to 20% faster multi-threaded decoding"
3126266f63ea Merge "libwebp.jar: build w/Java 1.6 for Android compat"
31270532149c up to 20% faster multi-threaded decoding
312838efdc2e Simplify the gif2webp tool: move the optimization details to util
3129de899516 libwebp.jar: build w/Java 1.6 for Android compat
3130cb221552 Decode a full row of bitstream before reconstructing
3131dca8a4d3 Merge "NEON/simple loopfilter: avoid q4-q7 registers"
31329e84d901 Merge "NEON/TransformWHT: avoid q4-q7 registers"
3133fc10249b NEON/simple loopfilter: avoid q4-q7 registers
31342f09d63e NEON/TransformWHT: avoid q4-q7 registers
313577585a2b Merge "use a macrofunc for setting NzCoeffs bits"
3136d155507c Merge "use HINT_GRAPH as image_hint for gif source"
31379c561646 Merge "only print GIF_DISPOSE_WARNING once"
313805879865 use HINT_GRAPH as image_hint for gif source
31390b28d7ab use a macrofunc for setting NzCoeffs bits
3140f9bbc2a0 Special-case sparse transform
314100125196 gif2webp: detect and flatten uniformly similar blocks
31420deaf0fa only print GIF_DISPOSE_WARNING once
31436a8c0eb7 Merge "small optimization in segment-smoothing loop"
3144f7146bc1 small optimization in segment-smoothing loop
31455a7533ce small gif2webp fix
31464df0c89e Merge changes Ic697660c,I27285521
31475b2e6bd3 Android.mk: add a dwebp target
3148f910a84e Android.mk: update build flags
314963f9aba4 special-case WHT transform when there's only DC
315080911aef Merge "7-8% faster decoding by rewriting GetCoeffs()"
3151606c4304 gif2webp: Improved compression for lossy animated WebP
3152fb887f7f gif2webp: Different kmin/kmax defaults for lossy and lossless
31532a981366 7-8% faster decoding by rewriting GetCoeffs()
315492d47e4c improve VP8L signature detection by checking the version bits too
31555cd43e43 Add -incremental option to dwebp
315654b8e3f6 webpmux: DisplayInfo(): remove unnecessary error checks.
315740ae3520 fix memleak in WebPIDelete()
3158d9662658 mux.h doc: WebPMuxGetFrame() can return WEBP_MUX_MEMORY_ERROR too.
31590e6747f8 webpmux -info: display dimensions and has_alpha per frame
3160d78a82c4 Sanity check for underflow
31618498f4bf Merge "remove -Wshadow warnings"
3162e89c6fc8 Avoid a potential memleak
31633ebe1757 Merge "break down the proba 4D-array into some handy structs"
31646a44550a break down the proba 4D-array into some handy structs
31652f5e8934 remove -Wshadow warnings
3166bf3a29b3 Merge "add proper WEBP_HAVE_GIF and WEBP_HAVE_GL flags"
31672b0a7593 Merge "fix some warnings from static analysis"
316822dd07ce mux.h: Some doc corrections
316979ff0346 add proper WEBP_HAVE_GIF and WEBP_HAVE_GL flags
3170d51f45f0 fix some warnings from static analysis
3171d134307b fix conversion warning on MSVC
3172d538cea8 gif2webp: Support a 'min' and 'max'  key frame interval
317380b54e1c allow search with token buffer loop and fix PARTITION0 problem
3174b7d4e042 add VP8EstimateTokenSize()
317510fddf53 enc/quant.c: silence a warning
3176399cd456 Merge "fix compile error on ARM/gcc"
31779f24519e encoder: misc rate-related fixes
3178c663bb21 Merge "simplify VP8IteratorSaveBoundary() arg passing"
3179fa46b312 Demux.h: Correct a method name reference
3180f8398c9d fix compile error on ARM/gcc
3181f691f0e4 simplify VP8IteratorSaveBoundary() arg passing
318242542be8 up to 6% faster encoding with clang compiler
318393402f02 multi-threaded segment analysis
31847e2d6595 Merge "remove the PACK() bit-packing tricks"
3185c13fecf9 remove the PACK() bit-packing tricks
31862fd091c9 Merge "use NULL for lf_stats_ testing, not bool"
3187b11c9d62 dwebp: use default dct_method
31884bb8465f Merge "(de)mux.h: wrap pseudo-code in /* */"
3189cfb56b17 make -pass option work with token buffers
31905416aab4 (de)mux.h: wrap pseudo-code in /* */
319135dba337 use NULL for lf_stats_ testing, not bool
3192733a7faa enc->Iterator memory cleanup
3193e81fac86 Add support for "no blend" in webpmux binary
31943b80bc48 gif2webp: Separate out each step into a method
3195bef7e9cc Add doc precision about demux object keeping pointers to data.
319661405a14 dwebp: enable stdout output with WIC
31976eabb886 Merge "Animated WebP: add "do no blend" option to spec"
3198be20decb fix compilation for BITS 24
3199e58cc137 Merge "dwebp: s/unsigned char/uint8_t/"
320072501d43 dwebp: s/unsigned char/uint8_t/
32012c9633e8 Merge "gif2webp: Insert independent frames at regular intervals."
3202f0d6a14b gif2webp: Insert independent frames at regular intervals.
3203b25a6fbf yuv.h: fix indent
3204ede3602e Merge "cosmetics: fix indent"
32053a65122a dwebp: fix stdout related output
3206388a7249 cosmetics: fix indent
32074c7322c8 Merge "dsp: msvc compatibility"
3208d50c7e32 Merge "5-7% faster SSE2 versions of YUV->RGB conversion functions"
3209b8ab7847 Merge "simplify upsampler calls: only allow 'bottom' to be NULL"
3210df6cebfa 5-7% faster SSE2 versions of YUV->RGB conversion functions
3211ad6ac32d simplify upsampler calls: only allow 'bottom' to be NULL
3212a5e8afaf output to stdout if file name is "-"
3213f358450f dsp: msvc compatibility
321443a7c8eb Merge "cosmetics"
32154c5f19c1 Merge "bit_reader.h: cosmetics"
3216f72fab70 cosmetics
321714dd5e78 fix const-ness
3218b20aec49 Merge "Support for 'do not blend' option in vwebp"
3219dcf65222 Support for 'do not blend' option in vwebp
3220d5bad033 Animated WebP: add "do no blend" option to spec
3221a2f5f73d Merge "Support for "Do not blend" in mux and demux libraries"
3222e081f2f3 Pack code & extra_bits to Struct (VP8LPrefixCode).
32236284854b Support for "Do not blend" in mux and demux libraries
3224f486aaa9 Merge "slightly faster ParseIntraMode"
3225d1718632 slightly faster ParseIntraMode
32263ceca8ad bit_reader.h: cosmetics
322769257f70 Create LUT for PrefixEncode.
3228988b7084 add WebPWorkerExecute() for convenient bypass
322906e24987 Merge "VP8EncIterator clean-up"
3230de4d4ad5 VP8EncIterator clean-up
32317bbe9529 Merge "cosmetics: thread.c: drop a redundant comment"
3232da411485 cosmetics: thread.c: drop a redundant comment
3233feb4b6e6 thread.h: #ifdef when checking WEBP_USE_THREAD
32348924a3a7 thread.c: drop WebPWorker prefix from static funcs
32351aed8f2a Merge "fix indent"
32364038ed15 fix indent
32371693fd9b Demux: A new state WEBP_DEMUX_PARSE_ERROR
32388dcae8b3 fix rescaling-with-alpha inaccuracy
323911249abf Merge changes I9b4dc36c,I4e0eef4d
324052508a1f Mux: support parsing unknown chunks within a frame/fragment.
324105db0572 WebPMuxSetChunk: remove unused variable
32428ba1bf61 Stricter check for presence of alpha when writing lossless images
3243a03c3516 Demux: WebPIterator now also denotes if the frame has alpha.
32446df743a3 Decoder: handle fragments case correctly too.
3245faa4b07e Support for unknown chunks in mux library
32467d60bbc6 Speed up HashChainFindCopy function.
324766740140 Speedup Alpha plane encoding.
3248b7346a1e 0.1 % speedup to decoding
3249c606182e webp-container-spec: Tighten language added by last
3250a34a5029 pngdec: output error messages from libpng
3251e84c625d Merge "Detect canvas and image size mismatch in decoder."
3252f626fe2e Detect canvas and image size mismatch in decoder.
3253f5fbdee0 demux: stricter image bounds check
325430c8158a add extra assert in Huffman decode code
32558967b9f3 SSE2 for lossless decoding (critical) functions.
3256699d80ea Jump-lookup for Huffman coding
3257c34307ab fix some VS9 warnings about type conversion
3258eeada35c pngdec: add missing include
325954b65108 gif2webp: If aligning to even offsets, extra pixels should be transparent
32600bcf5ce3 Merge "remove a malloc() in case we're using only FILTER_NONE for alpha"
32612c07143b remove a malloc() in case we're using only FILTER_NONE for alpha
3262a4d5f59d Faster lossless decoding
3263fd53bb75 Merge "alternate LUT-base reverse-bits code"
3264d1c166ef Merge "Container spec: a clarification on background color."
3265fdb91779 Rename a method
32665e967532 Container spec: a clarification on background color.
326730e77d0f Merge branch '0.3.0'
32681b631e29 alternate LUT-base reverse-bits code
326924cc307a ~20% faster lossless decoding
3270313d853f Speedup for decoding lossless WebP photographs:
327124ee098a change the bytes_per_pixels_ field into more evocative use_8b_decode
32722a04b034 update ChangeLog (tag: v0.3.1-rc2, tag: v0.3.1)
32737288950b Regression fix for alpha channels using color cache:
32742e377b53 wicdec: silence a format warning
3275ad9e42a6 muxedit: silence some uninitialized warnings
32763307c163 Don't set alpha-channel to 0xff for alpha->green uplift
32775130770c Merge "wicdec: silence a format warning"
3278a37eff47 Regression fix for alpha channels using color cache:
3279241cf99b Merge "muxedit: silence some uninitialized warnings"
3280c8f9c84d Regression fix for alpha unfiltering:
328114cd5c6c muxedit: silence some uninitialized warnings
3282a368db81 dec/vp8l: quiet vs9 x64 type conversion warning
3283ffae9f31 wicdec: silence a format warning
32848cf0701e Alpha encoding: never filter in case of NO_COMPRESSION
3285825e73b1 update ChangeLog (tag: v0.3.1-rc1)
3286abf6f691 update NEWS
32875a92c1a5 bump version to 0.3.1
328886daf77c store top Y/U/V samples in packed fashion
328967bc353e Revert "add WebPBlendAlpha() function to blend colors against background"
3290068db59e Intertwined decoding of alpha and RGB
329138cc0114 Simplify forward-WHT + SSE2 version
32923fa595a5 Support decoding upto given row in DECODE_DATA_FUNC
3293520f005f DequantizeLevels(): Add 'row' and 'num_rows' args
329447374b82 Alpha unfilter for given set of rows
3295f32097e0 probe input file and quick-check for WebP format.
3296a2aed1d0 configure: improve gl/glut library test
3297c7e89cbb update copyright text
3298a00380d2 configure: remove use of AS_VAR_APPEND
3299a94a88dd fix EXIF parsing in PNG
3300a71e5d84 add doc precision for WebPPictureCopy() and WebPPictureView()
33018287012e remove datatype qualifier for vmnv
3302e1908430 fix a memory leak in gif2webp
33030b18b9ee fix two minor memory leaks in webpmux
3304db5095d5 remove some cruft from swig/libwebp.jar
3305850e956f README: update swig notes
3306bddd9b0a swig/python: add minimal documentation
3307d573a8d5 swig: add python encode support
33086b931875 swig/java: reduce wrapper function code duplication
33096fe536f4 swig/java: rework uint8_t typemap
3310a2ea4643 Fix the bug in ApplyPalette.
33117bb28d2a webp/lossless: fix big endian BGRA output
3312f036d4bf Speed up ApplyPalette for ARGB pixels.
33138112c8cf remove some warnings:
3314cc128e0b Further reduce memory to decode lossy+alpha images
331507db70d2 fix for big-endian
3316eda8a7de gif2webp: Fix signed/unsigned comparison mismatch
331731f346fe Makefile.vc: fix libwebpdemux dll variable typo
33186c76d28e swig: add python (decode) support
3319b4f5bb6c swig: cosmetics
3320498d4dd6 WebP-Lossless encoding improvements.
332126e72442 swig: ifdef some Java specific code
33228ecec686 configure: add warning related flags
3323e676b043 configure: add GLUT detection; build vwebp
3324b0ffc437 Alpha decoding: significantly reduce memory usage
332520aa7a8d configure: add --enable-everything
3326b8307cc0 configure.ac: add some helper macros
3327980e7ae9 Remove the gcc compilation comments
33287f25ff99 gif2webp: Fix ICC and XMP support
3329d8e53211 Add missing name to AUTHORS
333011edf5e2 Demux: Fix a potential memleak
3331c7b92184 don't forward declare enums
33327a650c6a prevent signed int overflow in left shift ops
333331bea324 add precision about dynamic output reallocation with IDecoder
3334c22877f7 Add incremental support for extended format files
33355051245f Makefile.vc: have 'all' target build everything
33368191deca Makefile.vc: flags cleanup
3337b9d74735 Makefile.vc: drop /FD flag
33385568dbcf update gitignore
3339f4c7b654 WebPEncode: An additional check. Start VP8EncLoop/VP8EncTokenLoop only if VP8EncStartAlpha succeeded.
33401fb04bec pngdec: Avoid a double-free.
3341dcbb1ca5 add WebPBlendAlpha() function to blend colors against background
3342bc9f5fbe configure.ac: add AM_PROG_AR for automake >= 1.12
3343bf867bf2 Tuned cross_color parameter (step) for lower qual
334490e2ec5a Merge "probe input file and quick-check for WebP format."
33457180d7ff Merge "update copyright text"
3346830f72b7 probe input file and quick-check for WebP format.
33472ccf58d6 configure: improve gl/glut library test
3348d640614d update copyright text
3349c2113ad4 Merge "configure: remove use of AS_VAR_APPEND"
33509326a56f configure: remove use of AS_VAR_APPEND
3351ea63d619 fix a type warning on VS9 x86
3352bec11092 fix EXIF parsing in PNG
3353b6e65f3d Merge "fix warnings for vs9 x64"
3354438946dc fix warnings for vs9 x64
3355f4710e3b collect macroblock reconstruction data in VP8MBData struct
335623d28e21 add doc precision for WebPPictureCopy() and WebPPictureView()
3357518f2cd7 cosmetics: gif2webp: fix indent
3358af358e68 Merge "remove datatype qualifier for vmnv"
33593fe91635 remove datatype qualifier for vmnv
3360764fdffa fix a memory leak in gif2webp
33613e59a74d fix two minor memory leaks in webpmux
336247b9862f Merge "README: update swig notes"
3363325d15ff remove some cruft from swig/libwebp.jar
33644a7627c2 README: update swig notes
33655da81e33 Merge "swig/python: add minimal documentation"
3366f39e08f2 Merge "swig: add python encode support"
33676ca4a3e3 Merge "swig/java: reduce wrapper function code duplication"
33688f8702b0 Merge "swig/java: rework uint8_t typemap"
336991413be2 reduce memory for VP8MB and remove bitfields use
33707413394e Fix the memory leak in ApplyFilters.
33712053c2cf simplify the alpha-filter testing loop
3372825b64db swig/python: add minimal documentation
337314677e11 swig: add python encode support
3374a5c297c8 swig/java: reduce wrapper function code duplication
3375ad4a367d swig/java: rework uint8_t typemap
33760d25876b use uint8_t for inv_palette[]
3377afa3450c Fix the bug in ApplyPalette.
33782d6ac422 Merge "webp/lossless: fix big endian BGRA output"
33792ca83968 webp/lossless: fix big endian BGRA output
3380742110cc Speed up ApplyPalette for ARGB pixels.
33812451e47d misc code cleanup
338283db4043 Merge "swig: add python (decode) support"
3383eeeea8b5 Merge "swig: cosmetics"
3384d5f9b8f3 Merge "libwebp: fix vp8 encoder mem alloc offsetting"
3385d8edd835 libwebp: fix vp8 encoder mem alloc offsetting
33868983b83e remove use of bit-fields in VP8FInfo
338787a4fca2 remove some warnings:
3388ba8f74e2 Merge "fix for big-endian"
3389a65067fa Merge "Further reduce memory to decode lossy+alpha images"
339064c84486 Further reduce memory to decode lossy+alpha images
3391332130b9 Mux: make a few methods static
339244370617 fix for big-endian
33935199eab5 Merge "add uncompressed TIFF output support"
3394a3aede97 add uncompressed TIFF output support
3395f975b67f Merge "gif2webp: Fix signed/unsigned comparison mismatch"
33965fbc734b Merge "GetFeatures: Detect invalid VP8X/VP8/VP8L data"
3397d5060c87 Merge "mux.h: A comment fix + some consistency fixes"
3398352d0dee GetFeatures: Detect invalid VP8X/VP8/VP8L data
33993ef79fef Cosmetic: "width * height"
3400043e1ae4 gif2webp: Fix signed/unsigned comparison mismatch
34015818cff7 mux.h: A comment fix + some consistency fixes
34021153f888 Merge "swig: ifdef some Java specific code"
34033eeedae1 Makefile.vc: fix libwebpdemux dll variable typo
3404f980faf4 swig: add python (decode) support
34057f5f42bb swig: cosmetics
34068eae188a WebP-Lossless encoding improvements.
3407c7247c4c swig: ifdef some Java specific code
34084cb234d5 Merge "Mux: make ValidateForSingleImage() method static"
3409ed6f5308 Merge "Add GetCanvasSize() method to mux"
34101d530c9a Mux: make ValidateForSingleImage() method static
3411bba4c2b2 configure: add warning related flags
3412fffefd18 Add GetCanvasSize() method to mux
3413732da8d0 Merge "configure: add GLUT detection; build vwebp"
34140e513f7a configure: add GLUT detection; build vwebp
341555d1c150 Merge "Alpha decoding: significantly reduce memory usage"
341613d99fb5 Merge "configure: add --enable-everything"
34172bf698fe Merge "configure.ac: add some helper macros"
3418edccd194 Alpha decoding: significantly reduce memory usage
34193cafcc9a configure: add --enable-everything
34204ef14477 configure.ac: add some helper macros
3421a4e1cdbb Remove the gcc compilation comments
34226393fe4b Cosmetic fixes
34239c4ce971 Simplify forward-WHT + SSE2 version
3424878b9da5 fix missed optim
342500046171 VP8GetInfo(): Check for zero width or height.
34269bf31293 align VP8Encoder::nz_ allocation
34275da165cf fix CheckMode() signature
34280ece07dc Merge "explicitly pad bitfields to 32-bits"
34299dbc9d19 explicitly pad bitfields to 32-bits
34305369a80f Merge "prevent signed int overflow in left shift ops"
343170e39712 Merge "cosmetics: remove unnecessary ';'s"
3432d3136ce2 Merge "don't forward declare enums"
3433b26e5ad5 gif2webp: Fix ICC and XMP support
343446089b20 Add missing name to AUTHORS
343594328d64 Demux: Fix a potential memleak
343696e948d7 don't forward declare enums
3437f4f90880 prevent signed int overflow in left shift ops
34380261545e cosmetics: remove unnecessary ';'s
34397ebdf110 Merge "Fix few missing comparisons to NULL"
34401579989e Fix few missing comparisons to NULL
3441ea1b21cf Cleaned up VP8GetHeaders() so that it parses only frame header
3442b66caee4 dwebp: add support for BMP output
3443ff885bfe add precision about dynamic output reallocation with IDecoder
344479241d5a Merge "Makefile.vc: have 'all' target build everything"
3445ac1c729b Merge "Makefile.vc: flags cleanup"
3446118a055c Merge "Makefile.vc: drop /FD flag"
3447ecad0109 Merge "update gitignore"
3448a681b4f4 Rename PRE_VP8 state to WEBP_HEADER
3449ead4d478 Add incremental support for extended format files
345069d0f926 Makefile.vc: have 'all' target build everything
345152967498 Makefile.vc: flags cleanup
3452c61baf0c Makefile.vc: drop /FD flag
34533a15125d update gitignore
34545167ca47 Merge "WebPEncode: An additional check. Start VP8EncLoop/VP8EncTokenLoop only if VP8EncStartAlpha succeeded."
345567708d67 WebPEncode: An additional check. Start VP8EncLoop/VP8EncTokenLoop only if VP8EncStartAlpha succeeded.
3456b68912af pngdec: Avoid a double-free.
345782abbe12 Merge "configure.ac: add AM_PROG_AR for automake >= 1.12"
3458e7d9548c add WebPBlendAlpha() function to blend colors against background
3459ed4dc717 configure.ac: add AM_PROG_AR for automake >= 1.12
3460df4a406d Merge branch '0.3.0'
34611e0d4b8c Update ChangeLog (tag: v0.3.0-rc7, tag: v0.3.0)
3462d52b405d Cosmetic fixes
34636cb4a618 misc style fix
346468111ab0 add missing YUVA->ARGB automatic conversion in WebPEncode()
3465e9a7990b Cosmetic fixes
3466403bfe82 Container spec: Clarify frame disposal
34672aaa423b Merge "add missing YUVA->ARGB automatic conversion in WebPEncode()"
346807d87bda add missing YUVA->ARGB automatic conversion in WebPEncode()
3469142c4629 misc style fix
34703e7a13a0 Merge "Container spec: clarify the background color field" into 0.3.0
347114af7745 container doc: add a note about the 'ANMF' payload
3472cc635efa Container spec: clarify the background color field
3473e3e33949 container doc: move RIFF description to own section
34744299f398 libwebp/mux: fix double free
347533f9a692 Merge "demux: keep a frame tail pointer; used in AddFrame" into 0.3.0
3476a2a7b959 use WebPDataCopy() instead of re-coding it.
34776f18f12f demux: keep a frame tail pointer; used in AddFrame
3478e5af49e9 add doc precision about WebPParseHeaders() return codes
3479db46daab Merge "Makefile.vc: fix dynamic builds" into 0.3.0
348053c77afc Merge "gif2webp: Bgcolor fix for a special case" into 0.3.0
3481a5ebd143 gif2webp: Bgcolor fix for a special case
34826378f238 Merge "vwebp/animation: fix background dispose" into 0.3.0
34833c8eb9a8 fix bad saturation order in QuantizeBlock
348404c7a2ec vwebp/animation: fix background dispose
348581a50695 Makefile.vc: fix dynamic builds
34865f25c396 update ChangeLog (tag: v0.3.0-rc6)
348714d42af2 examples: don't use C99 %zu
34885ccf1fe5 update ChangeLog
34892560c243 update NEWS
3490f43bafc3 Merge changes Iecccb09c,If5ee9fd2,I3e181ce4 into 0.3.0
3491a788644f dwebp: warn when decoding animated webp's
3492302efcdb Decode: return more meaningful error for animation
3493ad452735 WebPBitstreamFeatures: add has_animation field
3494783dfa49 disable FRGM decoding for good in libwebpmux
34954b956be0 Update ChangeLog
3496ad8b86d7 update NEWS
34973e084f63 Merge "demux cosmetics: comments/rename internal function" into 0.3.0
3498d3f8c621 Merge "move WebPFeatureFlags declaration" into 0.3.0
34997386fe50 Merge "libwebp{demux,mux}: install mux_types.h" into 0.3.0
3500d6cd4e90 Merge "bump decode abi" into 0.3.0
350117f8da5c bump decode abi
350297684ae2 Merge "add doc precision about WebPDemuxPartial()" into 0.3.0
3503f933fd2a move WebPFeatureFlags declaration
3504289bc47b libwebp{demux,mux}: install mux_types.h
3505224e8d46 add doc precision about WebPDemuxPartial()
35064c18e80c demux cosmetics: comments/rename internal function
35077cfd1bf1 update AUTHORS
3508401f7b85 Merge "speed-up lossless (~3%) with ad-hoc histogram cost evaluation" into 0.3.0
35091fc8ffca Merge "makefile.unix: dist related changes" into 0.3.0
35108a89c6ed Merge changes I466c377f,Ib761ebd3,I694857fc into 0.3.0
3511f4ffb2d5 speed-up lossless (~3%) with ad-hoc histogram cost evaluation
3512723847d5 gif2webp: only write error messages to stderr
3513701b9e2a makefile.unix: dist related changes
3514bb85b437 Merge "update NEWS" into 0.3.0
351559423a24 gif2webp: fix crash on open failure with libgif5
35169acb17de gif2webp: silence a unused param warning
35177d9fdc23 Merge "README updates" into 0.3.0
35185621934e Merge "build: fix install race on shared headers" into 0.3.0
351970809d89 Merge "bump version to 0.3.0" into 0.3.0
3520d851cd1d demux: make the parse a bit more strict
352128bb4107 update NEWS
3522cef93882 bump version to 0.3.0
35239048494d build: fix install race on shared headers
35241e67e8ef README updates
352542b611a4 Merge "configure: drop experimental from mux/demux" into 0.3.0
3526096a8e32 Merge "vwebp: add color profile support" into 0.3.0
3527ddfee5dc vwebp: add color profile support
35280d6927d3 Merge "Mark fragment options as experimental in webpmux" into 0.3.0
35295dbd4030 Mark fragment options as experimental in webpmux
3530a0a6648c configure: drop experimental from mux/demux
3531ee65bad8 Merge "add support for BITS > 32" into 0.3.0
3532744930db add support for BITS > 32
35337dd288f0 cwebp: fix build
353419a8dd01 Merge "Makefile.vc: add vwebp.exe target" into 0.3.0
353550eeddad Merge "examples: normalize icc related program arguments" into 0.3.0
3536757f637f Merge "Makefile.vc: add libwebpdecoder target" into 0.3.0
3537b65c4b7c Makefile.vc: add libwebpdecoder target
3538f8db7b4a Merge "vwebp: replace doubles w/floats where appropriate" into 0.3.0
3539d99aa56f Makefile.vc: add vwebp.exe target
3540013023e7 vwebp: replace doubles w/floats where appropriate
35419b3db894 README.mux: add version reference
35427b6a26cf Merge "cwebp: output metadata statistics" into 0.3.0
3543d8dc72a0 examples: normalize icc related program arguments
35447bfc9056 Merge "make alpha unfilter work in-place" into 0.3.0
35450037b2d2 Merge "add LUT-free reference code for YUV->RGB conversion." into 0.3.0
3546166bf744 Merge "demux: disable fragment parsing" into 0.3.0
3547126974b4 add LUT-free reference code for YUV->RGB conversion.
35480aef3ebd make alpha unfilter work in-place
354914ef5005 Merge "Remove 'status: experimental' from container spec" into 0.3.0
3550d40c98e1 Merge "webpmux binary: tiny style fix" into 0.3.0
35510bc42689 cwebp: output metadata statistics
3552bc039803 Merge "autoconf: normalize experimental define" into 0.3.0
3553d1e21b13 Remove 'status: experimental' from container spec
35547681bb96 webpmux binary: tiny style fix
3555a3dd3d0f avoid installing example_util.h
3556252320e2 demux: disable fragment parsing
3557537bde05 autoconf: normalize experimental define
35585e338e0b Merge changes I33e8a613,I8e8a7b44 into 0.3.0
3559d9d0ea1b Merge changes If21e3ec7,I991fc30b into 0.3.0
3560627f5ca6 automake: add reference to libwebp for mux/demux
3561eef73d07 don't consolidate proba stats too often
356205ec4cc2 libwebp{,decoder}.pc: add pthread flags
35631bfcf5bf add libwebpmux.pc
356426ca843d add libwebpdemux.pc
356569e25906 Merge "Tune Lossless compression for lower qualities."
35660478b5d2 Tune Lossless compression for lower qualities.
356739f7586f add a mention of parallel alpha encoding in the NEWS
35685a21d967 Merge "1.5x-2x faster encoding for method 3 and up"
35699bfbdd14 1.5x-2x faster encoding for method 3 and up
357027dc741b Correct frame options order in README.mux
3571be2fd173 Mux: fix a scenario with bad ANMF/FRGM size
357219eb012c Merge "Demux: Add option to get frame count using GetI()"
35737368b8cb Merge "WebPGetFeatures() out of if condition for clarity."
3574f604c9a4 Merge "fix windows build"
3575153f94e8 fix windows build
3576847b4924 Merge "vwebp: use magenta for 'i'nfo display"
357725ea46bd Merge "vwebp: add keyboard shortcuts to help output"
3578bea7ccaf vwebp: use magenta for 'i'nfo display
35798fab161a webpmux: correct -frame param order in help output
358003cc23d6 vwebp: add keyboard shortcuts to help output
3581068eba8d Demux: Add option to get frame count using GetI()
3582988b8f56 WebPGetFeatures() out of if condition for clarity.
35836933d910 Merge "gif2webp: Be lenient about background color index."
35844d0f7c55 Merge "WebPGetFeatures() behavior change:"
3585fdeeb01d gif2webp: Be lenient about background color index.
3586ad250320 Merge "multi-threaded alpha encoding for lossy"
35874e32d3e1 Merge "fix compilation of token.c"
3588f817930a multi-threaded alpha encoding for lossy
358988050351 fix compilation of token.c
3590fc816219 code using the actual values for num_parts_, not the ones from config
359172655350 Merge "move the config check from .c to .h"
3592dd9e76f7 move the config check from .c to .h
3593956b217a WebPGetFeatures() behavior change:
3594df02e4ce WebPDemuxGetI behavior change:
3595633c004d Merge "rebalance method tools (-m) for methods [0..4]"
359658ca6f65 rebalance method tools (-m) for methods [0..4]
35977648c3cc Merge "describe rd-opt levels introduce VP8RDLevel enum"
359867fb1003 Merge "autoconf: enable silent-rules by default"
3599a5042a32 GetVersion() methods for mux and demux
36005189957e describe rd-opt levels introduce VP8RDLevel enum
36014e094ace autoconf: enable silent-rules by default
3602b7eaa85d inline VP8LFastLog2() and VP8LFastSLog2 for small values
36035cf7792e split quant_levels.c into decoder and encoder version
3604e5d3ffe2 Merge "Update code example in README.mux"
3605ac5a9156 Update code example in README.mux
360638a91e99 Add example code snippet for demux API
36075f557f3c README.mux: add info about Demux API and vwebp
3608c0ba0903 backward_references: avoid signed integer overflow
3609943386db disable SSE2 for now
36109479fb7d lossless encoding speedup
3611ec2030a8 merge two lines together
3612b67956c0 Merge "Remove ReadOneBit() and ReadSymbolUnsafe()"
36131667bded Remove ReadOneBit() and ReadSymbolUnsafe()
36143151669b wicdec + dwebp cosmetics: normalize formatting
361592668da6 change default filtering parameters:   * type is now 'strong'   * strength is now '60'
3616b7490f85 introduce WEBP_REFERENCE_IMPLEMENTATION compile option
361733838857 faster decoding (3%-6%)
36185c3e381b Merge "add a -jpeg_like option"
3619c2311046 remove unused declaration of VP8Zigzag
362036152957 Merge "wicdec: add alpha support for paletted formats"
3621c9f16490 wicdec: add alpha support for paletted formats
36221262f81e Merge "wicdec: silence some warnings"
3623e7ea61eb wicdec: silence some warnings
362423c0f354 fix missing intptr_t->int cast for MSVC
3625e895059a add a -jpeg_like option
36261f803f64 Merge "Tune alpha quality mapping to more reasonable values."
36271267d498 Tune alpha quality mapping to more reasonable values.
3628043076e2 Merge "speed-up lossless in BackwardTrace"
3629f3a44dcd remove one malloc from TraceBackwards()
36300fc1a3a0 speed-up lossless in BackwardTrace
36317c732e59 cwebp: centralize WebPCleanupTransparentArea()
36327381254e Merge "wicdec: add ICC profile extraction"
3633e83ff7de wicdec: add ICC profile extraction
3634146c6e3b Merge "cosmetics: pngdec: normalize default label location"
3635a8f549d7 Merge "manpages: italicize option parameters"
3636e118db83 Merge "encode.h: note the need to free() WebPMemoryWriter"
36371dfee6db cosmetics: pngdec: normalize default label location
363814c38200 manpages: italicize option parameters
36397defbfad encode.h: note the need to free() WebPMemoryWriter
364088d382a0 cwebp: cleanup after memory_writer
364112d6cecf fix extra space in dwebp.1 man
3642b01681a9 Fix for demuxer frame iteration:
364356c12aa6 Demuxer creation fix:
364466c810bc add a -yuv option to dwebp (very similar to -pgm)
3645841a3ba5 Merge "Remove -Wshadow warnings."
36468fd02527 Merge "upsampling_neon.c: fix build"
36476efed268 Remove -Wshadow warnings.
364860904aa6 Merge "allow WebPINewRGB/YUVA to be passed a NULL output buffer."
3649b7adf376 allow WebPINewRGB/YUVA to be passed a NULL output buffer.
365027f8f742 upsampling_neon.c: fix build
365106b9cdf1 gitignore: add IOS related directories
3652f112221e Merge "Fix more comments for iobuild.sh"
3653fe4d25dd Fix more comments for iobuild.sh
36541de3e252 Merge "NEON optimised yuv to rgb conversion"
3655090b708a NEON optimised yuv to rgb conversion
3656daa06476 Merge "Add ios build script for building iOS library."
365779fe39e2 Add ios build script for building iOS library.
3658126c035f remove some more -Wshadow warnings
3659522e9d61 Merge "cwebp: enable '-metadata'"
366076ec5fa1 cwebp: enable '-metadata'
3661aeb91a9d Merge "cosmetics: break a few long lines"
3662be7c96b0 cosmetics: break a few long lines
3663cff8ddb6 Merge "add libwebpdecoder.pc"
366493148ab8 Merge "libwebp.pc.in: detab"
36656477f955 Merge "Makefile.vc: normalize path separator"
3666bed1ed7c add libwebpdecoder.pc
366746168b2d libwebp.pc.in: detab
3668a941a346 Fixed few nits in the build files.
3669dd7a49b2 Makefile.vc: normalize path separator
36709161be86 Merge "cwebp: extract WIC decoding to its own module"
367108e7c58e Merge "Provide an option to build decoder library."
36720aeba528 Provide an option to build decoder library.
3673757ebcb1 catch malloc(0)/calloc(0) with an assert
3674152ec3d2 Merge "handle malloc(0) and calloc(0) uniformly on all platforms"
3675a452a555 cwebp: extract WIC decoding to its own module
36762b252a53 Merge "Provide option to swap bytes for 16 bit colormodes"
367794a48b4b Provide option to swap bytes for 16 bit colormodes
367842f8f934 handle malloc(0) and calloc(0) uniformly on all platforms
36798b2152c5 Merge "add an extra assert to check memory bounds"
36800d19fbff remove some -Wshadow warnings
3681cd22f655 add an extra assert to check memory bounds
36828189feda Merge "Add details and reference about the YUV->RGB conversion"
36831d2702b1 Merge "Formatting fixes in lossless bitstream spec"
36848425aaee Formatting fixes in lossless bitstream spec
3685a556cb1a Add details and reference about the YUV->RGB conversion
3686d8f21e0b add link to SSIM description on Wikipedia
368718e9167e Merge "WebP-lossless spec clarifications:"
368898e25b9b Merge "cwebp: add -metadata option"
3689f01c2a53 WebP-lossless spec clarifications:
3690f4a97970 Merge "Disto4x4 and Disto16x16 in NEON"
369147b7b0ba Disto4x4 and Disto16x16 in NEON
36927eaee9f1 cwebp: add -metadata option
369336c52c2c tiffdec: use toff_t for exif ifd offset
36947c8111e4 Merge "cwebp/tiffdec: add TIFF metadata extraction"
3695e6409adc Remove redundant include from dsp/lossless code.
36961ab5b3a7 Merge "configure: fix --with-gifincludedir"
369703c749eb configure: fix --with-gifincludedir
36988b650635 multiple libgif versions support for gif2webp
3699476e293f gif2webp: Use DGifOpenFileName()
3700b50f277b tiffdec: correct format string
37012b9048e3 Merge "tiffdec: check error returns for width/height"
3702a1b5a9a3 Merge "cwebp/tiff: use the first image directory"
3703079423f5 tiffdec: check error returns for width/height
3704d62824af Merge "cwebp/jpegdec: add JPEG metadata extraction"
370503afaca4 Merge "cwebp: add PNG metadata extraction"
37062c724968 cwebp/jpegdec: add JPEG metadata extraction
3707dba64d91 cwebp: add PNG metadata extraction
37081f075f89 Lossless spec corrections/rewording/clarifications
37092914ecfd cwebp/tiffdec: add TIFF metadata extraction
3710d82a3e33 More corrections/clarifications in lossless spec:
3711bd002557 cwebp/tiff: use the first image directory
3712df7aa076 Merge "Cleanup around jpegdec"
37130f57dcc3 decoding speed-up (~1%)
3714bcec339b Lossless bitstream clarification:
37156bf20874 add examples/metadata.c
3716207f89c0 Merge "configure: add libwebpdemux status to summary"
37171bd287a6 Cleanup around jpegdec
371891455679 Merge "cosmetics: use '== 0' in size checks"
3719d6b88b76 cosmetics: use '== 0' in size checks
3720d3dace2f cosmetics: jpegdec
37212f69af73 configure: add libwebpdemux status to summary
37221c1c5646 cwebp: extract tiff decoding to its own module
37236a871d66 cwebp: extract jpeg decoding to its own module
37242ee228f9 cwebp: extract png decoding to its own module
37254679db00 Merge "cwebp: add metadata framework"
372663aba3ae cwebp: add metadata framework
3727931bd516 lossless bitstream: block size bits correction
3728e4fc4c1c lossless bitstream: block size bits correction
3729d65ec678 fix build, move token.c to src/enc/
3730657f5c91 move token buffer to its own file (token.c)
3731c34a3758 introduce GetLargeValue() to slim-fast GetCoeffs().
3732d5838cd5 faster non-transposing SSE2 4x4 FTransform
3733f76191f9 speed up GetResidualCost()
3734ba2aa0fd Add support for BITS=24 case
37352e7f6e8e makefile.unix: Dependency on libraries
3736dca84219 Merge "Separate out mux and demux code and libraries:"
373723782f95 Separate out mux and demux code and libraries:
3738bd56a01f configure: add summary output
373990e5e319 dwebp manual: point to webpmux, gif2webp.
3740540790ca gif2webp.c: add a note about prerequisites
3741d1edf697 cwebp man page: meaning of '-q' for lossy/lossless
374279efa1d0 Add man page for gif2webp utility
37432243e40c Merge "gif2webp build support with autoconf tools"
3744c40efca1 gif2webp build support with autoconf tools
37456523e2d4 WebP Container:
37464da788da Merge "simplify the fwd transform"
374742c3b550 simplify the fwd transform
374841a6ced9 user GLfloat instead of float
3749b5426119 fix indentation
375068f282f7 * handle offset in anim viewer 'vwebp' * fix gif2webp to handle disposal method and odd offset correctly
3751118cb312 Merge "add SSE2 version of Sum of Square error for 16x16, 16x8 and 8x8 case"
37528a7c3cc8 Merge "Change the order of -frame argument to be more natural"
375399e0a707 Merge "Simplify the texture evaluation Disto4x4()"
37540f923c3f make the bundling work in a tmp buffer
3755e5c3b3f5 Simplify the texture evaluation Disto4x4()
375648600084 Change the order of -frame argument to be more natural
375735bfd4c0 add SSE2 version of Sum of Square error for 16x16, 16x8 and 8x8 case
3758a7305c2e Clarification for unknown chunks
37594c4398e2 Refine WebP Container Spec wrt unknown chunks.
37602ca642e0 Rectify WebPMuxGetFeatures:
37617caab1d8 Some cosmetic/comment fixes.
376260b2651a Merge "Write a GIF to WebP converter based on libgif."
3763c7127a4d Merge "Add NEON version of FTransformWHT"
376411b27212 Write a GIF to WebP converter based on libgif.
3765e9a15a37 ExUtilWriteFile() to write memory segment to file
376674356eb5 Add a simple cleanup step in mux assembly:
376751bb1e5d mux.h: correct WebPDemuxSelectFragment() prototype
376822a0fd9d Add NEON version of FTransformWHT
3769fa30c863 Update mux code to match the spec wrt animation
3770d9c5fbef by-pass Analysis pass in case segments=1
3771d2ad4450 Merge changes Ibeccffc3,Id1585b16
37725c8be251 Merge "Chunk fourCCs for XMP/EXIF"
3773a00a3daf Use 'frgm' instead of 'tile' in webpmux parameters
377481b8a741 Design change in ANMF and FRGM chunks:
3775f903cbab Chunk fourCCs for XMP/EXIF
3776812933d6 Tune performance of HistogramCombine
377752ad1979 Animation specification in container spec
3778001b9302 Image fragment specification in container spec
3779391f9db9 Ordering of description of bits in container spec
3780d5735776 Metadata specification in container spec
37811c4609b1 Merge commit 'v0.2.1'
37820ca584cb Merge "Color profile specification in container spec"
3783e8b41ad1 add NEON asm version for WHT inverse transform
3784af6f0db2 Color profile specification in container spec
3785a61a824b Merge "Add NULL check in chunk APIs"
37860e8b7eed fix WebPPictureView() unassigned strides
378775e5f17e ARM/NEON: 30% encoding speed-up
378802b43568 Add NULL check in chunk APIs
3789a0770727 mux struct naming
37906c66dde8 Merge "Tune Lossless encoder"
3791ab5ea217 Tune Lossless encoder
379274fefc8c Update ChangeLog (tag: v0.2.1, origin/0.2.0)
379392f8059c Rename some chunks:
37943bb4bbeb Merge "Mux API change:"
3795d0c79f05 Mux API change:
3796abc06044 Merge "update NEWS" into 0.2.0
379757cf313b update NEWS
379825f585c4 bump version to 0.2.1
3799fed7c048 libwebp: validate chunk size in ParseOptionalChunks
3800552cd9bc cwebp (windows): fix alpha image import on XP
3801b14fea99 autoconf/libwebp: enable dll builds for mingw
38024a8fb272 [cd]webp: always output windows errors
3803d6621580 fix double to float conversion warning
380472b96a69 cwebp: fix jpg encodes on XP
3805734f762a VP8LAllocateHistogramSet: fix overflow in size calculation
3806f9cb58fb GetHistoBits: fix integer overflow
3807b30add20 EncodeImageInternal: fix uninitialized free
38083de58d77 fix the -g/O3 discrepancy for 32bit compile
380977aa7d50 fix the BITS=8 case
3810e5970bda Make *InitSSE2() functions be empty on non-SSE2 platform
3811ef5cc47e make *InitSSE2() functions be empty on non-SSE2 platform
3812c4ea259d make VP8DspInitNEON() public
38138344eadf Merge "libwebp: validate chunk size in ParseOptionalChunks"
38144828bb93 Merge "cwebp (windows): fix alpha image import on XP"
381530763333 libwebp: validate chunk size in ParseOptionalChunks
381670481898 AccumulateLSIM: fix double -> float warnings
3817eda8ee4b cwebp (windows): fix alpha image import on XP
3818c6e98658 Merge "add EXPERIMENTAL code for YUV-JPEG colorspace"
3819f0360b4f add EXPERIMENTAL code for YUV-JPEG colorspace
3820f86e6abe add LSIM metric to WebPPictureDistortion()
3821c3aa215a Speed up HistogramCombine for lower qualities.
38221765cb1c Merge "autoconf/libwebp: enable dll builds for mingw"
3823a13562e8 autoconf/libwebp: enable dll builds for mingw
38249f469b57 typo: no_fancy -> no_fancy_upsampling
38251a27f2f8 Merge "fix double to float conversion warning"
3826cf1e90de Merge "cwebp: fix jpg encodes on XP"
3827f2b5d19b [cd]webp: always output windows errors
3828e855208c fix double to float conversion warning
3829ecd66f77 cwebp: fix jpg encodes on XP
38307b3eb372 Tune lossless compression to get better gains.
3831ce8bff45 Merge "VP8LAllocateHistogramSet: fix overflow in size calculation"
3832ab5b67a1 Merge "EncodeImageInternal: fix uninitialized free"
38337fee5d12 Merge "GetHistoBits: fix integer overflow"
3834a6ae04d4 VP8LAllocateHistogramSet: fix overflow in size calculation
383580237c43 GetHistoBits: fix integer overflow
38368a997235 EncodeImageInternal: fix uninitialized free
38370b9e6829 minor cosmetics
3838a792b913 fix the -g/O3 discrepancy for 32bit compile
383973ba4357 Merge "detect and merge similar segments"
3840fee66275 detect and merge similar segments
38410c44f415 src/webp/*.h: don't forward declare enums in C++
3842d7a5ac86 vwebp: use demux interface
3843931e0ea1 Merge "replace 'typedef struct {} X;" by "typedef struct X X; struct X {};""
38448f216f7e remove cases of equal comparison for qsort()
384528d25c82 replace 'typedef struct {} X;" by "typedef struct X X; struct X {};"
38462afee60a speed up for ARM using 8bit for boolean decoder
38475725caba new segmentation algorithm
38482cf1f815 Merge "fix the BITS=8 case"
384912f78aec fix the BITS=8 case
38506920c71f fix MSVC warnings regarding implicit uint64 to uint32 conversions
3851f6c096aa webpmux binary: Rename 'xmp' option to 'meta'
3852ddfe871a webpmux help correction
3853b7c55442 Merge "Make *InitSSE2() functions be empty on non-SSE2 platform"
38541c04a0d4 Common APIs for chunks metadata and color profile.
38552a3117a1 Merge "Create WebPMuxFrameInfo struct for Mux APIs"
38565c3a7231 Make *InitSSE2() functions be empty on non-SSE2 platform
38577c6e60f4 make *InitSSE2() functions be empty on non-SSE2 platform
3858c7eb4576 make VP8DspInitNEON() public
3859ab3234ae Create WebPMuxFrameInfo struct for Mux APIs
3860e3990fd8 Alignment fixes
3861e55fbd6d Merge branch '0.2.0'
38624238bc0a Update ChangeLog (tag: v0.2.0)
3863c655380c dec/io.c: cosmetics
3864fe1958f1 RGBA4444: harmonize lossless/lossy alpha values
3865681cb30a fix RGBA4444 output w/fancy upsampling
3866f06c1d8f Merge "Alignment fix" into 0.2.0
3867f56e98fd Alignment fix
38686fe843ba avoid rgb-premultiply if there's only trivial alpha values
3869528a11af fix the ARGB4444 premultiply arithmetic
3870a0a48855 Lossless decoder fix for a special transform order
387162dd9bb2 Update encoding heuristic w.r.t palette colors.
38726f4272b0 remove unused ApplyInverseTransform()
387393bf0faa Update ChangeLog (tag: v0.2.0-rc1)
38745934fc59 update AUTHORS
3875014a711d update NEWS
387643b0d610 add support for ARGB -> YUVA conversion for lossless decoder
387733705ca0 bump version to 0.2.0
3878c40d7ef1 fix alpha-plane check + add extra checks
3879a06f8023 MODE_YUVA: set alpha to opaque if the image has none
388052a87dd7 Merge "silence one more warning" into 0.2.0
38813b023093 silence one more warning
3882f94b04f0 move some RGB->YUV functions to yuv.h
38834b71ba03 README: sync [cd]webp help output
3884c9ae57f5 man/dwebp.1: add links to output file format details
3885292ec5cc quiet a few 'uninitialized' warnings
38864af3f6c4 fix indentation
38879b261bf5 remove the last NOT_HAVE_LOG2 instances
3888323dc4d9 remove use of log2(). Use VP8LFastLog2() instead.
38898c515d54 Merge "harness some malloc/calloc to use WebPSafeMalloc and WebPSafeCalloc" into 0.2.0
3890d4b4bb02 Merge changes I46090628,I1a41b2ce into 0.2.0
3891bff34ac1 harness some malloc/calloc to use WebPSafeMalloc and WebPSafeCalloc
3892a3c063c7 Merge "extra size check for security" into 0.2.0
38935e796300 Merge "WebPEncode: clear stats at the start of encode" into 0.2.0
3894f1edf62f Merge "rationalize use of color-cache" into 0.2.0
3895c1933317 extra size check for security
3896906be657 rationalize use of color-cache
3897dd1c3873 Add image-hint for low-color images.
38984eb7aa64 Merge "WebPCheckMalloc() and WebPCheckCalloc():" into 0.2.0
389980cc7303 WebPCheckMalloc() and WebPCheckCalloc():
3900183cba83 check VP8LBitWriterInit return
3901cbfa9eec lossless: fix crash on user abort
3902256afefa cwebp: exit immediately on version mismatch
3903475d87d7 WebPEncode: clear stats at the start of encode
3904a7cc7291 fix type and conversion warnings
39057d853d79 add stats for lossless
3906d39177b7 make QuantizeLevels() store the sum of squared error
39075955cf5e replace x*155/100 by x*101581>>16
39087d732f90 make QuantizeLevels() store the sum of squared error
3909e45a446a replace x*155/100 by x*101581>>16
3910159b75d3 cwebp output size consistency:
3911cbee59eb Merge commit 'v0.1.99'
39121889e9b6 dwebp: report -alpha option
39133bc3f7c0 Merge "dwebp: add PAM output support" into 0.2.0
3914d919ed06 dwebp: add PAM output support
391585e215d3 README/manpages/configure: update website link
3916c3a207b9 Update ChangeLog (tag: v0.1.99)
3917d1fd7826 Merge "add extra precision about default values and behaviour" into 0.2.0
3918efc826e0 add extra precision about default values and behaviour
39199f29635d header/doc clean up
3920ff9fd1ba Makefile.vc: fix webpmux.exe *-dynamic builds
39218aacc7b0 remove INAM, ICOP, ... chunks from the test webp file.
39222fc13015 harmonize authors as "Name (mail@address)"
39234a9f37b7 Merge "update NEWS" into 0.2.0
39247415ae13 makefile.unix: provide examples/webpmux target
3925ce82cedc update NEWS
3926641e28e8 Merge "man/cwebp.1: wording, change the date" into 0.2.0
3927c37c23e5 README: cosmetics
39283976dcd5 man/cwebp.1: wording, change the date
39293e5bbe1c Merge "rename 'use_argb_input' to 'use_argb'" into 0.2.0
3930ce90847a Merge "add some padding bytes areas for later use" into 0.2.0
39312390dabc Merge "fixing the findings by Frederic Kayser to the bitstream spec" into 0.2.0
393202751591 add a very crude progress report for lossless
3933a4b9b1c6 Remove some unused enum values.
3934dd108176 rename 'use_argb_input' to 'use_argb'
393590516ae8 add some padding bytes areas for later use
3936d03b2503 fixing the findings by Frederic Kayser to the bitstream spec
3937ce156afc add missing ABI compatibility checks
39389d45416a Merge "Doc: container spec text tweaks" into 0.2.0
39394e2e0a8c Doc: container spec text tweaks
3940f7f16a29 add ABI compatibility check
39412a775570 Merge "swig: add WebPEncodeLossless* wrappers" into 0.2.0
3942a3ec6225 mux.h: remove '* const' from function parameters
394331426eba encode.h: remove '* const' from function parameters
39449838e5d5 decode.h: remove '* const' from function parameters
39454972302d swig: add WebPEncodeLossless* wrappers
39469ff00cae bump encoder/decoder versions
3947c2416c9b add lossless quick encoding functions to the public API
39484c1f5d64 Merge "NEWS: mention decode_vp8.h is no longer installed" into 0.2.0
39496cb2277d NEWS: mention decode_vp8.h is no longer installed
3950d5e5ad63 move decode_vp8.h from webp/ to dec/
39518d3b04a2 Merge "header clean-up" into 0.2.0
395202201c35 Merge "remove one malloc() by making color_cache non dynamic" into 0.2.0
3953d708ec14 Merge "move MIN/MAX_HISTO_BITS to format_constants.h" into 0.2.0
3954ab2da3e9 Merge "add a malloc() check" into 0.2.0
39552d571bd8 add a malloc() check
39567f0c178e remove one malloc() by making color_cache non dynamic
39576569cd7c Merge "VP8LFillBitWindow: use 64-bit path for msvc x64 builds" into 0.2.0
395823d34f31 header clean-up
39592a3ab6f9 move MIN/MAX_HISTO_BITS to format_constants.h
3960985d3da6 Merge "shuffle variables in HashChainFindCopy" into 0.2.0
3961cdf885c6 shuffle variables in HashChainFindCopy
3962c3b014db Android.mk: add missing lossless files
39638c1cc6b5 makefile.unix dist: explicitly name installed includes
39647f4647ee Merge "clarify the colorspace naming and byte ordering of decoded samples" into 0.2.0
3965cbf69724 clarify the colorspace naming and byte ordering of decoded samples
3966857650c8 Mux: Add WebPDataInit() and remove WebPImageInfo
3967ff771e77 don't install webp/decode_vp8.h
3968596dff78 VP8LFillBitWindow: use 64-bit path for msvc x64 builds
39693ca7ce98 Merge "doc: remove non-finalized chunk references" into 0.2.0
39701efaa5a3 Merge "bump versions" into 0.2.0
397151fa13e1 Merge "README: update cwebp help output" into 0.2.0
397212f9aede README: update cwebp help output
3973f0b5defb bump versions
39744c42a61b update AUTHORS
39756431a1ce doc: remove non-finalized chunk references
39768130c4cc Merge "build: remove libwebpmux from default targets/config"
397723b44438 Merge "configure: broaden test for libpng-config"
397885bff2cd Merge "doc: correct lossless prefix coding table & code"
397905108f6e Merge "More spec/code matching in mux:"
39806808e69d More spec/code matching in mux:
3981bd2b46f5 Merge "doc/webp-container-spec: light cosmetics"
398220ead329 doc/webp-container-spec: light cosmetics
39831d40a8bc configure: add pthread detection
3984b5e9067a fix some int <-> size_t mix for buffer sizes
3985e41a7596 build: remove libwebpmux from default targets/config
39860fc2baae configure: broaden test for libpng-config
398745b8272c Merge "restore authorship to lossless bitstream doc"
398806ba0590 restore authorship to lossless bitstream doc
398944a09a3c add missing description of the alpha filtering methods
399063db87dd Merge "vwebp: add checkboard background for alpha display"
3991a73b8978 vwebp: add checkboard background for alpha display
3992939158ce Merge "vwebp: fix info display"
3993b35c07d9 vwebp: fix info display
399448b39eb1 fix underflow for very short bitstreams
39957e622984 cosmetics: param alignment, manpage wording
39961bd7dd50 Merge changes I7b0afb0d,I7ecc9708
3997ac69e63e Merge "Updated cwebp man's help for Alpha & Lossless."
3998c0e8859d Get rid of image_info_ from WebPChunk struct.
3999135ca69e WebP Container Spec:
4000eb6f9b8a Updated cwebp man's help for Alpha & Lossless.
40010fa844fb cosmetic fixes on assert and 'const' where applicable
40027f22bd25 check limit of width * height is 32 bits
400316c46e83 autoconf/make: cosmetics: break long lines
4004ab22a07a configure: add helper macro to define --with-*
4005c17699b3 configure: add libtiff test
40060e09732c Merge "cwebp: fix crash with yuv input + lossless"
400788a510ff Merge "fix big-endian VP8LWriteBits"
4008da99e3bf Merge "Makefile.vc: split mux into separate lib"
40097bda392b cwebp: fix crash with yuv input + lossless
4010f56a369a fix big-endian VP8LWriteBits
401154169d6c Merge "cwebp: name InputFileFormat members consistently"
4012e2feefa9 Makefile.vc: split mux into separate lib
401327caa5aa Merge "cwebp: add basic TIFF support"
4014d8921dd4 cwebp: name InputFileFormat members consistently
40156f76d246 cwebp: add basic TIFF support
40164691407b Merge changes If39ab7f5,I3658b5ae
4017cca7c7b8 Fixed nit: 10 -> 10.f
40185d09a244 WebPMuxCreate() error handling:
4019777341c3 Fix a memleak in WebPMuxCreate()
402061c9d161 doc: correct lossless prefix coding table & code
40214c397579 Merge "mark VP8{,L}{GetInfo,CheckSignature} as WEBP_EXTERN"
4022e4e36cc6 Merge "Mux: Allow only some frames/tiles to have alpha."
4023ad2aad3c Merge "WebP Decoding error handling:"
402497649c8f Mux: Allow only some frames/tiles to have alpha.
4025f864be3b Lower the quality settings for Alpha encoding.
40263ba81bbe WebP Decoding error handling:
4027fcc69923 add automatic YUVA/ARGB conversion during WebPEncode()
4028802e012a fix compilation in non-FANCY_UPSAMPLING mode
4029e012dfd9 make width/height coding match the spec
4030228d96a5 mark VP8{,L}{GetInfo,CheckSignature} as WEBP_EXTERN
4031637a314f remove the now unused *KeepA variants
4032d11f6fcc webpmux returns error strings rather than numbers
4033fcec0593 makefile.unix: cwebp: fix OSX link
40346b811f1b Merge "doc: remove lossless pdf"
4035c9634821 doc: remove lossless pdf
4036b9ae4f0d cosmetics after mux changes b74ed6e, b494ad5
4037b494ad50 Mux: only allow adding frame/tiles at the end.
40382c341b0e Merge "Added image characteristic hint for the codec."
4039d373076a Added image characteristic hint for the codec.
40402ed2adb5 Merge "msvc: add intrinsic based BitsLog2Floor"
4041e595e7c5 Merge "add demux.c to the makefiles"
4042da47b5bd Merge "demux: add {Next,Prev}Chunk"
4043e5f46742 add demux.c to the makefiles
40444708393c demux: add {Next,Prev}Chunk
4045e8a0a821 demux: quiet msvc warnings
40467f8472a6 Update the WebP Container Spec.
404731b68fe6 cleanup WebPPicture struct and API
40489144a186 add overflow check before calling malloc()
404981720c91 consistency cosmetics
40502ebe8394 Merge "Add kramdown version information to README"
405171443084 enc/vp8l.c: fix build
4052b7ac19fe Add kramdown version information to README
4053efdcb667 Merge "Edit for consistency, usage and grammar."
405408220102 Enable alpha in vvwebp
40558de9a084 Merge "Mux API change:"
4056b74ed6e7 Mux API change:
4057233a589e take picture->argb_stride into account for lossless coding
405804e33f17 Edit for consistency, usage and grammar.
4059a575b4bc Merge "cosmetics: add missing const"
40608d99b0f4 Merge "cosmetics: remove unimplemented function proto"
406169d02217 cosmetics: add missing const
40625b08318b cosmetics: remove unimplemented function proto
4063b7fb0ed5 Log warning for unsupported options for lossless.
4064e1f769fe msvc: add intrinsic based BitsLog2Floor
40658a69c7d8 Bug-fix: Clamp backward dist to 1.
4066b5b6ac97 Merge "Bring the special writer 'WebPMemoryWriter' to public API"
4067a6a1909f Merge "Fix floating point exception with cwebp -progress"
4068f2cee067 Fix floating point exception with cwebp -progress
406991b7a8c7 Bring the special writer 'WebPMemoryWriter' to public API
4070310e2972 support resize and crop for RGBA input
4071a89835d3 Merge changes Ice662960,Ie8d7aa90,I2d996d5e,I01c04772
4072ce614c0c Merge "dec/vp8: avoid setting decoder status twice"
4073900285da dec/vp8: avoid setting decoder status twice
40748227adc8 Merge changes I6f02b0d0,I5cbc9c0a,I9dd9d4ed,Id684d2a1
4075dcda59c1 Merge "demux: rename SetTile to SelectTile"
4076622ef12e demux: rename SetTile to SelectTile
407781ebd375 Merge "demux: add {Next,Prev}Frame"
407802dd37a2 demux: add {Next,Prev}Frame
40794b79fa59 Merge "Limit the maximum size of huffman Image to 16MB."
40809aa34b34 Manually number "chapters," as chapter numbers are used in the narrative.
40812a4c6c29 Re-wrap at <= 72 columns
4082a45adc19 Apply inline emphasis and monospacing, per gdoc / PDF
408391011206 Incorporate gdoc changes through 2012-06-08
40847a182487 Removed CodeRay syntax declarations ...
4085b3ec18c5 Provide for code-block syntax highlighting.
4086709d7702 Replace high ASCII artifacts (curly quotes, etc.).
4087930e8abb Lossless WebP doc largely ported to markdown text.
408818cae37b msvc: silence some build warnings
4089b3923084 Limit the maximum size of huffman Image to 16MB.
4090f180df2a Merge "libwebp/demux: add Frame/Chunk iteration"
40912bbe1c9a Merge "Enable lossless encoder code"
4092d0601b01 Merge changes I1d97a633,I81c59093
409378f3e345 Enable lossless encoder code
4094d974a9cc Merge "libwebp/demux: add simple format parsing"
409526bf2232 Merge "libwebp: add WebPDemux stub functions"
40962f666688 Merge "modify WebPParseHeaders to allow reuse by GetFeatures"
4097b402b1fb libwebp/demux: add Frame/Chunk iteration
4098ad9ada3b libwebp/demux: add WebPDemuxGetI
40992f2d4d58 libwebp/demux: add extended format parsing
4100962dcef6 libwebp/demux: add simple format parsing
4101f8f94081 libwebp: add WebPDemux stub functions
4102fb47bb5c Merge "NumNamedElements() should take an enum param."
41037c689805 Fix asserts in Palette and BackwardReference code.
4104fbdcb7ea NumNamedElements() should take an enum param.
4105fb4943bd modify WebPParseHeaders to allow reuse by GetFeatures
41063697b5ce write an ad-hoc EncodeImageInternal variant
4107eaee9e79 Bug-Fix: Decode small (less than 32 bytes) images.
41080bceae48 Merge "cwebp: fix alpha reporting in stats output"
41090424b1ef Rebase default encoding settings.
4110c71ff9e3 cwebp: fix alpha reporting in stats output
4111e2ffe446 Merge "Stop indefinite recursion for Huffman Image."
411270eb2bd6 Stop indefinite recursion for Huffman Image.
4113f3bab8eb Update vwebp
41146d5c797c Remove support for partial files in Mux.
4115f1df5587 WebPMuxAssemble() returns WebPData*.
4116814a0639 Rename 'Add' APIs to 'Set'.
4117bbb0218f Update Mux psuedo-code examples.
41184fc4a47f Use WebPData in MUX set APIs
4119c67bc979 Merge "add WebPPictureImportRGBX() and WebPPictureImportBGRX()"
412027519bc2 add WebPPictureImportRGBX() and WebPPictureImportBGRX()
4121f80cd27e factorize code in Import()
41229b715026 histogram: add log2 wrapper
41238c34378f Merge "fix some implicit type conversion warnings"
412442f6df9d fix some implicit type conversion warnings
4125250c16e3 Merge "doc: update lossless pdf"
41269d9daba4 Merge "add a PDF of the lossless spec"
41278fbb9188 prefer webp/types.h over stdint.h
41280ca170c2 doc: update lossless pdf
41290862ac6e add a PDF of the lossless spec
4130437999fb introduce a generic WebPPictureHasTransparency() function
4131d2b6c6c0 cosmetic fixes after Idaba281a
4132b4e6645c Merge "add colorspace for premultiplied alpha"
413348f82757 add colorspace for premultiplied alpha
4134069f903a Change in lossless bit-stream.
41355f7bb3f5 Merge "WebPReportProgress: use non-encoder specific params"
4136f18281ff WebPReportProgress: use non-encoder specific params
41379ef32283 Add support for raw lossless bitstream in decoder.
41387cbee29a Fix bug: InitIo reseting fancy_upsampling flag.
4139880fd98c vwebp: fix exit w/freeglut
41401875d926 trap two unchecked error conditions
414187b4a908 no need to have mux.h as noinst clause in enc/
414288f41ec6 doc: fix bit alignment in VP8X chunk
414352f5a4ef Merge "fix bug with lossy-alpha output stride"
41443bde22d7 fix bug with lossy-alpha output stride
414542d61b6d update the spec for the lossy-alpha compression methods.
4146e75dc805 Move some more defines to format_constants.h
4147c13f6632 Move consts to internal header format_constants.h
41487f2dfc92 use a bit-set transforms_seen_ instead of looping
414918da1f53 modulate alpha-compression effort according to config.method
4150f5f2fff6 Merge "Alpha flag fix for lossless."
4151c975c44e Alpha flag fix for lossless.
41524f067fb2 Merge "Android: only build dec_neon with NEON support"
4153255c66b4 Android: only build dec_neon with NEON support
41548f9117a9 cosmetics: signature fixes
415539bf5d64 use header-less lossless bitstream for alpha channel
415675d7f3b2 Merge "make input data be 'const' for VP8LInverseTransform()"
41579a721c6d make input data be 'const' for VP8LInverseTransform()
41589fc64edc Disallow re-use of same transformation.
415998ec717f  use a function pointer for ProcessRows()
4160f7ae5e37 cosmetics: join line
4161140b89a3 factor out buffer alloc in AllocateARGBBuffers()
4162a107dfa8 Rectify WebPParseOptionalChunks().
4163237eab67 Add two more color-spaces for lossless decoding.
416427f417ab fix orthographic typo
4165489ec335 add VP8LEncodeStream() to compress lossless image stream
4166fa8bc3db make WebPEncodingSetError() take a const picture
4167638528cd bitstream update for lossy alpha compression
4168d73e63a7 add DequantizeLevels() placeholder
4169ec122e09 remove arch-dependent rand()
4170d40e7653 fix alignment
41711dd6a8b6 Merge "remove tcoder, switch alpha-plane compression to lossless"
41723e863dda remove tcoder, switch alpha-plane compression to lossless
41738d77dc29 Add support for lossless in mux:
4174831bd131 Make tile size a function of encoding method.
4175778c5228 Merge "remove some variable shadowing"
4176817c9dce Few more HuffmanTreeToken conversions.
417737a77a6b remove some variable shadowing
417889c07c96 Merge "normalize example header includes"
41794aff411f Merge "add example_util.[hc]"
418000b29e28 normalize example header includes
4181061263a7 add example_util.[hc]
4182c6882c49 merge all tree processing into a single VP8LProcessTree()
41839c7a3cf5 fix VP8LHistogramNumCodes to handle the case palette_code_bits == 0
4184b5551d2e Merge "Added HuffmanTreeCode Struct for tree codes."
41858b85d01c Added HuffmanTreeCode Struct for tree codes.
4186093f76d8 Merge "Allocate single memory in GetHuffBitLengthsAndCodes."
418741d80494 Allocate single memory in GetHuffBitLengthsAndCodes.
41881b04f6d2 Correct size in VP8L header.
41892924a5ae Makefile.vc: split object lists based on directory
4190c8f24165 Merge "add assert(tokens)"
419143239947 add assert(tokens)
41929f547450 Catch an error in DecodeImageData().
4193ac8e5e42 minor typo and style fix
41949f566d1d clean-up around Huffman-encode
4195c579a710 Introduce CHUNK_SIZE_BYTES in muxi.h.
419614757f8a Make sure huffman trees always have valid symbols
419741050618 makefile.unix: add support for building vwebp
419848b37721 Merge "fixed signed/unsigned comparison warning"
419957f696da Merge "EncodeImageInternal: fix potential leak"
4200d972cdf2 EncodeImageInternal: fix potential leak
42015cd12c3d fixed signed/unsigned comparison warning
4202cdca30d0 Merge "cosmetics: shorten long line"
4203e025fb55 cosmetics: shorten long line
420422671ed6 Merge "enc/vp8l: fix double free on error"
4205e1b9b052 Merge "cosmetics: VP8LCreateHuffmanTree: fix indent"
4206a8e725f8 enc/vp8l: fix double free on error
420727541fbd cosmetics: VP8LCreateHuffmanTree: fix indent
42081d38b258 cwebp/windows: use MAKE_REFGUID where appropriate
4209817ef6e9 Merge "cwebp: fix WIC/Microsoft SDK compatibility issue"
4210902d3e3b cwebp: fix WIC/Microsoft SDK compatibility issue
421189d803c4 Merge "Fix a crash due to wrong pointer-integer arithmetic."
4212cb1bd741 Merge "Fix a crash in lossless decoder."
4213de2fe202 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."
4214ce69177a Fix a crash due to wrong pointer-integer arithmetic.
4215e40a3684 Fix a crash in lossless decoder.
42163927ff3a remove unneeded error condition for WebPMuxNumNamedElements()
42172c140e11 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.
4218861a5b7b add support for animation
4219eb5c16cc Merge "Set correct encode size in encoder's stats."
42204abe04a2 fix the return value and handle missing input file case.
42212fafb855 Set correct encode size in encoder's stats.
4222e7167a2b Provide one entry point for backward references.
4223c4ccab64 Print relevant lossless encoding stats in cwebp.
4224e3302cfd GetHuffBitLengthsAndCodes: reduce level of indirection
4225b5f2a9ed enc/vp8l: fix uninitialized variable warning
42267885f8b2 makefile.unix: add lossless encoder files
42271261a4c8 Merge "cosmetics"
42283926b5be Merge "dsp/cpu.c: Android: fix crash on non-neon arm builds"
4229834f937f dsp/cpu.c: Android: fix crash on non-neon arm builds
4230126e1606 cosmetics
4231e38602d2 Merge branch 'lossless_encoder'
4232e8d3d6a0 split StoreHuffmanCode() into smaller functions
4233d0d88990 more consolidation: introduce VP8LHistogramSet
42341a210ef1 big code clean-up and refactoring and optimization
423541b5c8ff Some cosmetics in histogram.c
4236ada6ff77 Approximate FastLog between value range [256, 8192]
4237ec123ca3 Forgot to update out_bit_costs to symbol_bit_costs at one instance.
4238cf33ccd1 Evaluate output cluster's bit_costs once in HistogramRefine.
4239781c01f4 Simple Huffman code changes.
4240a2849bc5 Lossless decoder: remove an unneeded param in ReadHuffmanCodeLengths().
4241b39e7487 Reducing emerging palette size from 11 to 9 bits.
4242bfc73db4 Move GetHistImageSymbols to histogram.c
4243889a5786 Improve predict vs no-predict heuristic.
424401f50663 code-moving and clean-up
424531035f3b reduce memory usage by allocating only one histo
4246fbb501b8 Restrict histo_bits to ensure histo_image size is under 32MB
42478415ddf3 further simplification for the meta-Huffman coding
4248e4917299 A quick pass of cleanup in backward reference code
424983332b3c Make transform bits a function of encode method (-m).
425072920caa introduce -lossless option, protected by USE_LOSSLESS_ENCODER
4251c6ac4dfb Run TraceBackwards for higher qualities.
4252412222c8 Make histo_bits and transform_bits function of quality.
4253149b5098 Update lossless encoder strategy:
42540e6fa065 cache_bits passed to EncodeImageInternal()
4255e38b40a9 Factorize code for clearing HtreeGroup.
42566f4a16ea Removing the indirection of meta-huffman tables.
42573d33ecd1 Some renaming/comments related to palette in lossless encoder.
42584d02d586 Lossless encoder: correction in Palette storage
42594a636235 fix a memleak in EncodeImageInternal()
42600993a611 Full and final fix for prediction transform
4261afd2102f Fix cross-color transform in lossless encoder
4262b96d8740 Need to write a '0' bit at the end of transforms.
426354dad7e5 Color cache size should be counted as 0 when cache bits = 0
42644f0c5caf Fix prediction transform in lossless encoder.
426536dabdad Fix memory leak in method EncodeImageInternal for histogram_image.
4266352a4f49 Get rid of PackLiteralBitLengths()
4267d673b6b9 Change the predictor function to pass left pixel
4268b2f99465 Fix CopyTileWithPrediction()
426984547f54 Add EncodeImageInternal() method.
42706b38378a Guard the lossless encoder (in flux) under a flag
427109f7532c Fix few nits (const qualifiers)
4272648be393 Added implementation for various lossless functions
427332714ce3 Add VP8L prefix to backward ref & histogram methods.
4274fcba7be2 Fixed header file tag (WEBP_UTILS_HUFFMAN_ENCODE_H_)
4275bc703746 Add backward_ref, histogram & huffman encode modules from lossless.
4276fdccaadd Fixing nits
4277227110c4 libwebp interface changes for lossless encoding.
427850679acf minor style fixes
4279b38dfccf remove unneeded reference to NUM_LITERAL_CODES
42808979675b harmonize header description
4281c04eb7be tcoder.c: define NOT_HAVE_LOG2 for MSVC builds
42829a214fa1 Merge "VP8[L]GetInfo: check input pointers"
42835c5be8ba VP8[L]GetInfo: check input pointers
42840c188fec Merge changes I431acdfe,I713659b7
4285b3515c62 mux: drop 'chunk' from ChunkInfo member names
4286aea7923c muxi.h: remove some unused defines
428701422492 update NEWS file for next release
428829e3f7ec Merge "dec: remove deprecated WebPINew()"
42894718e449 Merge "muxedit: a few more size_t changes"
429082654f96 Merge "muxedit: remove a few redundant NULL checks"
429102f27fbd dec: remove deprecated WebPINew()
4292ccddb3fc muxedit: remove a few redundant NULL checks
4293a6cdf710 muxedit: a few more size_t changes
4294a3846892 Merge "mux: remove unused LIST_ID"
429511ae46ae alpha.c: quiet some size_t -> int conversion warnings
4296dee46692 mux: remove unused LIST_ID
429703f1f493 mux: add version checked entry points
42986a0abdaa Merge "doc: tile/alpha corrections"
4299c8139fbe Merge "few cosmetics"
430068338737 Merge "lossless: remove some size_t -> int conversions"
43015249e94a doc: tile/alpha corrections
4302d96e722b huffman: quiet int64 -> int conversion warning
4303532020f2 lossless: remove some size_t -> int conversions
430423be6edf few cosmetics
43051349edad Merge "configure: AC_ARG_* use AS_HELP_STRING"
4306bfbcc60a configure: AC_ARG_* use AS_HELP_STRING
43071427ca8e Merge "Makefile.am: header file maintenance"
4308087332e3 Merge "remove unused parameter 'round' from CalcProba()"
43099630e168 remove unused parameter 'round' from CalcProba()
431092092eaa Merge "bit_reader.h: correct include"
4311a87fc3f6 Merge "mux: ensure # images = # tiles"
431253af99b1 Merge "mux: use size_t consistently"
431339a57dae Makefile.am: header file maintenance
43141bd0bd0d bit_reader.h: correct include
4315326a3c6b mux: ensure # images = # tiles
431695667b8d mux: use size_t consistently
4317231ec1fb Removing the indirection of meta-huffman tables.
431815ebcbaa check return pointer from MuxImageGetListFromId
4319b0d6c4a7 Merge "configure: remove test for zlib.h"
43208cccac50 Merge "dsp/lossless: silence some build warnings"
4321b08819a6 dsp/lossless: silence some build warnings
43227ae22521 Android.mk: SSE2 & NEON updates
43230a49e3f3 Merge "makefile.unix add missing header files"
43242e75a9a1 Merge "decode.h: use size_t consistently"
4325fa13035e configure: remove test for zlib.h
4326d3adc81d makefile.unix add missing header files
4327262fe01b Merge "makefile.unix & Android.mk: cosmetics"
43284cce137e Merge "enc_sse2 add missing stdlib.h include"
432980256b85 enc_sse2 add missing stdlib.h include
43309b3d1f3a decode.h: use size_t consistently
433164083d3c Merge "Makefile.am: cosmetics"
4332dceb8b4d Merge changes If1331d3c,I86fe3847
43330e33d7bf Merge "webp/decode.h: fix prototypes"
4334fac0f12e rename BitReader to VP8LBitReader
4335fbd82b5a types.h: centralize use of stddef.h
43362154835f Makefile.am: cosmetics
43371c92bd37 vp8io: use size_t for buffer size
433890ead710 fix some more uint32_t -> size_t typing
4339cbe705c7 webp/decode.h: fix prototypes
43403f8ec1c2 makefile.unix & Android.mk: cosmetics
4341217ec7f4 Remove tabs in configure.ac
4342b3d35fc1 Merge "Android.mk & Makefile.vc: add new files"
43430df04b9e Android.mk & Makefile.vc: add new files
4344e4f20c5b Merge "automake: replace 'silent-rules' w/AM_SILENT_RULES"
43458d254a09 cosmetics
43466860c2ea fix some uint32_t -> size_t typing
43474af1858a Fix a crash due to max symbol in a tree >= alphabet size
43486f01b830 split the VP8 and VP8L decoding properly
4349f2623dbe enable lossless decoder
4350b96efd7d add dec/vp8i.h changes from experimental
435119f6398e add dec/vp8l{i.h,.c} from experimental
4352c4ae53c8 add utils/bit_reader.[hc] changes from experimental
4353514d0089 add dsp/lossless.[hc] from experimental
43549c67291d add utils/huffman.[hc] from experimental
4355337914a0 add utils/color_cache.[hc] from experimental
4356b3bf8fe7 the read-overflow code-path wasn't reporting as an error
43571db888ba take colorspace into account when cropping
435861c2d51f move the rescaling code into its own file and make enc/ and dec/ use it.
4359efc2016a Make rescaler methods generic
43603eacee81 Move rescaler methods out of io.c.
4361a69b893d automake: replace 'silent-rules' w/AM_SILENT_RULES
43626f7bf645 issue 111: fix little-endian problem in bit-reader
4363ed278e22 Removed unnecessary lookup
4364cd8c3ba7 fix some warnings: down-cast and possibly-uninitialized variable
43650a7102ba ~1% improvement of alpha compression
43663bc1b141 Merge "Reformat container doc"
4367dc17abdc mux: cosmetics
4368cb5810df Merge "WebPMuxGetImage: allow image param to be NULL"
4369506a4af2 mux: cosmetics
4370135e8b19 WebPMuxGetImage: allow image param to be NULL
4371de556b68 Merge "README.mux: reword some descriptions"
43720ee2aeb9 Makefile.vc: use batch mode rules
4373d9acddc0 msvc: move {i,p}db creation to object directory
4374237c9aa7 Merge "expose WebPFree function for DLL builds"
4375b3e4054f silence msvc debug build warning
437645feb55d expose WebPFree function for DLL builds
437711316d84 README.mux: reword some descriptions
43784be52f4a factorize WebPMuxValidate
437914f6b9f6 mux: light cleanup
43805e96a5db add more param checks to WebPPictureDistortion()
43818abaf820 Merge "silence some type size related warnings"
43821601a39b silence some type size related warnings
4383f3abe520 Merge "idec: simplify buffer size calculation"
4384a9c5cd4c idec: simplify buffer size calculation
43857b06bd7f Merge "configure/automake: add silent-rules option"
4386e9a7d145 Reformat container doc
4387d4e5c7f3 configure/automake: add silent-rules option
43885081db78 configure/automake: no -version-info for convenience libs
438985b6ff68 Merge "idec: fix WebPIUpdate failure"
43907bb6a9cc idec: fix internal state corruption
439189cd1bb8 idec: fix WebPIUpdate failure
439201b63806 4-5% faster decoding, optimized byte loads in arithmetic decoder.
4393631117ea Merge "cosmetics & warnings"
4394a0b2736d cosmetics & warnings
4395f73947f4 use 32bit for storing dequant coeffs, instead of 16b.
4396b9600308 Merge "store prediction mode array as uint8_t[16], not int[16]."
43977b67881a store prediction mode array as uint8_t[16], not int[16].
4398cab8d4dc Merge "NEON TransformOne"
4399ba503fda NEON TransformOne
44009f740e3b Merge "gcc warning fix: remove the 'const' qualifier."
4401f76d3587 gcc warning fix: remove the 'const' qualifier.
4402e78478d6 Merge "webpmux: make more use of WebPData"
4403f85bba3d Merge "manpages: add BUGS section"
440448a43bbf Merge "makefile.unix: variable cosmetics"
4405c274dc96 makefile.unix: variable cosmetics
44061f7b8595 re-organize the error-handling in the main loop a bit
44071336fa71 Only recompute level_cost_[] when needed
4408771ee449 manpages: add BUGS section
44090f7820e6 webpmux: make more use of WebPData
4410974aaff3 examples: logging updates
44116c14aadd Merge "better token buffer code"
4412f4054250 better token buffer code
441318d959fa Merge "mux: add WebPData type"
4414eec4b877 mux: add WebPData type
44150de3096b use 16bit counters for recording proba counts
44167f23678d fix for LevelCost + little speed-up
44177107d544 further speed-up/cleanup of RecordCoeffs() and GetResidualCost()
4418fd221040 Introduce Token buffer (unused for now)
44195fa148f4 Merge "speed-up GetResidualCost()"
442028a9d9b4 speed-up GetResidualCost()
442111e7dadd Merge "misc cosmetics"
4422378086bd misc cosmetics
4423d61479f9 add -print_psnr and -print_ssim options to cwebp.
44242e3e8b2e add a WebPCleanupTransparentArea() method
4425552c1217 Merge "mux: plug some memory leaks on error"
4426a2a81f7d Merge "fix Mach-O shared library build"
4427b3482c43 Merge "fix gcc-4.0 apple 32-bit build"
4428e4e3ec19 fix gcc-4.0 apple 32-bit build
4429b0d2fecf mux: plug some memory leaks on error
4430f0d2c7a7 pass of cosmetics
4431b309a6f9 fix Mach-O shared library build
4432241ddd38 doc: delete mux container pdf
44338b1ba272 doc: update VP8 decode guide link
44347e4371c5 WebPMuxCreate: fix unchecked malloc
4435eb425586 Merge "have makefile.unix clean up src/webp/*~ too"
4436a85c3631 Merge "correct EncodeAlpha documentation"
4437a33842fd Merge "Update webp container spec with alpha filter options."
44388d6490da Incremental support for some of the mux APIs.
4439b8375abd have makefile.unix clean up src/webp/*~ too
4440b5855fc7 correct EncodeAlpha documentation
4441dba37fea Update webp container spec with alpha filter options.
44422e74ec8b fix compile under MINGW
4443716d1d7f fix suboptimal MAX_LEN cut-off limit
444457cab7b8 Harmonize the alpha-filter predictions at boundary
44453a989534 Merge "Fix bug for Alpha in RGBA_4444 color-mode."
44468ca2076d Introduce a 'fast' alpha mode
4447221a06bb Fix bug for Alpha in RGBA_4444 color-mode.
4448ad1e163a cosmetics: normalize copyright headers
4449c77424d7 cosmetics: light include cleanup
44509d0e17c9 fix msvc build breakage after 252028a
44517c4c177c Some readability fixes for mux library
4452d8a47e66 Merge "Add predictive filtering option for Alpha."
4453252028aa Add predictive filtering option for Alpha.
44549b69be1c Merge "Simplify mux library code"
4455a056170e Simplify mux library code
4456992187a3 improve log2 test
4457e852f832 update Android.mk file list
4458a90cb2be reduce number of copies and mallocs in alpha plane enc/dec
4459b1662b05 fix some more type conversion warnings w/MSVC
4460223d8c60 fix some uint64_t -> int conversion warnings with MSC
4461c1a0437b Merge "simplify checks for enabling SSE2 code"
4462f06817aa simplify checks for enabling SSE2 code
4463948d4fe9 silence a msvc build warning
446491179549 vwebp: msvc build tweaks
44657937b409 simple WebP viewer, based on OpenGL
44666aac1df1 add a bunch of missing 'extern "C"'
4467421eb99d Merge "Remove assigned-but-not-used variable "br""
446891e27f45 better fitting names for upsampling functions
4469a5d7ed5c Remove assigned-but-not-used variable "br"
4470f62d2c94 remove unused 'has_alpha' from VP8GetInfo() signature
447108e86582 trap alpha-decoding error
4472b361eca1 add cut-off to arith coder probability update.
44738666a93a Some bug-fixes for images with alpha.
4474273a12a0 fix off-by-1 diff in case cropping and simple filtering
44752f741d1e webpmux: ReadImage: fix ptr free in error case
4476721f3f48 fix alpha decode
447760942c8c fix the has_alpha_ order
447830971c9e Implement progress report (and user abort)
4479eda520a9 cosmetics after 9523f2a
448038bd5bb5 Merge "Better alpha support in webpmux binary"
4481ccbaebfe Merge "Updated the includes to relative paths."
4482d71fbdcc fix small typo in error message array
4483cdf97aa2 Better alpha support in webpmux binary
4484885f25bc Updated the includes to relative paths.
4485a0ec9aac Update WebP encoder (cwebp) to support Alpha.
4486667b769a Fixed the include for types.h within mux.h
44879523f2a5 Add Alpha Encode support from WebPEncode.
448816612ddd Merge "Add Alpha Decode support from WebPDecode."
4489d117a940 Add Alpha Decode support from WebPDecode.
449067228734 cosmetics after e1947a9
4491e1947a92 Add Alpha encode/decode code.
4492afc4c5d6 simplify code by introducing a CopyPlane() helper func
4493113b3128 Merge "MUX API Updates"
4494c398f595 MUX API Updates
44955acf04ef remove orphan source file
4496059f03ef Merge "dec: validate colorspace before using as array index"
449770a03989 Merge "factorize some code"
44989b243b3d factorize some code
4499372e2b46 Correct a bug in ReadPNG() with GRAY_ALPHA images
4500469d6eb9 Merge "Makefile.am: remove redundant noinst_HEADERS"
45019fe3372f dec: validate colorspace before using as array index
45028962030f remove orphan source file
4503ced3e3f4 Makefile.am: remove redundant noinst_HEADERS
4504964387ed use WEBP_INLINE for inline function declarations
450590880a11 Merge "manpages: break long lines"
4506b5910895 Merge "manpages: minor formatting updates"
45074c451e4a Merge "Rectify the Chunk parsing logic."
450804e84cf1 examples: slight cleanup
4509099717ce manpages: break long lines
45101daf39bb manpages: minor formatting updates
4511abd030b5 fix missing "(void)" in function signature
4512f6a7d758 remove useless test
4513f07b2138 Rectify the Chunk parsing logic.
4514b8634f7d webpmux: fix lib link order
451542c2e682 Fix missing coma (on uncompiled code)
4516d8329d41 Android.mk: add missing source files
451713a54df5 Merge "More aggressive copy-edit; add TODO; validate HTML5"
4518868b96ae More aggressive copy-edit; add TODO; validate HTML5
4519767afea2 configure: check for a symbol contained in libpng
4520408b8918 Merge "Linewrap at 72 cols. Casual copy-edit."
45213ae318c7 Merge "Restore (most) emphasis; add emphasis to normative RFC 2119 terms (MUST, etc.)"
4522918eb2d8 Merge "Basic container doc source clean-up; fix lists and pseudocode blocks."
452303bec9e0 Linewrap at 72 cols. Casual copy-edit.
45242678d819 Restore (most) emphasis; add emphasis to normative RFC 2119 terms (MUST, etc.)
4525428674da Basic container doc source clean-up; fix lists and pseudocode blocks.
45266a77d928 Merge "Makefile.vc: cosmetics"
452728c38e8c Merge "Makefile.vc: condense directory creation rules"
452855be2cf8 Initial import of container spec document, from pdftotext transform.
4529a82a788b Makefile.vc: cosmetics
4530c8f41ce5 Makefile.vc: condense directory creation rules
45312b877cd0 Some fixes to Makefile.vc to support the src\mux directory.
45323eb969b3 Merge "Add Makefile.vc for Mux library & binary."
4533e78e971e Add Makefile.vc for Mux library & binary.
45346aedde58 Add manual for WebPMux tool.
45358a360d0a Merge "Added WebPMux Binary."
4536a4f32cae Added WebPMux Binary.
4537f3bf4c76 Added Mux Container Spec & README for MUX-API.
45389f761cfa Changed function signature for WebPMuxCreate
45395f31b5ec Merge "Add Mux library for manipulating WebP container."
45402315785f Add Mux library for manipulating WebP container.
45417e198abb update ChangeLog (tag: v0.1.3)
4542dfc9c1ea Harmonize the dates
454328ad70c5 Fix PNG decoding bug
4544846e93c5 Update AUTHORS & add .mailmap
4545563e52d6 cosmetics after '76036f5 Refactor decoder library'
454676036f54 Refactor decoder library
4547377ef43c configure.ac: update AC_INIT params
45487a8d8762 use a user-visible MACRO for max width/height.
4549d4e9f559 NEON decode support in WebP
45500ee683b5 update libtool version-info
4551fdbe02c5 windows: match _cond_destroy logic w/return variable name
4552206b686b README: correct advanced decode api pseudo-code
45536a32a0f5 make VP8BitReader a typedef, for better re-use
4554b112e836 create a libwebputils under src/utils
4555ee697d9f harmonize the include guards and #endif comments
4556a1ec07a6 Fixing compiler error in non x86 arch.
4557dcfa509a Fixed recursive inclusion of bit_writer.h and vp8enci.h.
4558e06ac088 create a separate libwebpdsp under src/dsp
4559ebeb412a use unsigned int for bitfields
4560341cc56a make kNewRange a static array
4561227a91e5 README: minor wording update
456205bd8e6a add man pages to dist
4563812dfa1a bump up versions in preparations for 0.1.3
4564a5b78c81 wrap alpha-related options under WEBP_EXPERIMENTAL_FEATURES flag
456534dc7907 regen ChangeLog for 0.1.3-rc2
45667c436630 Silence some (more) Visual Studio warnings.
456760306e8c add top-level gitattributes
45682aa6b80e Slience some Visual Studio warnings.
45694cbbb290 Merge "bump up version for next freeze"
4570a3291674 bump up version for next freeze
4571c7e86aba cosmetics: fix comment line lengths
4572c9e037ab makefile.unix: add simple dist target
457387d58ce9 makefile.unix: rule maintenance
4574d477de77 mend
4575fac15ec7 Update NEWS & README for next release V0.1.3
45766215595c Merge "add a -partition_limit option to limit the number of bits used by intra4x4"
45773814b76c Merge "reorganize chunk-parsing code"
4578900286e0 add a -partition_limit option to limit the number of bits used by intra4x4
4579cd12b4b0 add the missing cost for I4/I16 mode selection
4580dfcc2136 reorganize chunk-parsing code
45813cf20306 initialize pointers to function within VP8DspInit()
4582d21b4795 Merge "windows: add decode threading support"
4583473ae953 fix hang on thread creation failure
4584fccca420 windows: add decode threading support
4585a31f843a Use the exact PNG_INCLUDES/PNG_LIBS when testing for -lpng
4586ad9b45f1 Merge "Makefile.vc: rule maintenance"
4587565a2cab Makefile.vc: rule maintenance
45882d0da681 makefile.unix: disable Wvla by default
4589fc7815d6 multi-thread decoding: ~25-30% faster
4590acd8ba42 io->teardown() was not always called upon error
4591c85527b1 Merge "Makefile.vc: add DLL configs"
4592e1e9be35 cosmetics: spelling/grammar in README and lib headers
4593b4d0ef8f Makefile.vc: add DLL configs
4594998754a7 remove unused nb_i4_ and nb_i16_ fields.
45959f01ce3a rename WebPDecBuffer::memory -> private_memory
4596fb5d659b fix an overflow bug in LUT calculation
4597d646d5c7 swig: add WebPDecodeARGB
459878aeed40 add missing WebPDecodeARGBInto() and switch ARGB4444 to RGBA4444 as was intended
4599cd7c5292 explicitly mark library functions as extern
460019db59f8 add support for RGB565, ARGB4444 and ARGB colorspace (decoder)
4601c915fb2a encoder speed-up: hardcode special level values
4602c558bdad Rename and improve the API to retrieve decoded area
4603bf599d74 Merge "makefile.unix: disable -Wvla by default"
4604c9ea03d7 SSE2 version of strong filtering
4605993af3e2 makefile.unix: disable -Wvla by default
46063827e1bc Merge "examples: (windows/WIC) add alpha support"
4607e291fae0 SSE2 functions for the fancy upsampler.
4608a06bbe2e add WebPISetIOHooks() to set some custom hooks on the incremental decoder object.
46097643a6f2 Merge "makefile.unix: use uname to detect OSX environment"
46105142a0be export alpha channel (if present) when dumping to PGM format
461114d5731c makefile.unix: use uname to detect OSX environment
461208057062 examples: quiet warnings
46133cfe0888 examples: (windows/WIC) add alpha support
461413ed94b8 add compile warning for variable-length-array
46155a18eb1a Merge "add Advanced Decoding Interface"
46165c4f27f9 add missing \n
4617f4c4e416 80 cols fix
4618d2603105 add Advanced Decoding Interface
4619bd2f65f6 sse2 version of the complex filter
462096ed9ce0 perform two idct transforms at a time when possible
462101af7b69 use aligned stored
46220e1d1fdf Merge "Makefile.vc: add experimental target"
46232a1292a6 Makefile.vc: add experimental target
462423bf351e Enable decode SSE2 for Visual Studio
4625131a4b7b dec/dsp_sse2: fix visual studio compile
462600d9d680 swig: file reorganization
46277fc7e0d9 Merge "swig/java: basic encode support"
46283be57b16 fix MSVC compile for WEBP_EXPERIMENTAL_FEATURES
462940a7e347 dec/dsp: disable sse2 for Visual Studio builds
4630e4d540c8 add SSE2 code for transform
463154f2170a swig/java: basic encode support
4632c5d4584b call function pointers instead of C-version
4633ea43f045 Merge "configure: mingw32 targets: test for WIC support"
4634a11009d7 SSE2 version of simple in-loop filtering
463542548da9 shave one unneeded filter-cache line
463631f9dc6f configure: mingw32 targets: test for WIC support
463719559699 Merge "split expression in two."
4638415dbe46 split expression in two.
4639e29072a8 configure: test for zlib only w/--enable-experimental
4640b2b0090b Simplify Visual Studio ifdefs
4641ca7a2fd6 Add error reporting from encoding failures.
46426c9405db Merge "Makefile.vc: require CFG with clean target"
46430424ecd9 Makefile.vc: require CFG with clean target
4644003417c7 Enable SSE2 for Visual Studio builds
4645af10db4a little speed up for VP8BitUpdate()
4646e71418f8 more MSVC files to ignore
464746d90363 cosmetics
4648edf59ab3 typo fix
464972229f5f Add support for x64 and SSE2 builds under Windows.
465092e5c6e1 VP8GetInfo() + WebPResetDecParams()
4651416b7a6b raise the fixed-point precision for the rescaler
4652aa87e4e0 fix alignment
4653eb66670c disable WEBP_EXPERIMENTAL_FEATURES
4654c5ae7f65 typo fix: USE_ => WEBP_
4655d041efae swig: add libwebp.jar/libwebp_java_wrap.c
4656f6fb3877 add swig interface
4657e9273902 align buffer for double too
4658842c009b fix -strong option
4659d0a70387 Merge "cosmetics"
4660fc0a02e5 fix the dichotomy loop
466138369c03 cosmetics
46628dfc4c6f factorize and unify GetAlpha() between the C and SSE2 version
46636d0e66c2 prepare experimentation with yuv444 / 422
466479cc49f5 add a --enable-experimental option to './configure'
4665d7575238 sse2 version of CollectHistogram()
4666c1c728d6 add an extra #ifdef WEBP_EXPERIMENTAL_FEATURES to avoid 'unused variable' warning
466760c61d2d always call VP*EncDeleteAlpha() unconditionnally, for simplicity
46680f8c6384 simply don't call WriteExtensions() if WEBP_EXPERIMENTAL_FEATURES is not defined
466947c661d5 rename swap -> swap_rb
467010d55bbb move chunk[] declaration out of the for() loop
4671517cec21 fix indentation
4672f7d9e261 fix merge problems
46738fd42b3a add a stride 'a_stride' for the alpha plane
4674b8dcbf2f fix alpha-plane copy and crop methods
4675cdef89de fix some 'unused variable' warning
4676fb29c262 SSE2 version of the fwd transform and the squared sum metric
46772ab4b72f EXPERIMENTAL: add support for alpha channel
4678cfbf88a6 add SSE2 functions. ~2x faster encoding on average.
4679e7ff3f9a merge two ITransforms together when applicable and change the TTransform to return the sum directly.
4680ca554137 fix WebPIDecGetRGB() to accept any RGB(A) mode, not just MODE_RGB
46818aa50efd fix some 'man' typos
4682d3f3bdda update ChangeLog (tag: v0.1.2)
4683d7e9a69c update contributor list
4684261abb8e add a 'superclean' section
4685276ae825 Remove files not mean to be in git, and update .gitignore
468624868455 build: prepare libwebp.pc
468714ceb6e8 add "-version" description to man pages
4688b247a3b2 Create the m4 directory, and also place .gitignore in there for libtool.
4689cdd734c9 Resolve automake warnings
4690c5fa726e build: add pkgconfig files
4691b20aaca2 build: just use autoreconf, avoid calling tools manually
46924b0b0d66 cwebp: use modern functions
4693efbc6c41 update Android.mk
46947777570b better version of ChangeLog
4695fa70d2b7 update version number in the DOC
4696f8db5d5d more C89-fixes
46970de013b3 fix typos
4698650ffa3b add version getters for decoder and encoder
4699be4867d2 doc for incremental decoding
470056732a1b add idec.obj in MSVC makefile
4701208afb5e add c++ guards
47028bf76fe0 add incremental decoding
47031f288328 'inline' isn't defined in strict ansi c89
47048b77c632 move the quantization function to dsp.c
4705b2c3575c add a 'last_y' field to WebPDecParams
47062654c3da correctly pass along the exact same status returned from ParsePartitions
47074704146a add missing precision in the man
47086d978a6c add error messages
47096463e6ab add some install instructions, and fix intel-mac flags
471005fb7bfc Merge ".gitignore: initial version"
4711c33f0195 .gitignore: initial version
4712e532b9ab Makefile: allow out of tree builds
47134c0da7aa enable sparse dc/ac transforms
471407dbb8d5 clarify the return logic
47155c69e1bb fix bigger-by-1 array
47167c5267e3 fix a (harmless) typo: non_zero_ -> non_zero_ac_
4717bc752135 fix missing free()
4718af3e2aaa remove trailing spaces
471913e50da6 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.
4720f4888f77 emit 9 - nb_bits trailing zeros instead of 8
47213db65255 separate block-parsing into a visible VP8DecodeMB()
4722a871de02 add missing extern "C"
4723b3ce8c52 remove a gcc warning about type pun by using a proper union'd type
4724e1863715 update after addition of webpi.h
47253e856e2d Extract some useful functions around decoding buffer WebPDecParams.
4726d5bc05a4 make the filtering process match libvpx and ffvp8
4727dd60138d add man pages for cwebp(1) and dwebp(1)
4728c4fa3644 fix header
47295b70b378 * add an option to bypass_filtering in VP8Io.
4730b97a4003 simplify QuantizeBlock code a bit
473184b58ebb add more checks around picture allocation
4732b65a3e10     remove absolute_delta_ field and syntax code
47330744e842 Dont' open output file until we're sure the input file is valid
4734d5bd54c7 fix typo and buggy line
4735f7a9549d Add a simple top-level makefile.unix for quick & easy build.
47365f36b944 update the doc for the -f option
4737f61d14aa a WebP encoder converts PNG & JPEG to WebP
473881c96621 oops: forgotten call to Initialize() + move the error message to a more useful place
473987ffa005 typo: fix a missing 'R', was confusing.
4740b04b857a * add decoding measurement using stopwatch.h (use -v option) * support PNG output through WIC on Win32
4741746a4820 * make (*put)() hook return a bool for abort request. * add an enum for VP8Status() to make things clearer
474273c973e6 * strengthen riff/chunk size checks * don't consider odd-sized chunks being an error
47431dc4611a add support for PNG output (default) regularize include guards
4744860641df fix a typo: sizeof(kYModeProbaInter0) => sizeof(kUVModeProbaInter0)
47453254fc52 fix some petty constness fix the ./configure file too
4746504d3393 fix eof_ mis-initialization
47472bc0778f leftover Makefile.* from previous commit
4748d2cf04e4 move Makefile.am one level below, to src/dec fix typos here and there dwebp is now an installed program
4749ade92de8 typo: vp8.h -> decode_vp8.h
4750d7241241 forgot to declare types.h to be installed
47516421a7a4 move the decoder sourcetree to a sub-location src/dec to make room for future libs sources
4752a9b3eab6 correct layout name is IMC4.
47532330522c handle corner case of zero-dimensions
4754280c3658 make VP8Init() handle short buffers (< 2 bytes) correctly
4755b1c9e8b4 handle error cases more robustly
47560e94935c Merge "table-less version of clip_8b()"
47571e0a2d25 table-less version of clip_8b()
4758e12109ee dwebp: change -yuv option to -raw change the layout to IMC2
4759d72180a4 speed-up fancy upscaler
47609145f3bc reset eof_ at construction time
4761a7ee0559 simplify the logic of GetCoeffs()
4762f67b5939 lot of cosmetics
4763ea27d7c6 fix endian problem on PowerPC
4764beb0a1ba fix signature of VP8StoreBlock
4765b128c5e2 Merge "fancy chroma upscaling"
47666a37a2aa fancy chroma upscaling
4767ff565edc fix two numeric typos
47685a936a0a use uintptr_t for casting pointers to ints
4769e14a0301 for cross_compiling=yes to prevent executing any binary
477083b545ee add vc9+ makefile
4771296f6914 fix output loop for small height
4772cbfbb5c3 convert to plain-C
4773f09f96ee Fix declaration after statement warning
47745981ee55 Fix UV plane ac/dc quantizer transposition
4775c8d15efa convert to ANSI-C
4776c3f41cb4 Initial commit
4777