Convert 16-bit RGB to YCbCr (JPEG)
FwStatus | fwiRGB565ToYCbCr_JPEG_16u8u_C3P3R | ( | const Fw16u * pSrcRGB, int srcStep, Fw8u * pDstYCbCr[3], int dstStep, FwiSize roiSize ); | |
FwStatus | fwiRGB555ToYCbCr_JPEG_16u8u_C3P3R | ( | const Fw16u * pSrcRGB, int srcStep, Fw8u * pDstYCbCr[3], int dstStep, FwiSize roiSize ); |
dstStep | Destination buffer step size (width of the buffer in bytes). | |
pDstYCbCr[3] | Pointer to destination image ROI for YCbCr image format (three-channel planar). | |
pSrcRGB | Pointer to source image ROI for RGB image format. | |
roiSize | Specifies the height and width of an ROI. | |
srcStep | Source buffer step size (width of the buffer in bytes). |
These functions step through an ROI in a source buffer, convert 16-bit source data from the RGB color model to the YCbCr color space, and write the converted data to a destination buffer.
There are separate functions for 555 and 565 bit-per-channel RGB source encoding.
The following formulas are used to convert red, green, and blue values to luminance and chrominance values.
Y = 0.299*R + 0.587*G + 0.114*B Cb = -0.16874*R - 0.33126*G + 0.5*B + 128 Cr = 0.5*R - 0.41869*G - 0.08131*B + 128