Quantcast
Channel: Intel® Software - Intel® Integrated Performance Primitives
Viewing all articles
Browse latest Browse all 1489

Converting from pixel order YCbCr411 to BGR

$
0
0

Hi all,

I'm new to using the IPP library and  I'm having trouble converting from pixel order YCbCr411 data to BGR format.  From reading the documentation, I know that I first need to convert the pixel order to planar format first before calling the the library function ippiYCbCr411ToBGR_8u_P3C4R to convert planar YCbCr411 data to BGR format. I see that I can probably use the ippiCopy_8u_C3P3R call to convert my image buffer from pixel order to planar order. 

For example, is this the following the correct approach?

int pDstStep[3];
Ipp8u* pFirst = ippiMalloc_8u_C1(srcCols, srcRows, &pDstStep[0]);
Ipp8u* pSecond = ippiMalloc_8u_C1(srcCols/4, srcRows, &pDstStep[1]);
Ipp8u* pThird = ippiMalloc_8u_C1(srcCols/4, srcRows, &pDstStep[2]);

Ipp8u* pDst[3] = { pFirst, pSecond, pThird };

 ippiCopy_8u_C3P3R((Ipp8u*)pImageBuffer,
            pImageBufferStride,
            pDst,
            srcCols,
            imgSize);

// Convert from 3 plane YCbCr411 source image to BGR
ippiYCbCr411ToBGR_8u_P3C4R(const unsigned char**)(&pDst),
            pDstStep,
            pDestBuffer,
            destStride,
            imgSize,
            0);

Thanks!


Viewing all articles
Browse latest Browse all 1489

Trending Articles