35 #define __USE_ISOC9X 1
36 #define __USE_ISOC99 1
39 #if defined(__GNUC__) && defined(__i386__)
40 static inline long __gui_lrint_code (
double v)
43 __asm__ __volatile__ (
"fistpl %0" :
"=m" (ret) :
"t" (v) :
"st") ;
46 #elif defined(__GLIBC__) && defined(__GNUC__) && __GNUC__ >= 3
47 #define __gui_lrint_code(v) lrint(v)
49 static inline long __gui_lrint_code (
double v)
58 # define gui_lrint(v) __gui_lrint_code(v)
70 guchar *h, guchar *s, guchar *v);
76 guchar *rc, guchar *gc, guchar *bc);
82 guchar *rc, guchar *gc, guchar *bc);
88 guchar *yc, guchar *uc, guchar *vc);
91 #define PREVCOL_SHIFT 10
92 #define PREVCOL_HALF (1 << (PREVCOL_SHIFT - 1))
93 #define PREVCOL_FIX(x) ((int) ((x) * (1<<PREVCOL_SHIFT) + 0.5))
95 #define PREVCOL_MAX_NEG_CROP 1024
102 static inline void prev_inline_yuvToRgbVis (guchar yc, guchar uc, guchar vc,
103 guchar *rc, guchar *gc, guchar *bc)
122 static inline void prev_inline_rgbToYuvVis (guchar rc, guchar gc, guchar bc,
123 guchar *yc, guchar *uc, guchar *vc)
126 int y_shift =
PREVCOL_FIX(0.299*219.0/255.0) * rc +
141 static inline void prev_inline_rgbToYuvCal (guchar rc, guchar gc, guchar bc,
142 guchar *yc, guchar *uc, guchar *vc)
149 *uc = ct[((
PREVCOL_FIX(0.564*224.0/219.0) * (bc-y) +
151 *vc = ct[((
PREVCOL_FIX(0.713*224.0/219.0) * (rc-y) +