Intel® Integrated Performance Primitives (Intel® IPP) Developer Guide and Reference

ID 790148
Date 3/22/2024
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

CbYCr422ToBGR_709HDTV

Converts 16-bit per pixel CbYCr image to the BGR image for ITU-R BT.709 HDTV signal.

Syntax

IppStatus ippiCbYCr422ToBGR_709HDTV_8u_C2C3R(const Ipp8u* pSrc, int srcStep, Ipp8u* pDst, int dstStep, IppiSize roiSize);

IppStatus ippiCbYCr422ToBGR_709HDTV_8u_C2C4R(const Ipp8u* pSrc, int srcStep, Ipp8u* pDst, int dstStep, IppiSize roiSize, Ipp8u aval);

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

Pointer to the source image ROI.

srcStep

Distance in bytes between starts of consecutive lines in the source image.

pDst

Pointer to the destination image ROI.

dstStep

Distance in bytes between starts of consecutive lines in the destination image.

roiSize

Size of the source and destination ROI in pixels.

aval

Constant value to create the fourth channel.

Description

This function operates with ROI (see Regions of Interest in Intel IPP).

This function converts the Cb'Y'Cr' image pSrc, packed in 4:2:2 sampling format, to the three- or four-channel gamma-corrected B'G'R' image pDst for digital component video signals complied with the ITU-R BT.709 Recommendation [ITU709] for high-definition TV (HDTV). A source CbYCr image has the following sequence of bytes: Cb0Y0Cr0Y1, Cb1Y2Cr1Y3, ... . The values of Y' are in the range [16..235], the values of Cb', Cr' are in the range [16..240]. The conversion is performed according to the following formulas [Jack01]:

R' = Y' + 1.540*(Cr' - 128)

G' = Y' - 0.459*(Cr' - 128) - 0.183*(Cb' - 128)

B' = Y' + 1.816*(Cb' - 128)

The destination image pixel values have a nominal range [16..235]. The resulting R'G'B' values should be saturated at the 0 and 255 levels.

The output B'G'R' values are saturated to the range [0..255].

The fourth channel is created by setting channel values to the constant value aval.

Return Values

ippStsNoErr

Indicates no error. Any other value indicates an error or a warning.

ippStsNullPtrErr

Indicates an error condition if pSrc or pDst is NULL.

ippStsSizeErr

Indicates an error condition if roiSize has a field with a zero or negative value.