mirror of
https://github.com/webmproject/libwebp.git
synced 2024-12-25 13:18:22 +01:00
Mirror only. Please do not send pull requests. See https://chromium.googlesource.com/webm/libwebp/+/HEAD/CONTRIBUTING.md.
6a37a2aaa9
When FANCY_UPSCALING is defined, use a smoothing filter for upscaling the U/V chroma fields. The filter used is a separable t[1 3 3 1] x [1 3 3 1] filter. It can be easily changed in macros MIX_*. The upscaling code reside on the thing shell between user and core decoding (in webp.c), and not in the core decoder. As such, this smoothing process can still be offloaded to GPU in some future and is not integral part of the decoding process. Coincidentaly: changed the way data is tranfered to user. For profile 2 (no filtering), it used to be on a per-block basis. Now, for all profiles, we emit rows of pixels (between 8 and 24 in height) when they are ready. This makes the upscaling code much easier. Will update the test vectors MD5 sums soon (as they'll be broken after this change) Change-Id: I2640ff12596cb8b843a4a376d7347447d9b9f778 |
||
---|---|---|
examples | ||
src | ||
aclocal.m4 | ||
Android.mk | ||
AUTHORS | ||
autogen.sh | ||
ChangeLog | ||
config.guess | ||
config.h.in | ||
config.sub | ||
configure | ||
configure.ac | ||
COPYING | ||
depcomp | ||
INSTALL | ||
install-sh | ||
ltmain.sh | ||
Makefile.am | ||
Makefile.in | ||
Makefile.vc | ||
missing | ||
NEWS | ||
PATENTS | ||
README |
__ __ ____ ____ ____ / \\/ \/ _ \/ _ )/ _ \ \ / __/ _ \ __/ \__\__/\____/\_____/__/ _________ ____ ____ \ \ / _ \/ _/ / \ \ / _ \ _ \ / \ \ __/ \_/ / / \ \ __/ /_ \_____/_____/____/____/\_____/_____/_/\__/v0.1 Description: ============ WEBP decoder: libwebpdecode.so is a simple library for decoding WEBP image files. See http://code.google.com/speed/webp It is released under the same license as the WebM project. See http://www.webmproject.org/license/software/ or the file "COPYING" file for details. An additional intellectual property rights grant can be found in the file PATENTS. API: ==== This is mainly just one function to call, so just have a look at the file src/webp/decode.h for the details and variants: #include "webp/decode.h" uint8_t* WebPDecodeRGB(const uint8_t* data, uint32_t data_size, int *width, int *height); A lower-level API is available from the header file <webp/decode_vp8.h> Building: ========= If everything goes right, then: ./configure make make install should be all you need to have the following files /usr/local/include/webp/decode.h /usr/local/include/webp/decode_vp8.h /usr/local/lib/libwebpdecode.* installed. Decoding example: ================= there's a decoding example in example/dwebp.c which will take a .webp file and decode it to a PPM image file. This is simply to demonstrate use of the API. You can verify the file test.webp decodes to exactly the same as test_ref.ppm: `cd examples && ./dwebp test.webp -o test.ppm && diff test.ppm test_ref.ppm` Bugs: ===== Please report all bugs to our issue tracker: http://code.google.com/p/webp/issues Patches welcome! See this page to get started: http://www.webmproject.org/code/contribute/submitting-patches/ Discuss: ======== Email: webp-discuss@webmproject.org