Vincent Rabaud
c8f14093ac
Fix code to compile with C++.
...
Change-Id: I324236440cb853cb3c8fb278ef22449cd9772ad7
2017-05-15 16:22:03 +02:00
Pascal Massimino
d78e5867ff
Merge "configure: test for -Wconstant-conversion"
2017-05-13 06:10:21 +00:00
James Zern
481e91eb86
Merge "pnmdec,PAM: set bytes_per_px based on depth when missing"
2017-05-13 00:47:36 +00:00
James Zern
93b1275373
configure: test for -Wconstant-conversion
...
Change-Id: Idf442e35dd8b414c30b8f53ade6f32dfa6f74d39
2017-05-12 17:02:06 +02:00
James Zern
645f0c53de
pnmdec,PAM: set bytes_per_px based on depth when missing
...
this avoids setting bytes_per_px < depth causing an undersized
allocation for rgb import resulting in a crash.
BUG=b/37930872
Change-Id: I32a86f91528acc084a53d08c9fde9f2f1270a603
2017-05-10 19:15:50 -04:00
Pascal Massimino
e91546054d
Merge "vwebp: activate GLUT double-buffering"
2017-05-10 05:46:20 +00:00
Pascal Massimino
818d795b09
vwebp: activate GLUT double-buffering
...
This prevents the flickering of animated webp + alpha.
Change-Id: I335a434ccc6c90e32528c9832555a38cc0f71cc4
2017-05-10 05:16:47 +00:00
hui su
d63e6f4b23
Add a man page for webpinfo
...
BUG=webp:330
Change-Id: I7b02274401c935affa173a49a883a39272b6dcc3
2017-05-09 16:14:44 -07:00
Pascal Massimino
4d7084350e
Merge "NEON: implement ConvertRGB24ToY/BGR24/ARGB/RGBA32ToUV/ARGBToUV"
2017-05-09 15:33:34 +00:00
Pascal Massimino
faf42213f4
NEON: implement ConvertRGB24ToY/BGR24/ARGB/RGBA32ToUV/ARGBToUV
...
Change-Id: Ie68aaed36d17f56d998c1b284514860cf5d28b8a
2017-05-09 15:57:20 +02:00
Vincent Rabaud
b4d576fa9c
Install man pages with CMake.
...
Change-Id: I58a91ea00d45e1ce95250bd73613cf53e3af8401
2017-05-09 11:41:48 +02:00
Hui Su
cbc1b92117
webpinfo: add features to parse bitstream header
...
BUG=webp:330
Change-Id: If2a6ff010219fa25a2b5843725c616ee4dce65a7
2017-05-04 09:18:11 -07:00
Vincent Rabaud
e644c556c5
Fix bad bit writer initialization.
...
When re-initializing a bit writer, we could set invalid values because
the bit writer was not big enough.
Change-Id: Id25ab6712603245a5a12d5f4a86fe35a9a799a5d
2017-05-02 18:59:01 +02:00
Pascal Massimino
b62cdad287
Merge "Implement a cruncher for lossless at method 6."
2017-04-28 14:37:57 +00:00
skal
da3e4dfb6f
use the exact constant for the gamma transfer function
...
As found in BT2020 reference:
https://www.itu.int/dms_pubrec/itu-r/rec/bt/R-REC-BT.2020-2-201510-I!!PDF-E.pdf
The difference in output-size/PSNR are under the noise level.
Change-Id: I42c12000b61dca791226f3af772c5bd9d58201b8
2017-04-27 11:53:15 -07:00
James Zern
a9c701e04f
Merge "tiffdec: fix EXTRASAMPLES check"
2017-04-27 17:39:34 +00:00
Vincent Rabaud
adab8ce020
Implement a cruncher for lossless at method 6.
...
Go over the whole compression step for each of the
transforms and pick the best one.
Change-Id: I3a1b1458348c468558be0fcf491038a5724c9364
2017-04-27 18:16:04 +02:00
Pascal Massimino
1b92b237ac
Merge "Fix VP8ApplyNearLossless to respect const and stride."
2017-04-27 15:56:47 +00:00
James Zern
1923ff0222
tiffdec: fix EXTRASAMPLES check
...
the TIFFGetField() return for TIFFTAG_EXTRASAMPLES is defined as (count,
types array) [1]. previously the count was being checked rather than the
first element of the array to determine whether the alpha was associated
(pre-multiplied) and the result needed to be unmultiplied.
since:
9273e441
fix TIFF encoder regarding rgbA/RGBA
[1] http://www.libtiff.org/man/TIFFSetField.3t.html
Change-Id: I6e41be9d038fe8afb6d0aa3c8048925dc901113b
2017-04-26 22:49:11 -07:00
James Zern
97cce5ba83
tiffdec: only request EXTRASAMPLES w/> 3 samples/px
...
Change-Id: I820e7de34e500c42ab51c97a70f25319807d58eb
2017-04-25 19:10:08 -07:00
Vincent Rabaud
0dcd85b6c4
Fix VP8ApplyNearLossless to respect const and stride.
...
Change-Id: I94a90220b5a175228fc48a4b299847b60cf5081b
2017-04-25 19:04:52 +02:00
Pascal Massimino
f768218966
yuv: rationalize the C/SSE2 function naming
...
+ implement some easy missing targets in SSE2 (565/4444)
Change-Id: Ib575f7ada2a0ed7309cddd238f8bfc0e8999f145
2017-04-21 13:52:25 +02:00
Pascal Massimino
52245424b0
NEON implementation of some Sharp-YUV420 functions
...
Change-Id: I449ef9c76b06f971f6e2ad7f9db96bf906d8fe1f
new-file: dsp/yuv_neon.c
2017-04-18 19:22:37 +02:00
Vincent Rabaud
690efd82f8
Avoid several backward reference copies.
...
An extra VP8LBackwardRefs struct is used but it was used internally anyway.
Change-Id: Ifcb36ce42b8c21ef3c7a1daf38cb7f714687fcb2
2017-04-14 15:34:50 +02:00
hui su
4bb1f607d7
src/dec/vp8_dec.h, cosmetics: fix comments
...
Change-Id: If076cdf63965bad9b00cbe19c922320638b65f46
2017-04-07 15:29:57 -07:00
James Zern
285748be78
cmake: build/install webpinfo
...
Change-Id: Ia3dd24aec0c985855865f32280de1799d4bb8e9e
2017-03-23 20:37:52 -07:00
James Zern
78fd199c3b
backward_references_enc.c: clear -Wshadow warnings
...
index -> position
similar to: 2f5e8934
remove -Wshadow warnings
Change-Id: Ieaf8363d726a8fdf4e799845a81364e1dfae438a
2017-03-22 23:52:19 -07:00
James Zern
ae836410bb
WebPLog2FloorC: clear -Wshadow warning
...
log -> log_value
Change-Id: Iae7cea7e0875e59b0806de41eb0b58815307495e
2017-03-22 23:50:31 -07:00
Pascal Massimino
d0b7404e00
Merge "WASM support"
2017-03-21 13:27:55 +00:00
Pascal Massimino
134e314fd8
WASM support
...
demo page: webp_js/index_wasm.html
Change-Id: I9e6bde205c2730f96c5f30ec01f4bfacf1f5d128
2017-03-21 14:07:22 +01:00
Pascal Massimino
c08adb6fbc
Merge "VP8LEnc: remove use of BitsLog2Ceiling()"
2017-03-20 13:12:19 +00:00
Pascal Massimino
28c37ebd5a
VP8LEnc: remove use of BitsLog2Ceiling()
...
was only used once. Better fall back for Log2Floor.
Change-Id: Ibcc26505440971bffe62ba6aca3d179ca85791d4
2017-03-20 02:58:16 -07:00
James Zern
2cb58ab2d7
webpinfo: output format as a human readable string
...
Change-Id: I3a3d95bae049ee1053c9d92a364cf1b75f277f81
2017-03-17 00:23:11 -07:00
Pascal Massimino
bb175a935e
Merge "rename some symbols clashing with MSVC headers"
2017-03-16 17:53:37 +00:00
Vincent Rabaud
39eda6584f
Remove a duplicated pixel hash implementation.
...
Change-Id: If0df61add2fdf404f9baf0820ca83faa50f2791c
2017-03-16 16:15:40 +01:00
Pascal Massimino
36b8274deb
rename some symbols clashing with MSVC headers
...
This is to prepare the inclusion of <windows.h>
FrameRect => FrameRectangle
CLIP_MASK => CLIP_8b_MASK
Change-Id: Ia4b1fa4ac06137b4102c91e232206a1fb7159ce0
2017-03-16 10:42:00 +01:00
Pascal Massimino
274daf5415
Add webpinfo tool.
...
A command line tool to print out the chunk level structure of
WebP files along with basic integrity checks.
BUG=webp:330
Change-Id: Ic69f646f649abb655b1854621d99afedeed158d7
2017-03-14 11:41:17 +01:00
Pascal Massimino
ec5036e475
add explicit reference to /usr/local/{lib,inc}
...
Change-Id: Idf0450bc715c476950f23b2f9db383a5b9936890
2017-03-08 09:14:15 +01:00
Pascal Massimino
18f0dfac82
Merge "fix TIFF encoder regarding rgbA/RGBA"
2017-03-08 08:07:43 +00:00
James Zern
4e2b0b50ea
Merge "webpdec.h: fix a doc typo"
2017-03-06 22:48:02 +00:00
Vincent Rabaud
e2eeabff12
Merge "Install binaries, libraries and headers in CMake."
2017-03-06 08:22:08 +00:00
Pascal Massimino
836607e68a
webpdec.h: fix a doc typo
...
Change-Id: Ie1c4c2f0008904bfc37c838d2bd168e982155308
2017-03-05 09:38:51 +00:00
Pascal Massimino
9273e441da
fix TIFF encoder regarding rgbA/RGBA
...
Encoder:
We were always using ExtraSamples=1, which means associated-alpha.
But we don't need the (lossy) excursion to rgbA format. We can save
the samples as RGBA directly, by changing ExtraSamples to '2'.
The TIFF encoder now checks the colorspace properly, to handle
premultiplied format as well as non-premultiplied.
Decoder:
The result of TIFFReadRGBAImageOriented() is always pre-multiply.
So, in case an alpha channel is present, we need to unmultiply it before
calling WebPPictureImportRGBA().
See:
https://www.itu.int/itudoc/itu-t/com16/tiff-fx/docs/tiff6.pdf (page 31)
and also http://www.asmail.be/msg0055469184.html
Change-Id: I3258bfdb0eb2e1a53d6c04414f55edb2926c938c
2017-03-03 10:36:29 -08:00
Pascal Massimino
17e3c11f99
Add limited PAM decoding support
...
Should support RGB / RGB_ALPHA / GRAYSCALE correctly, though
Change-Id: Idb1470581ebdfc6efee73009b2abd53889e901cb
2017-03-03 11:19:48 +01:00
Vincent Rabaud
5f62487189
Install binaries, libraries and headers in CMake.
...
Change-Id: Iaf32c716e0252f9a0e9f5d663f02b8fad98096e2
2017-03-03 09:35:02 +01:00
James Zern
976adac1ce
Merge "lossless incremental decoding: fix missing eos_ test"
2017-03-01 02:54:13 +00:00
Pascal Massimino
f8fad4fac1
lossless incremental decoding: fix missing eos_ test
...
The patch 21735e0
introduced a bug where a goto path was not testing
the eos_ state. If this happened just before a row_sync, a SaveState()
would be called that would store the eos_ state as '1' till the end
of the loop. This usually was not a problem, except for the very last
chunk where we disable the incremental decoding altogether (we have all
the data). The termination tests were then going wrong.
The fix is to add a proper eos_ test and avoid falling in this inconsistent
state.
(21735e06f7
)
BUG=webp:332
Change-Id: Ib16773aee26bfd068fbf4e9db3d2313bd978b269
2017-02-28 15:17:33 -08:00
Pascal Massimino
27415d4102
Merge "vwebp_sdl: fix the makefile.unix"
2017-02-28 23:05:21 +00:00
Pascal Massimino
4956618276
Merge "ImgIoUtilWriteFile(): use ImgIoUtilSetBinaryMode"
2017-02-28 23:05:12 +00:00
Vincent Rabaud
6f75a51b58
Analyze the transform entropy on the whole image.
...
The first column was skipped before.
Change-Id: I11521a6a48288d771e8fb83869fda08753f0fbcb
2017-02-28 15:48:59 +01:00