Intel® Integrated Performance Primitives (Intel® IPP) Developer Guide and Reference
YCbCr420To422_Interlace
Converts interlaced YCbCr image from 4:2:0 sampling format to 4:2:2 format.
Syntax
IppStatus ippiYCbCr420To422_Interlace_8u_P3R(const Ipp8u* pSrc[3], int srcStep[3], Ipp8u* pDst[3], int dstStep[3], IppiSize roiSize);
Include Files
ippcc.h
Domain Dependencies
Headers: ippcore.h, ippvm.h, ipps.h, ippi.h
Libraries: ippcore.lib, ippvm.lib, ipps.lib, ippi.lib
Parameters
pSrc |
Array of pointers to the ROI in each plane for source image. |
srcStep |
Array of distances in bytes between starts of consecutive lines in each plane for the source image. |
pDst |
Array of pointers to the ROI in each plane for destination image. |
dstStep |
Array of distances in bytes between starts of consecutive lines in each plane for the destination image. |
roiSize |
Size of the source and destination ROI in pixels, its width must be multiple of 2, and height must be multiple of 4. |
Description
This function operates with ROI (see Regions of Interest in Intel IPP).
This function converts the interlaced planar 4:2:0 source image pSrc to the 4:2:2 image pDst. Three-plane image has the following order of pointers: Y - plane, Cb - plane, Cr - plane.
The conversion is performed in accordance with the following formulas:
Yndest = Yn src;
Cb0(Cr0)dest= (5*Cb0(Cr0)src + 3 * Cb2``(Cr2)`` src + 4``)/8;``
Cb1(Cr1)dest= (7*Cb1(Cr1)src + Cb3``(Cr3)`` src + 4``)/8;``
Cb2(Cr2)dest= (Cb0(Cr0)src + 7 * Cb2``(Cr2)`` src + 4``)/8;``
Cb3(Cr3)dest= (3*Cb1(Cr1)src + 5 * Cb3``(Cr3)`` src + 4``)/8;``
Return Values
ippStsNoErr |
Indicates no error. Any other value indicates an error. |
ippStsNullPtrErr |
Indicates an error condition if any of the specified pointers is NULL. |
ippStsSizeErr |
Indicates an error condition if roiSize.width is less than 2, or roiSize.height is less than 4. |
ippStsDoubleSize |
Indicates a warning if roiSize.width is not multiple of 2, or roiSize.height is not multiple of 4. |