skal
fc98edd936
add a DispatchAlpha() for SSE2 that handles 8 pixels at a time
...
Only slightly faster.
Change-Id: Ie2e57e6a0950166124cf1075c6c9b45b7abdad8c
2014-08-25 21:03:03 -07:00
Djordje Pesut
0b21c30b1a
MIPS: dspr2: added optimization for EmitAlphaRGB
...
New dsp function: WebPDispatchAlpha()
Change-Id: I48e539d22471279ec75185759bc68d18b127f716
2014-08-21 20:39:35 -07:00
James Zern
953acd56a4
enc_neon: enable QuantizeBlock for aarch64
...
vtbl4_u8 is available everywhere except iOS arm64: use vtbl2q_u8 there
with a corresponding change in the load.
Change-Id: Ib84212dda3c7875348282726c29e3b79b78b0eac
2014-08-20 11:48:25 -07:00
Djordje Pesut
f4ae143720
MIPS: mips32: code rebase
...
mips code rebased to be same as C code
from commit I8c29a8a0285076cb3423b01ffae9fcc465da6a81
Change-Id: I3848f4ce43387c3a62b336606498779f7b07ec44
2014-08-19 15:13:16 +02:00
Djordje Pesut
569771549a
MIPS: dspr2: added optimizations for VP8YuvTo*
...
VP8YuvToRgb
VP8YuvToBgr
VP8YuvToRgb565
VP8YuvToRgba4444
VP8YuvToArgb
VP8YuvToBgra
VP8YuvToRgba
Change-Id: I22212a125d890e1fd28388fec906a1a5c07ff386
2014-08-19 14:29:32 +02:00
skal
2523aa73cb
SmartRGBYUV: fix odd-width problem with pixel replication
...
rightmost pixel was missing a copy, which could lead to invalid read.
Also added a lower dimension of 4, below which we use the regular conversion.
This is to prevent corner cases, in addition to not being overkill.
Change-Id: Iac12e7a3d74590f12fe8eeb1830b9891e61439f6
2014-08-18 15:58:36 -07:00
Pascal Massimino
ee52dc4e54
fix some MSVC64 warning about float conversion
...
Change-Id: I27ab27fc15033d27d0505729f6275fb542c8d473
2014-08-16 00:15:29 -07:00
James Zern
3fca851a20
cpu: check for _MSC_VER before using msvc inline asm
...
_M_IX86 will be defined in mingw builds after including windows.h. as
the gcc inline asm is first, this missing check would only have caused
an error if the code was reorganized.
Change-Id: I395679bcfc43e94d308d1ceb0c0fbf932b2c378c
2014-08-15 15:11:40 -07:00
skal
e2a83d7109
faster RGB->YUV conversion function (~7% speedup)
...
with a special case for dithering==0., it gets somewhat faster on x86
thanks to inlining.
Also, less macros.
Change-Id: Ic2f2bf6718310743bb40cef2104fa759a073e6d5
2014-08-15 11:13:25 -07:00
skal
de2d03e12f
Merge "Add smart RGB->YUV conversion option -pre 4"
2014-08-15 11:07:49 -07:00
skal
3fc4c539aa
Add smart RGB->YUV conversion option -pre 4
...
New function: WebPPictureSmartARGBToYUVA()
This implement smart RGB->YUV conversion.
This is rather undocumented for now, and is triggered using '-pre 4'
preprocessing option.
This is slow-ish and use quite some memory, but should be improvable.
This is somehow a usable beta version.
Change-Id: Ia50a8c30134e4cab8a7d3eb70aef13ce1f6187a1
2014-08-15 10:55:09 -07:00
Djordje Pesut
b4dc4069a2
MIPS: dspr2: added optimization for (un)filters
...
HorizontalFilter
VerticalFilter
GradientFilter
HorizontalUnfilter
VerticalUnfilter
GradientUnfilter
Change-Id: I54055b4767c37719691811072e95bf79c1f627b1
2014-08-14 11:55:19 -07:00
James Zern
137e609016
Merge "configure: add work around for gcc-4.9 aarch64 bug"
2014-08-13 17:38:58 -07:00
Djordje Pesut
b61c9ceca8
MIPS: dspr2: Optimization of some simple point-sampling functions
...
Change-Id: I6a4ab29bd0cc5a2951a8882cf9997032dc38bd79
2014-08-13 17:18:49 +02:00
James Zern
e2b8cec05b
configure: add work around for gcc-4.9 aarch64 bug
...
add -frename-registers to avoid:
src/dsp/dec_neon.c🔢 1: internal
compiler error: in simplify_const_unary_operation, at
simplify-rtx.c:1539
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62040
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61622
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=757738
Change-Id: I52fb3a29ac30b82b27da05378bdb495ddebb97d7
2014-08-12 15:56:23 -07:00
Djordje Pesut
98c54107df
MIPS: mips32r2: added optimization for BSwap32
...
gcc < 4.8.3 doesn't translate bswap optimally.
use optimized version always
Change-Id: I979ea26ad6dc0166d3d2f39c4148eb8adfb7ddec
2014-08-12 09:29:13 +02:00
Lou Quillio
dab702b357
Update PATENTS to reflect s/VP8/WebM/g
...
Sync with http://www.webmproject.org/license/additional/
modified: PATENTS
Change-Id: I9f7af36fdcf57a82311363a043707b181832fc18
2014-08-11 14:43:57 -07:00
Djordje Pesut
b564f7c7d5
Merge "MIPS: detect mips32r6 and disable mips32r1 code"
2014-08-11 05:44:01 -07:00
Djordje Pesut
b7e5a5c451
MIPS: detect mips32r6 and disable mips32r1 code
...
Change-Id: Id1325c789a990c9a8704e84e99a22d580303eb8a
2014-08-08 17:29:31 +02:00
Timothy Gu
63c2fc02ce
Correctly use the AC_CANONICAL_* macros
...
http://www.gnu.org/software/autoconf/manual/autoconf.html#Using-System-Type
Change-Id: I40a13e84f5266ed20bc4db098502b1610ab71206
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-08-06 23:19:45 -07:00
pascal massimino
bb07022b66
Merge "cosmetics"
2014-08-06 12:30:08 -07:00
James Zern
e300c9d819
cosmetics
...
fix some indent/whitespace, remove a few duplicate includes, extra
semi-colons
Change-Id: If937182b40a21e0f2028496e7b4b06c6e8a41352
2014-08-06 12:10:59 -07:00
pascal massimino
0e519eea8e
Merge "cosmetics: remove some extraneous 'extern's"
2014-08-05 23:00:04 -07:00
pascal massimino
3ef0f08af5
Merge "vp8enci.h: cosmetics: fix '*' placement"
2014-08-05 22:34:13 -07:00
James Zern
4c6dde37b9
bit_writer: cosmetics: rename kFlush() -> Flush()
...
Change-Id: I8907927974188bee85ffade1d75d2e50817aa115
2014-08-05 22:14:29 -07:00
James Zern
f7b4c48bba
cosmetics: remove some extraneous 'extern's
...
Change-Id: Ib3f0cff37120c51633387dd1c46592c53ab0ba6d
2014-08-05 22:14:24 -07:00
James Zern
b47fb00ac0
vp8enci.h: cosmetics: fix '*' placement
...
associate with the type
Change-Id: Icf94f11bf79f6ccee3150e27b228755f8f3f0f37
2014-08-05 22:14:12 -07:00
skal
b5a36cc9ad
add -near_lossless [0..100] experimental option
...
This compresses the uimage using lossless compression and controlable
decimating pre-process.
Code is under WEBP_EXPERIMENTAL_FEATURE while it's being experimented with.
Change-Id: I8b7f4cfcc3c6afc52a556102842bdbb045ed5ee8
2014-08-05 19:17:10 +02:00
James Zern
0524d9e5e8
dsp: detect mips64 & disable mips32 code
...
Change-Id: Icf68dafd5cf0614ca25b36a0252caa1784ac8059
2014-08-01 21:18:53 -07:00
James Zern
d3485d9607
cwebp.1: fix quality description placement
...
move it above '-z'
Change-Id: I776aaee31a3702923324c7c4101e6628499cb819
2014-07-30 11:08:27 -07:00
James Zern
29a9fe222a
libwebp 0.4.1
...
- 7/24/14: version 0.4.1
This is a binary compatible release.
* AArch64 (arm64) & MIPS support/optimizations
* NEON assembly additions:
- ~25% faster lossy decode / encode (-m 4)
- ~10% faster lossless decode
- ~5-10% faster lossless encode (-m 3/4)
* dwebp/vwebp can read from stdin
* cwebp/gif2webp can write to stdout
* cwebp can read webp files; useful if storing sources as webp lossless
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
iQIcBAABAgAGBQJT1xp9AAoJEPnD1r24IytdjDEP/3ZOnrWG0OIThlGE6bqgO3oy
Y5O7RrvzFuPdGEZ1Kl9jDXjzsYY018/+HJmOD3kf+Qt/+F/8hpGH520VuEiJdVIW
UcvoYaYq9xrmKNqEJx910Vh8TP7wE2T62OJcqKWg2JEczfUWn8WOKjmM5c8N1kJ2
q6EbpCdWlxcD49L/MavJ5Yfw9jSZAjKzOIxxz0C294iMTK4IcSmeVvdqhkdyh96E
CABw3o8sJfqB6p+KXjweXcE2KOhvzAWqTRcIogDC0jV/PgOlindf6k0am2FJHvMM
A+sf/pmD0YKI1vEaXW+Vs6cz6LzvwbIkJSwuzBA7FYHAG5yqTSkQDxTSttw/RwiW
fUScqHjQVBUqkM5bdOsdYBSDutQKDF2+WfcK5jXFdnydkQi59HKHV2R0K5cXYqfN
Tu7aMBqFcfGunLlzfKCJcz8SElEmUjG6oAzRZYcdM9dmnR7ypQK17A/GbaysKKOE
HMmep7uNX25w+6AL7zExnmPPPtSz+kj1SXt9fgldkelDhg1faAgfwXb/N4E+00lA
1+aJD3gHcR4QnDI4gnKBKHyIktQPfNKMQ6xuL0oyvsalQ/loz08wu0aACcGDFrg4
uOVVxTqU+pEITuwGcNk228+O2EbMWzzi3+Vhi1v3Gg3jJ3TRB3QN6NohmrsIackL
4W2V5NoX5i2VizGfLy2g
=GWd5
-----END PGP SIGNATURE-----
Merge tag 'v0.4.1'
libwebp 0.4.1
- 7/24/14: version 0.4.1
This is a binary compatible release.
* AArch64 (arm64) & MIPS support/optimizations
* NEON assembly additions:
- ~25% faster lossy decode / encode (-m 4)
- ~10% faster lossless decode
- ~5-10% faster lossless encode (-m 3/4)
* dwebp/vwebp can read from stdin
* cwebp/gif2webp can write to stdout
* cwebp can read webp files; useful if storing sources as webp lossless
* tag 'v0.4.1':
update ChangeLog
iosbuild.sh: specify optimization flags
update ChangeLog
makefile.unix: add vwebp.1 to the dist target
update ChangeLog
gif2webp: dust up the help message
remove -noalphadither option from README/vwebp.1
update NEWS for the next release
update AUTHORS
bump version to 0.4.1
restore mux API compatibility
remove the !WEBP_REFERENCE_IMPLEMENTATION tweak in Put8x8uv
restore encode API compatibility
restore decode API compatibility
gif2webp: fix compile with giflib 5.1.0
gif2webp: simplify giflib version checking
Change-Id: Icf599f29bc6c0db757bc133aaddb3dbbbc316e08
2014-07-29 18:06:58 -07:00
James Zern
8af2771813
update ChangeLog
...
Change-Id: I3b930aa6cb72d17f41e52d645de1d9b2f3a0238b
2014-07-28 17:22:32 -07:00
Vikas Arora
e09e9ff6e5
Record & log the image pre-processing time.
...
Change-Id: If0ecec3046e87fe0021446a98f3e94c7e0576bb8
2014-07-28 16:05:42 -07:00
James Zern
f59c0b4bde
iosbuild.sh: specify optimization flags
...
explicitly set '-O3 -DNDEBUG'. setting CFLAGS on the command line
overrides the default, resulting in -O0.
Change-Id: I213979f646b1444b1d8e0eb0bb58e9b2c3cc4dd3
2014-07-26 20:40:51 -07:00
James Zern
8d34ea3e36
update ChangeLog
...
Change-Id: I5346984d2adff27b64304c154d720456549a9f24
2014-07-24 11:54:02 -07:00
James Zern
dbc3da66d3
makefile.unix: add vwebp.1 to the dist target
...
Change-Id: Icf8b3853a9b175688c3b92d6f498ed44c58ca462
2014-07-23 23:41:47 -07:00
James Zern
89a7c83cd4
update ChangeLog
...
Change-Id: Ie9c2c7fe53321aefa17905c4322ad3373869ebad
2014-07-23 23:05:49 -07:00
James Zern
ffe67ee92e
Merge "update NEWS for the next release" into 0.4.1
2014-07-23 23:02:19 -07:00
James Zern
2def1fe635
gif2webp: dust up the help message
...
* try to avoid trailing '.'
* rationalize capitalization
missed in:
0a8b886
dust up the help message
Change-Id: I6f80736cc8a2ff4f185f63d463a57d5bbf88a0db
2014-07-23 20:03:49 -07:00
James Zern
fb668d78b3
remove -noalphadither option from README/vwebp.1
...
+ vwebp's -help output
this is a future option; missed in:
793368e
restore decode API compatibility
Change-Id: If920df2cf8de57ebad93a6b98830562149396d8d
2014-07-23 19:54:34 -07:00
James Zern
e49f693b1f
update NEWS for the next release
...
Change-Id: If708c6b442816f43522b7e5b292f3cba266d614a
2014-07-23 19:25:36 -07:00
James Zern
cd01358057
Merge "update AUTHORS" into 0.4.1
2014-07-23 17:33:15 -07:00
James Zern
268d01eb24
update AUTHORS
...
Change-Id: I1eae9342df7bf4e8e98d5328b2e3eab7cba9fee8
2014-07-23 17:21:04 -07:00
James Zern
85213b9bbe
bump version to 0.4.1
...
libwebp{,decoder} - 0.4.1
libwebp libtool - 5.1.0
libwebpdecoder libtool - 1.1.0
mux/demux - 0.2.1
libtool - 1.1.0
Change-Id: If593a198f802fd68c7dbbdbe0fc2612dbc44e2df
2014-07-23 17:17:25 -07:00
James Zern
695f80ae25
Merge "restore mux API compatibility" into 0.4.1
2014-07-23 17:11:33 -07:00
James Zern
862d296cf9
restore mux API compatibility
...
protect WebPMuxSetCanvasSize w/a WEBP_MUX_ABI_VERSION check
Change-Id: I6b01af55ebb4cc4c860d3cbf43be722077896748
2014-07-23 16:13:56 -07:00
skal
8f6f8c5dde
remove the !WEBP_REFERENCE_IMPLEMENTATION tweak in Put8x8uv
...
There's no speed diff, so better remove it altogether
Reported in https://code.google.com/p/webp/issues/detail?id=215
Change-Id: I991330de18bec340029d6df5fed0dfb4337e4662
2014-07-23 14:15:40 -07:00
James Zern
d713a69644
Merge changes If4debc15,I437a5d5f into 0.4.1
...
* changes:
restore encode API compatibility
restore decode API compatibility
2014-07-23 13:56:27 -07:00
James Zern
c2fc52e4ec
restore encode API compatibility
...
protect WebPConfigLosslessPreset/WebPMemoryWriterClear w/a
WEBP_ENCODER_ABI_VERSION check
Change-Id: If4debc15fee172a3f18079bc2bd29eb8447bc14b
2014-07-22 22:19:55 -07:00
James Zern
793368e8c6
restore decode API compatibility
...
protect flip/alpha_dither w/a WEBP_DECODER_ABI_VERSION check
Change-Id: I437a5d5f78800f71b7e7e323faa321f946bf9515
2014-07-22 20:03:52 -07:00