diff options
Diffstat (limited to 'libavcodec/texturedsp.c')
-rw-r--r-- | libavcodec/texturedsp.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/libavcodec/texturedsp.c b/libavcodec/texturedsp.c index 7b54a5dd5e..5012245a26 100644 --- a/libavcodec/texturedsp.c +++ b/libavcodec/texturedsp.c @@ -28,13 +28,14 @@ #include "libavutil/attributes.h" #include "libavutil/common.h" #include "libavutil/intreadwrite.h" +#include "libavutil/libm.h" #include "texturedsp.h" -#define RGBA(r, g, b, a) ((uint8_t)(r) << 0) | \ - ((uint8_t)(g) << 8) | \ - ((uint8_t)(b) << 16) | \ - ((uint8_t)(a) << 24) +#define RGBA(r, g, b, a) (((uint8_t)(r) << 0) | \ + ((uint8_t)(g) << 8) | \ + ((uint8_t)(b) << 16) | \ + ((uint8_t)(a) << 24)) static av_always_inline void extract_color(uint32_t colors[4], uint16_t color0, @@ -428,7 +429,7 @@ static inline void rgtc_block_internal(uint8_t *dst, ptrdiff_t stride, int i = indices[x + y * 4]; /* Interval expansion from [-1 1] or [0 1] to [0 255]. */ int c = color_tab[i]; - uint32_t pixel = RGBA(c, c, c, 255); + uint32_t pixel = RGBA(c, c, c, 255U); AV_WL32(dst + x * 4 + y * stride, pixel); } } @@ -528,7 +529,7 @@ static inline void rgtc2_block_internal(uint8_t *dst, ptrdiff_t stride, int d = (255 * 255 - r * r - g * g) / 2; if (d > 0) - b = rint(sqrtf(d)); + b = lrint(sqrtf(d)); p[0] = r; p[1] = g; |