Pascal Massimino
217443c71a
remove some deprecation warning on MacOSX
...
Change-Id: I3e6de5ae6d84aa7906049eb55b6373c5123b0158
2018-03-31 09:30:00 +02:00
Pascal Massimino
641cedccd3
imagedec: support metadata reading for WebP image decoding
...
Needs to link imagedec.a to demux/libwebpdemux.a
Change-Id: Id8f4068718b0e4a1e84607bccd5af5419120c231
2018-03-28 16:36:37 -07:00
James Zern
f4dd92565e
remove WEBP_EXPERIMENTAL_FEATURES
...
the webp bitstream is considered stable at this point
Change-Id: I4b13f9ed4c45f63785474b097e96cb7bf651be7b
2018-02-09 10:25:11 -08:00
Pascal Massimino
1c59020b93
fix missing sse41 targets in makefile.unix
...
Change-Id: I8c7a39746594caea160c40e25ea22d756ca44e11
2017-12-11 00:00:19 -08:00
James Zern
a439972175
WIP: list includes as descendants of the project dir
...
#include "(.|..)/..." -> #include "src/..."
Change-Id: I772880aa097a770722043c8a4393552ba38a89b6
2017-10-10 23:04:05 -07:00
Pascal Massimino
8635973dc3
use sdl-config (if available) to determine the link flags
...
this fixes the compilation of vwebp_sdl on MacOS.
BUG=webp:355
Change-Id: I48c5607f31965b220db6bf707cff22b7157e0bb6
2017-09-06 20:35:48 +00:00
Pascal Massimino
e9459382b0
use CPPFLAGS before CFLAGS
...
this way, -Isrc/ is used *before* system-wide -I locations
like /opt/local/include/ for instance.
Change-Id: I83c97775aff87695720a0ff3fca5c3cf2bb62a09
2017-09-03 21:13:33 -07:00
Pascal Massimino
f66f94ef36
anim_dump: small tool to dump frames from animated WebP
...
dumps frames to PNG, PAM or TIFF files.
Change-Id: I86a4d7e235cb7040cf5bbcae28270cb5a84be087
2017-08-30 06:12:03 +00: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
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
b903b80c30
Split cost-based backward references in its own file.
...
Change-Id: I4d8281e69b0e41f7c90337e5be70a6c65b044086
2017-06-01 16:22:31 +02: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
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
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
39cf6f4f36
vwebp_sdl: fix the makefile.unix
...
The FLAGS_LIBS was dropped at some point.
There is still an SDL_Main / main problem though, but it's a
separate topic.
Change-Id: Ief4d79624e94e7904134df8d84a4ac7c77c48ce7
2017-02-27 08:46:44 -08:00
Pascal Massimino
693bf74ec0
move the SSIM calculation code in ssim.c / ssim_sse2.c
...
Change-Id: I63a63fa7f44f257f2e17e45358b206c23069c448
2017-02-21 12:53:35 +01:00
Pascal Massimino
57d8de8a79
Merge "vwebp_sdl: simple viewer based on SDL"
2017-02-03 09:43:57 +00:00
Pascal Massimino
dcf9d82a95
imageio: add limited PNM support for reading
...
see: http://netpbm.sourceforge.net/
Only reads P5 and P6 pnm files for now.
Change-Id: I2332a623f803df67455047f570f1cff9f464480a
2017-02-01 07:41:56 +00:00
Pascal Massimino
6524fcd614
vwebp_sdl: simple viewer based on SDL
...
Uses WebPToSDL() generic function defined in vwebp_sdl.[ch].
This function is not included in the libextras library, because it
would bring in an SDL dependency. Probably too heavy for now.
WebPToSDL() is separate, because it will be called used by the javascript
version of libwebp (through emscripten build rules)
Change-Id: Ic85b36f8ce4784f46023656278f6480be6802834
2017-01-31 10:23:03 +01:00
James Zern
668e1dd44f
src/{dec,enc,utils}: give filenames a unique suffix
...
this avoids duplicates between these trees and dsp/, e.g., enc/tree.c,
dec/tree.c, making pulling the whole library source tree into one target
possible
BUG=webp:279
Change-Id: I060a614833c7c24ddd37bf641702ae6a5eef1775
2017-01-19 19:09:48 -08:00
James Zern
ea4824097e
makefiles: prune get_disto & webp_quality deps
...
remove libimagedec from webp_quality, only the webp headers are
inspected. libwebpextras isn't needed by get_disto.
Change-Id: Ib85f97e2c4a9edd97392fd20ef294d1ccc76dda5
2017-01-18 18:10:58 -08:00
Pascal Massimino
1de931c669
NEON: implement alpha-filters (horizontal/vertical/gradient)
...
gradient-filter code is not much faster, but maybe improvable in the future.
Change-Id: Ia16070e409fe8703b02276166f19526917df6b35
2017-01-17 15:44:46 +01:00
Pascal Massimino
49d0280df1
NEON: implement several alpha-processing functions
...
- ApplyAlphaMultiply
- DispatchAlpha
- DispatchAlphaToGreen
- ExtractAlpha
Decoding to Argb / rgbA / ... is 10-15% faster (measured on N4)
new file: alpha_processing_neon.c
Change-Id: I40f1a809e9885d1031ff0bc886d8d001efa66bca
2017-01-11 17:39:29 +01:00
Pascal Massimino
03f40955a3
img2webp: convert a sequence of images to an animated webp
...
Usage:
img2webp [file-level options] [image files...] [per-frame options...]
File-level options (only used at the start of compression):
-min_size ............ minimize size
-loop <int> .......... loop count (default: 0, = infinite loop)
-kmax <int> .......... maximum number of frame between key-frames
(0=only keyframes)
-kmin <int> .......... minimum number of frame between key-frames
(0=disable key-frames altogether)
-mixed ............... use mixed lossy/lossless automatic mode
-v ................... verbose mode
-h ................... this help
Per-frame options (only used for subsequent images input):
-d <int> ............. frame duration in ms (default: 100)
-lossless ........... use lossless mode (default)
-lossy ... ........... use lossy mode
-q <float> ........... quality
-m <int> ............. method to use
example: img2webp -loop 2 in0.png -lossy in1.jpg
-d 80 in2.tiff -o out.webp
Change-Id: I23771b90eaf0660f420d7ffd304e704155386286
2016-12-02 11:44:17 +01:00
hui su
68ae5b671f
Add libwebp/src/mux/animi.h
...
Change-Id: I80ca2070d419acf6e8355a295ee965d2df5a4d8f
2016-10-05 10:33:29 -07:00
Vincent Rabaud
6cc48b1728
Move some lossless logic out of dsp.
...
Change-Id: I4cfd60cd5497666a2e1c188ceada2e71b05f1505
2016-09-13 15:37:32 +02:00
Vincent Rabaud
c9b45863e2
Split off common lossless dsp inline functions.
...
Change-Id: I64f96897b11d1c21f033c7e47b21edccb5c68738
2016-09-12 17:35:08 +02:00
Pascal Massimino
af1ad3e2dd
libimageenc.a: extract image-saving code from dwebp
...
BUG=webp:277
Change-Id: I2c0e1df7b13b1f77474b5478048fef022e90f77a
2016-09-08 19:11:26 -07:00
Pascal Massimino
485cac1a88
switch libimagedec.a and libimageio_util.a to avoid undefined symbol
...
gcc-4.8.3 was giving the undefined reference to ImgIoUtilReadFile and
ImgIoUtilCopyPlane when linking libimagedec.a
Change-Id: I8b85ab3a860602535629d0bb541a39754413728e
2016-08-17 19:48:08 -07:00
Parag Salasakar
7b87e8485b
Merge "Add MSA optimized YUV to RGB upsampling functions"
2016-07-22 17:26:33 +00:00
Parag Salasakar
d3ddacb625
Add MSA optimized YUV to RGB upsampling functions
...
We add the following MSA optimized YUV to RGB upsampling functions:
- UpsampleRgbLinePair
- UpsampleBgrLinePair
- UpsampleRgbaLinePair
- UpsampleBgraLinePair
- UpsampleArgbLinePair
- UpsampleRgba4444LinePair
- UpsampleRgb565LinePair
Change-Id: I7264a615edc7eb376e443e9d38bd8e3c9a2cab1f
2016-07-22 14:28:30 +00:00
Pascal Massimino
eb98d8d87c
webp_quality: detect lossless format and features
...
lossless bitstream are returned as quality 101
Change-Id: I8b28287169b710ecf8d4d694abbf0cedc6447908
2016-07-22 00:16:56 -07:00
James Zern
ebee57f4d1
move imageio/example_util.[hc] (back to) examples/
...
decoding and file i/o have been split to imageio, all that remains is
some string routines used for parameter parsing in the examples
Change-Id: I77386cd8aa39124b9e14c95fdbaa17ea4ab5bb24
2016-07-21 20:41:03 -07:00
James Zern
bdda5bd4bf
split example_util.h
...
move ExUtil*File to imageio_util.h
ExUtil*WebP* to webpdec.h
string parsing routines remain
Change-Id: I0560c4a74e86710d83bc4b5b234f1b5ef9a86f9d
2016-07-21 19:14:58 -07:00
skal
e8ab6a825a
VP8EstimateQuality(): roughty estimate webp bitstream quality factor
...
This function returns a rough estimation of the quality factor used
for compressing the WebP bitstream.
Simple command line: 'webp_quality [-quiet] in.webp'
should print the estimated quality factor.
Change-Id: Ifba3e489461f5a587003ac9f08cc7556e9b24ac2
2016-07-20 21:50:25 -07:00
skal
1e7d4401dc
'extras/get_disto' example: compute PSNR between two files
...
Change-Id: I40e693e52d8eb4e32b86273952dac2e5eefe6e7c
2016-07-20 16:54:28 -07:00
James Zern
c379b55a93
move examples/{example_util,image_dec} to imageio/
...
Change-Id: I2508c786a095a2a75bebf766210c64e2af88f9b6
2016-07-19 19:06:29 -07:00
James Zern
ad497fbce3
move src/extras to the top-level
...
reserve src/ for the code of the main libraries: libwebp, libwebpdemux
and libwebpmux
+ demote this library to internal only; i.e., don't install the header +
lib with make install
Change-Id: I8c9844db8f494be0fa0a2549a5b75b5cebcf666d
2016-07-19 17:23:17 -07:00
Parag Salasakar
9ac74f922e
Add MSA optimized rescaling functions
...
We add the following MSA optimized rescaling functions:
- RescalerExportRowExpand
- RescalerExportRowShrink
Change-Id: Ic1c76065423b02617db94cf0c22bb564219b36e6
2016-07-19 15:52:42 +00:00
Parag Salasakar
cb19dbc1a4
Add MSA optimized color transform functions
...
We add the following MSA optimized color transform functions:
- TransformColor
- SubtractGreenFromBlueAndRed
Change-Id: Ib182d2b5faa7191f503ce70f0dfde0ac89402fd3
2016-07-18 13:49:24 +00:00
Parag Salasakar
435308e029
Add MSA optimized encoder transform functions
...
We add the following MSA optimized encoder transform functions:
- ITransform
- FTransform
- FTransformWHT
Change-Id: Ia6b17556aba5aff2d7a88208905fb45293d080a8
2016-07-05 14:35:47 +00:00
Parag Salasakar
dce64bfa1b
Add MSA optimized alpha filter functions
...
We add the following MSA optimized alpha filter functions:
- HorizontalFilter
- VerticalFilter
- GradientFilter
Change-Id: I71e2e04050e569b8c0bf086fadf210ee16d50924
2016-07-01 19:58:25 +00:00
Parag Salasakar
701c772eed
Add MSA optimized colorspace conversion functions
...
We add the following MSA optimized colorspace conversion functions:
- ConvertBGRAToRGBA
- ConvertBGRAToBGR
- ConvertBGRAToRGB
Change-Id: I76db1c829d593a06d4975d54dbafa385c82b84fb
2016-06-27 21:19:06 +00:00
Parag Salasakar
5e60c42a76
Added MSA optimized transform functions
...
1. TransformWHT
2. TransformTwo
3. TransformDC
4. TransformAC3
Change-Id: Ia3624cb4aed215bcaffce542b28794e643207039
2016-06-16 09:04:27 +00:00
James Zern
4c59aac0f9
Merge "mips msa webp configuration"
2016-06-09 05:39:53 +00:00
Parag Salasakar
e11da081f9
mips msa webp configuration
...
Change-Id: I886164d6d3d560b1249603d47391fddf20b5a3d4
2016-06-07 23:49:41 -07:00
Pascal Massimino
ae2a7222ce
collect all decoding utilities from examples/ in libexampledec.a
...
adds a generic examples/image_dec.[ch] entry point too.
WebPGuessImageType() can be used to infer image type.
Change-Id: I8337e7b6ad91863c9cf118e4791668d2d175079b
2016-06-01 05:39:55 +00:00
Vincent Rabaud
e60853eabc
Add missing common_sse2.h file to makefile.unix
...
This was missed in bf2b4f114f
Change-Id: Ib0d2ac9f5b86196de2ac8feccbb9536530e991b2
2016-02-17 09:48:05 +01:00
James Zern
1a819f0053
makefile.unix: make visibility=hidden the default
...
Change-Id: I22739f4db798bb95591839835b5368944396e887
2015-12-14 23:45:12 -08:00