Vincent Rabaud
289e62a313
Remove declaration of unimplemented VP8ApplyNearLosslessPredict
...
Change-Id: I1bebea099a06bccfdd103ba0557320d6ad68af38
2017-08-23 17:16:29 +02:00
James Zern
34130afe8b
anim_encode: fix integer overflow
...
calculate the file duration using unsigned math. this could still result
in an incorrect average duration calculation if there were multiple
rollovers. caching the duration is an option if it was desirable to
support such an extreme case.
Change-Id: I3875d94d081fec947c03a857055df6e27ff5351d
2017-08-18 16:52:57 -07:00
Pascal Massimino
42c79aa66b
Merge "Encoder: harmonize function suffixes"
2017-08-09 18:13:57 +00:00
skal
b09307dcde
Encoder: harmonize function suffixes
...
BUG=webp:355
Change-Id: Ia2fe95db7dfb303f3f64e390d43bc41b8933256c
2017-08-09 02:41:01 +00:00
James Zern
bed0456d58
Merge "SSIM: harmonize the function suffix"
2017-08-09 02:37:39 +00:00
skal
54f6a3cf3a
lossless_sse2.c: fix some missed suffix changes
...
BUG=webp:355
Change-Id: If830e3169a4021899ed850aa7edfd94b81fa2cf9
2017-08-08 14:19:05 -07:00
skal
088f1dcce8
SSIM: harmonize the function suffix
...
BUG=webp:355
Change-Id: I751852ddb2abb7319e41e6c7d022ac4f288b4d08
2017-08-08 08:52:06 -07:00
skal
a0f72a4fe0
VP8LTransformColorFunc: drop an non-respected 'const' from the signature.
...
BUG=webp:355
Change-Id: Ie99bf377a55db2950bfbac9423bfe0967623ea5d
2017-08-07 19:05:01 -07:00
Pascal Massimino
8c934902cd
Merge "Lossess dec: harmonize the function suffixes"
2017-08-08 02:04:10 +00:00
skal
622242aaba
Lossess dec: harmonize the function suffixes
...
BUG=webp:355
Change-Id: I445d64df6aa2e347f41e7af306be12a77e2ac6a5
2017-08-07 18:22:41 -07:00
skal
1411f02761
Lossless Enc: harmonize the function suffixes
...
BUG=webp:355
Change-Id: I8baf506bd2a27095b956ef22a862b071f60c0d72
2017-08-07 18:02:07 -07:00
Vincent Rabaud
24ad2e3c99
add const to two variables
...
Change-Id: I97374ccbf118baa59425346ffc439036a4482bf4
2017-08-07 23:02:15 +02:00
Pascal Massimino
46efe062b8
Merge "Allow the lossless cruncher to work for alpha."
2017-08-07 21:00:02 +00:00
Vincent Rabaud
8c3f9a4706
Speed-up LZ77.
...
No need to look for a bigger maximum reach if we reach the end
of the image.
Change-Id: I56b166f9266f15cdff5aa59a75559972db19858f
2017-08-07 21:01:27 +02:00
Vincent Rabaud
1aef4c710b
Allow the lossless cruncher to work for alpha.
...
Change-Id: I7185e75404fae8c739e0536026f4687d25decad7
2017-08-07 20:58:05 +02:00
Vincent Rabaud
b8821dbd81
Improve the box LZ77 speed.
...
For a pixel, we look for the longest match starting in a window around it.
For the following pixel, the previous result can be used and smaller
search window is used.
Change-Id: Ice16f9a7c8754099d068380848f0d77de3f756ac
2017-08-06 20:15:20 +02:00
James Zern
7beed2807b
add missing ()s to macro parameters
...
BUG=webp:355
Change-Id: I616c6d3540d6551edd1b1cfdb5bffcf0a044c90f
2017-08-04 17:02:53 -07:00
James Zern
6473d20b3e
Merge "fix Android standalone toolchain build"
2017-08-04 18:25:21 +00:00
James Zern
0c83a8bc69
Merge "yuv: harmonize suffix naming"
2017-08-02 06:35:36 +00:00
James Zern
c6d1db4b36
fix Android standalone toolchain build
...
add a check for cpu-features.h and rework some of the ifdef's around
android + neon. for android builds with cpu-features enabled the
*_neon.c files will still need to be flagged correctly (with e.g.,
.c.neon in Android.mk) to properly build them.
BUG=webp:353
Change-Id: I905ce305af0a204e560b915d8665093a3edaceb9
2017-08-01 22:59:03 -07:00
skal
663a6d9d2e
unify the ALTERNATE_CODE flag usage
...
Pattern is now:
#if !defined(FLAG)
#define FLAG 0 // ALTERNATE_CODE
#endif
...
#if (FLAG == 1)
...
#else
...
#endif // FLAG
...
Removed some unused code / flags:
WEBP_YUV_USE_TABLE, WEBP_REFERENCE_IMPLEMENTATION,
experimental code, VP8YUVInit(), ...
BUG=webp:355
Change-Id: I98deb9189446a4cfd665c13ea8aa1ce6a308c63f
2017-08-01 20:49:29 -07:00
skal
73ea9f2702
yuv: harmonize suffix naming
...
BUG=webp:355
Change-Id: I403c4b3cdfc55b3b1648f98a1d189326a3e660a3
2017-08-01 20:40:00 -07:00
skal
c4568b47fd
Rescaler: harmonize the suffix naming
...
BUG=webp:355
Change-Id: I7720502c62f96c780793d3d881eac7b3afae1418
2017-08-01 23:49:44 +00:00
Pascal Massimino
6cb13b0532
Merge "alpha_processing: harmonize the naming suffixes to be _C()"
2017-08-01 03:38:03 +00:00
James Zern
83a3e69a20
Merge "simplify WEBP_EXTERN macro"
2017-08-01 03:29:12 +00:00
Pascal Massimino
7295fde2e6
Merge "filters: harmonize the suffixes naming to _SSE2(), _C(), etc."
2017-08-01 01:55:48 +00:00
James Zern
8e42ba4c80
simplify WEBP_EXTERN macro
...
including the type in the macro doesn't bring much benefit to ordering,
current platforms work with a prefix, this would be insufficient if the
attribute needed to follow the function prototype. this form makes it
easier to override on the command line.
BUG=webp:355
Change-Id: Iba41ec0bb319403054be0e899c4cc472dd932fd9
2017-07-31 18:27:52 -07:00
skal
331ab34bcd
cost*.c: harmonize the suffix namings
...
BUG=webp:355
Change-Id: Ic2e60eaab71cdffe1ebf93fc36aaa3eb25bbf08d
2017-07-31 17:18:32 -07:00
skal
b161f670f8
filters: harmonize the suffixes naming to _SSE2(), _C(), etc.
...
BUG=webp:355
Change-Id: I28f464eb13444c3046332cdda3c547f81700ecf4
2017-08-01 00:09:05 +00:00
skal
dec5e4d330
alpha_processing: harmonize the naming suffixes to be _C()
...
BUG=webp:355
Change-Id: Iae8221cd34957764ead21aa46abfc320e5514a4b
2017-07-31 23:34:24 +00:00
James Zern
92982609bc
dsp.h: fix -Wundef w/__mips_dsp_rev
...
Change-Id: I552a543c7b039774041b43ace75b0cbea566b119
2017-07-11 16:12:32 -07:00
James Zern
88c73d8a7a
backward_references_enc.h: fix WINDOW_SIZE_BITS check
...
this check was relocated in:
b903b80c
Split cost-based backward references in its own file.
quiets -Wundef
Change-Id: I7f7a4773fb8cc77ca9f671b11f50d5db2275d415
2017-07-11 15:36:14 -07:00
James Zern
4ea49f6b82
rescaler_sse2.c: fix WEBP_RESCALER_FIX -> _RFIX typo
...
quiets -Wundef
Change-Id: I8f1facf401b6f1ab393005c93086ac3e2ae354d5
2017-07-11 15:35:27 -07:00
James Zern
b34a9db1a1
cosmetics,dec_sse2: remove some redundant comments
...
Change-Id: I5a59d6dde9b6638b318f36d51d0d53870a3de273
2017-07-06 23:19:18 -07:00
James Zern
66ad84f0f9
Merge "muxread: remove unreachable code"
2017-07-05 23:48:45 +00:00
Pascal Massimino
50ec3ab790
muxread: remove unreachable code
...
IDX_UNKNOWN chunks are handled separately in WebPMuxGetChunk()
Change-Id: Iaa0d3a1cd1080264c27671637551f52f71d73b07
2017-07-05 15:47:50 -07:00
hui su
7d67a1646d
Lossy encoding: smoothen transparent areas to improve compression
...
If "exact" is false, we can modify the luma samples in fully transparent
areas to facilitate lossy compression. Experiments on some PNG images
show compression improvement of more than 20%.
Change-Id: I1a728cfa920a6652bc1f600d87c01f7f648c4942
2017-07-05 10:03:01 -07:00
James Zern
e50650c77f
Merge "fix signature for DISABLE_TOKEN_BUFFER compilation"
2017-07-02 07:33:52 +00:00
Pascal Massimino
671d2567d4
fix signature for DISABLE_TOKEN_BUFFER compilation
...
Change-Id: Idb7aa2503c7870ef3b15a23325832428d47ae7c6
2017-07-01 14:46:28 -07:00
Vincent Rabaud
8acb4942f7
Remove the argb* files.
...
Half of the functionality was duplicated.
The rest is about the alpha channel handling so we
might as well put it in the appropriate file.
Change-Id: I8d5ef0afce82cc4842ab7132fd97995c42e6140a
2017-06-25 14:44:33 +02:00
Vincent Rabaud
7ca0df1363
Have the SSE2 version of PackARGB use common code.
...
The common code actually got sped-up by 25% by using the code
from PackARGB.
Change-Id: I94be6ccff2bfe02fff13c8e2698669e6a0d8fc74
2017-06-20 17:41:14 +02:00
Pascal Massimino
7b250459d6
Merge "Re-use the transformed image when trying several LZ77 in lossless."
2017-06-20 11:53:01 +00:00
Vincent Rabaud
e132072f0b
Re-use the transformed image when trying several LZ77 in lossless.
...
Change-Id: If879b960131ba26859f8e4719a4c74cec1e0aaa8
2017-06-19 17:30:01 +02:00
Vincent Rabaud
5d7a50efee
Get code to compile in C++.
...
Change-Id: I2f56e6b71e33ffecdba9e4fa9ef8f891c88f850f
2017-06-19 17:12:29 +02:00
Pascal Massimino
f1d5a397db
multithread cruncher: only copy stats when picture->stats != NULL
...
BUG=webp:336
Change-Id: I6dfbbdcf61a6cb455f6cbf3dcd7f4c46578f42aa
2017-06-14 21:49:13 +02:00
Vincent Rabaud
f8c2ac15af
Multi-thread the lossless cruncher.
...
BUG=webp:336
Change-Id: I8e861d6a61d51a5cdc4bbd00cd4f17d4ff006d2f
2017-06-14 16:50:36 +02:00
Vincent Rabaud
a88c6522f6
Merge "Integrate a new LZ77 looking for matches in the neighborhood of a pixel only."
2017-06-13 13:15:48 +00:00
Vincent Rabaud
8f6df1d0b9
Unroll Predictors 10, 11 and 12.
...
We see the following speed-ups:
10 -> 13%
11 -> 13%
12 -> 13%
Change-Id: I4734fd388d0f4e508884d0b123976bf2cbe69d2f
2017-06-08 20:37:47 +02:00
Vincent Rabaud
355c3d1bc7
Integrate a new LZ77 looking for matches in the neighborhood of a pixel only.
...
Change-Id: Ie2bbfee0a8d154b58f4a3068f3f634b7dad4c12d
2017-06-08 15:19:40 +02:00
Vincent Rabaud
a1779a017b
Refactor LZ77 handling in preparation for a new method.
...
Change-Id: If305c328c8f508bd778d1af108e4eb979fbd2eca
2017-06-07 16:43:04 +02:00