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

BGRToCbYCr422_709HDTV

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

Syntax

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

IppStatus ippiBGRToCbYCr422_709HDTV_8u_AC4C2R(const Ipp8u* pSrc, int srcStep, Ipp8u* pDst, int dstStep, 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

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.

Description

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

This function converts the three- or four-channel gamma-corrected B'G'R' image pSrc to the two-channel Cb'Y'Cr' image pDst for digital component video signals complied with the ITU-R BT.709 Recommendation [ITU709] for high-definition TV (HDTV). The source image pixel values are in the range [16..235]. The conversion is performed according to the following formulas [Jack01]:

Y' = 0.213*R' + 0.715*G' + 0.072*B'

Cb' = -0.117*R' - 0.394*G' + 0.511*B' + 128

Cr' = 0.511*R' - 0.464*G' - 0.047*B' + 128

The values of Y' of the destination image are in the range [16..235], the values of Cb', Cr' are in the range [16..240]. They should be saturated at the 1 and 254 levels.

The function ippiBGRToCbYCr422_709HDTV uses the 4:2:2 sampling format for the converted image. The alpha-channel information is lost.

A CbYCr image has the following sequence of bytes: Cb0Y0Cr0Y1, Cb1Y2Cr1Y3, ... .

Return Values

ippStsNoErr

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

ippStsNullPtrErr

Indicates an error condition if pSrc or pDst pointer is NULL.

ippStsSizeErr

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