#ifdef HAVE_CONFIG_H #include "config.h" #endif #include "yuv.h" /*#define TARKIN_YUV_EXACT*/ /*#define TARKIN_YUV_LXY*/ static inline uint8_t CLAMP(int16_t x) { return ((x > 255) ? 255 : (x < 0) ? 0 : x); } void rgb24_to_yuv (uint8_t *rgb, Wavelet3DBuf *yuv [], uint32_t frame) { int count = yuv[0]->width * yuv[0]->height; int16_t *y = yuv[0]->data + frame * count; int16_t *u = yuv[1]->data + frame * count; int16_t *v = yuv[2]->data + frame * count; int i; #if defined(TARKIN_YUV_EXACT) for (i=0; iwidth * yuv[0]->height; int16_t *y = yuv[0]->data + frame * count; int16_t *u = yuv[1]->data + frame * count; int16_t *v = yuv[2]->data + frame * count; int i; #if defined(TARKIN_YUV_EXACT) for (i=0; iwidth * yuv[0]->height; int16_t *y = yuv[0]->data + frame * count; int16_t *u = yuv[1]->data + frame * count; int16_t *v = yuv[2]->data + frame * count; int i; #if defined(TARKIN_YUV_EXACT) for (i=0; iwidth * yuv[0]->height; int16_t *y = yuv[0]->data + frame * count; int16_t *u = yuv[1]->data + frame * count; int16_t *v = yuv[2]->data + frame * count; int i; #if defined(TARKIN_YUV_EXACT) for (i=0; iwidth * yuva[0]->height; int16_t *y = yuva[0]->data + frame * count; int16_t *u = yuva[1]->data + frame * count; int16_t *v = yuva[2]->data + frame * count; int16_t *a = yuva[3]->data + frame * count; int i; #if defined(TARKIN_YUV_EXACT) for (i=0; iwidth * yuva[0]->height; int16_t *y = yuva[0]->data + frame * count; int16_t *u = yuva[1]->data + frame * count; int16_t *v = yuva[2]->data + frame * count; int16_t *a = yuva[3]->data + frame * count; int i; #if defined(TARKIN_YUV_EXACT) for (i=0; iwidth * y[0]->height; int16_t *_y = y[0]->data + frame * count; int i; for (i=0; iwidth * y[0]->height; int16_t *_y = y[0]->data + frame * count; int i; for (i=0; i