Commit Graph

2211 Commits

Author SHA1 Message Date
Pascal Massimino
6a37a2aaa9 fancy chroma upscaling
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
2010-11-03 15:05:48 -07:00
Pascal Massimino
ff565edc25 fix two numeric typos
Change-Id: I817bb424919f26c64475795935135ee8783486dd
2010-11-03 14:17:21 -07:00
Pascal Massimino
5a936a0a21 use uintptr_t for casting pointers to ints
this is required on 32bit platforms
(and is the recommended way to do so, actually)

Change-Id: I8785be523e91a6ed2806612984b3830eab4da757
2010-11-01 15:07:12 -07:00
Pascal Massimino
e14a0301f8 for cross_compiling=yes to prevent executing any binary
this was causing problems with security softwares like Bit9

Change-Id: Id335ef3f8370cdeab77529be0559f2ee35fc14a1
2010-11-01 13:36:01 -07:00
Pierre Joye
83b545eea7 add vc9+ makefile
nmake /F Makefile.vc9 cfg=release-static
    objdir=h:\projects\webp\repo\build\libwebp ARCH=x64

given that you are in x64 mode, this command will build libwebp in
the <objdir>\release-static

Change-Id: I42e1849f5cdb7638db3b79d3658e2852d3969cc2
2010-11-01 06:48:36 -04:00
Pascal Massimino
296f691441 fix output loop for small height
the logic was broken in case of small height (1 macroblock row only).
2010-10-31 09:27:06 -07:00
Pascal Massimino
cbfbb5c3b5 convert to plain-C
there were still some dandling local variables.
2010-10-31 00:36:33 -07:00
Pascal Massimino
f09f96ee3f Fix declaration after statement warning
Change-Id: I038a3d547ada367c85d99cdae202562d644f19e0
2010-10-19 17:16:49 -04:00
Pascal Massimino
5981ee55ce Fix UV plane ac/dc quantizer transposition
Typo caused incorrect quantizer to be used for UV blocks.

Change-Id: I26faad370a16ea5b35ae49396d17b8903602499e
2010-10-14 20:38:23 -04:00
Pierre Joye
c8d15efa12 convert to ANSI-C 2010-10-06 14:37:28 -07:00
Pascal Massimino
c3f41cb47e Initial commit
Change-Id: I4712afb3912625e7aaccfa5160dcf78ee252f159
2010-09-30 09:55:07 -04:00