25#ifndef FIREVISION_UTILS_COLOR_RGBYUV_H_
26#define FIREVISION_UTILS_COLOR_RGBYUV_H_
30#define RGB2YUV(r, g, b, y, u, v) \
32 y = (306 * r + 601 * g + 117 * b) >> 10; \
33 u = ((-172 * r - 340 * g + 512 * b) >> 10) + 128; \
34 v = ((512 * r - 429 * g - 83 * b) >> 10) + 128; \
38 y = y > 255 ? 255 : y; \
39 u = u > 255 ? 255 : u; \
40 v = v > 255 ? 255 : v; \
56rgb_to_yuy2(
const unsigned char *RGB,
unsigned char *YUV,
unsigned int width,
unsigned int height);
74void rgb_to_yuv411packed_plainc(
const unsigned char *RGB,
90void convert_line_rgb_to_yuv422planar(
const unsigned char *RGB,
94 unsigned int rgb_line,
95 unsigned int yuv_line);
106void rgb_to_yuv422planar_plainc(
const unsigned char *RGB,
109 unsigned int height);
120void rgb_planar_to_yuv422packed_plainc(
const unsigned char *rgb_planar,
123 unsigned int height);
136void convert_line_rgb_to_yuv422packed(
const unsigned char *RGB,
140 unsigned int rgb_line,
141 unsigned int yuv_line);
152void rgb_to_yuv422packed_plainc(
const unsigned char *RGB,
155 unsigned int height);
166void bgr_to_yuv422planar_plainc(
const unsigned char *BGR,
169 unsigned int height);