this is similar to WEBP_DSP_INIT and avoids the potential for a race in
initializing the function pointers and gamma table
Change-Id: I15af7d1a3e92c42eaa735751ca33eba0d1e83283
Headers are installed in a "sharpyuv" subdirectory of the webp
dir, e.g. /usr/local/include/webp/sharpyuv/
Remove unnecessary dependency from sharpyuv to webp/types.h
Add SHARPYUV_EXTERN so that only symbols meant to be public
are exported.
Sharpyuv users can use the library with:
find_package(WebP)
if(TARGET WebP::sharpyuv)
# ... use WebP::sharpyuv
endif()
Change-Id: I602a25521a135a2edc39d6587610484fe6447ec5
libwebp still has a size threshold of 4 pixels in picture_csp_enc.c
but the sharpyuv library itself can handle any image size.
Change-Id: Ic1c78c8f8fae528395fa46a74f717f47cb13098e
- Remove SHALF constant so that we get back the original value when
calling UpScale then downscale with rounding
- Make the linear->gamma precomputed table bigger (8 bits rather than 5)
- Round values in kLinearToGammaTabS
Change-Id: Ic9634d32cf93de321d2f6e9e4cad7f156d8d07df
Remove unused constants.
Use ALL_CAPS for defines and kCamelCase for static const values.
Change some defines into static constants if they are not used in array sizes.
Change-Id: I036b0f99215fd0414a33f099bd6b809ff8ee4541
It's self contained apart from a dependency on src/webp/types.h and src/dsp/cpu.h
For now it's only set up as an internal library, not an installable one.
Webp doesn't depend on it yet, the code is only duplicated.
Change-Id: I752799894f9d4105d0d296ddebd9f9641181a1ec