mirror of
https://github.com/webmproject/libwebp.git
synced 2024-12-27 06:08:21 +01:00
Merge "add VP8LAddPixels() to lossless.h"
This commit is contained in:
commit
5ee2136a71
@ -28,9 +28,7 @@
|
|||||||
|
|
||||||
// In-place sum of each component with mod 256.
|
// In-place sum of each component with mod 256.
|
||||||
static WEBP_INLINE void AddPixelsEq(uint32_t* a, uint32_t b) {
|
static WEBP_INLINE void AddPixelsEq(uint32_t* a, uint32_t b) {
|
||||||
const uint32_t alpha_and_green = (*a & 0xff00ff00u) + (b & 0xff00ff00u);
|
*a = VP8LAddPixels(*a, b);
|
||||||
const uint32_t red_and_blue = (*a & 0x00ff00ffu) + (b & 0x00ff00ffu);
|
|
||||||
*a = (alpha_and_green & 0xff00ff00u) | (red_and_blue & 0x00ff00ffu);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static WEBP_INLINE uint32_t Average2(uint32_t a0, uint32_t a1) {
|
static WEBP_INLINE uint32_t Average2(uint32_t a0, uint32_t a1) {
|
||||||
|
@ -329,7 +329,14 @@ static WEBP_INLINE void VP8LPrefixEncode(int distance, int* const code,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// In-place difference of each component with mod 256.
|
// Sum of each component, mod 256.
|
||||||
|
static WEBP_INLINE uint32_t VP8LAddPixels(uint32_t a, uint32_t b) {
|
||||||
|
const uint32_t alpha_and_green = (a & 0xff00ff00u) + (b & 0xff00ff00u);
|
||||||
|
const uint32_t red_and_blue = (a & 0x00ff00ffu) + (b & 0x00ff00ffu);
|
||||||
|
return (alpha_and_green & 0xff00ff00u) | (red_and_blue & 0x00ff00ffu);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Difference of each component with mod 256.
|
||||||
static WEBP_INLINE uint32_t VP8LSubPixels(uint32_t a, uint32_t b) {
|
static WEBP_INLINE uint32_t VP8LSubPixels(uint32_t a, uint32_t b) {
|
||||||
const uint32_t alpha_and_green =
|
const uint32_t alpha_and_green =
|
||||||
0x00ff00ffu + (a & 0xff00ff00u) - (b & 0xff00ff00u);
|
0x00ff00ffu + (a & 0xff00ff00u) - (b & 0xff00ff00u);
|
||||||
|
Loading…
Reference in New Issue
Block a user