Convert an BGR image to the YCbCr color model and create 411 MCU.
IppStatus ippiBGR565ToYCbCr411LS_MCU_16u16s_C3P3R(const Ipp16u* pSrcBGR, int srcStep, Ipp16s* pDstMCU[3]);
IppStatus ippiBGR555ToYCbCr411LS_MCU_16u16s_C3P3R(const Ipp16u* pSrcBGR, int srcStep, Ipp16s* pDstMCU[3]);
pSrcBGR |
Pointer to the source image ROI. |
srcStep |
Distance in bytes between starts of consecutive lines in the source image. |
pDstMCU |
Array of 3 pointers to the destination image blocks. |
The functions ippiBGR565ToYCbCr411LS_MCU and ippiBGR555ToYCbCr411LS_MCU are declared in the ippj.h file. They operate with ROI (see Regions of Interest in Intel IPP).
These functions convert a source BGR image to the YCbCr 411 MCU (see Figure “MCU Structure for Different JPEG Sampling Formats”). The source image pSrcBGR has a reduced bit depth of 16 bits per pixel (see Figure “16-bit pixel formats”), and it can be in one of two possible formats : BGR565 (5 bits for blue, 6 bits for green, 5 bits for red), or BGR555 (5 bits for blue, green, red).
Source data are converted to the signed Ipp16s range [-128..127] by transforming them at first to the unsigned Ipp8u range with following level shift operation (by subtracting 128). Y, Cb, and Cr component values are computed using the same formulas as the ippiRGBToYCbCr_JPEG function.
Downsampling is performed by plain averaging.
ippStsNoErr |
Indicates no error. |
ippStsNullPtrErr |
Indicates an error condition if any of the specified pointers is NULL. |
ippStsStepErr |
Indicates an error condition if srcStep has a zero or negative value. |
Copyright © 2000 - 2011, Intel Corporation. All rights reserved.