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 & 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