a question h.264 interpolation functions in IPP

a question h.264 interpolation functions in IPP

I'm watching codes umc_video_encoder especially h264.part... when I see following functions..

template
void H264CoreEncoder::CSubPelSearchOneBlock(
H264EncoderThreadPrivateSlice *curr_slice,
Ipp32u uMB,
const H264EncoderFrame *pRefFrame,
Ipp8s RefField,
Ipp32u ,// block_idx,
Ipp32u uWidth,
Ipp32u uHeight,
Ipp32u uOffset,
H264MotionVector *pBestMV,
H264MotionVector *pPredictedMV,
Ipp32u *puBestSAD
)
{

I found this line...

ippiInterpolateLuma_H264(pRef, pitchPixels*sizeof(PixType),pSPBuffer, 16*sizeof(PixType), psp->spInterpFnx, psp->spInterpFny, size, m_PicParamSet.bit_depth_luma);

can you explain that psp->spInterpFnx and psp->spInterpFny
ofcourse I read ippiman.pdf about ippiInterpolateLuma_H264 but I think need more explanation. please...

If psp->spInterpFnx is 1 and psp->spInterpFny is 1, that means right one, bottom one about original pixel ??? I couldn't understand image in manual...

thanks...

2 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

Hi

pRef is pointer to Int-pixel, psp->spInterpFnx andpsp->spInterpFny are Quarter-pixel fractions (in range 0..3)

psp->spInterpFnx=1 and psp->spInterpFny=1means that interpolation will be performedin point(0.25, 0.25) from pRef

Nikolay

Leave a Comment

Please sign in to add a comment. Not a member? Join today