Intel® Integrated Performance Primitives
Deliberate problems developing high-performance vision, signal, security, and storage applications.

MPEG4SP Decoder (example) for PCA issues.

Deleted_U_Intel
Employee
278 Views
Hello,
I've taken the Simple Profile MPEG4 decoder sample for PCA (l_ipp-PCA-MPEG4-decode_p_4.1.002.tgz) and attempted to compile it with the Windows version of IPP (for the sake of some initialtests).
It compiles with minimal changes (eg. ippiMCReconBlock_Round[On|Off]() is a function under PCA IPP, but a macro under windows IPP. Also there is non portable use of >>, but in this case I believe both compilers use arithmetic shift).
However when i test it on a MPEG4-SP bitstream (no QPel, no BVOP, no GMC, ...) there seems to be a positional problem with MCR (motion compensation reconstruction). Its as if the half pixel movements are not correctly executed. When I test the same bitstream on the Windows MPEG4 IPP sample, it plays correctly.
My questions are:
1) Are there any known issues with the PCA MPEG4 decoder sample?
2) Are the Windows IPP and PCA IPPAPIs 100% compatible?
also
3)in the documentation for the enumerated type IPPVC_MC_APX, it says:

typedef enum _IPPVC_MC_APX{IPPVC_MC_APX_FF = 0x0,IPPVC_MC_APX_FH = 0x4,IPPVC_MC_APX_HF = 0x8,IPPVC_MC_APX_HH = 0x0c}IPPVC_MC_APX;

"The first descriptors

FF, FH, HF, HH show whether prediction is accurate to full pel (F) or to half a pel (H). The first letter indicates the accuracy in horizontal direction and the second - in vertical direction."

Yet in ippalign.h, the following macro is defined:

#define ippiMCReconBlock_RoundOff(pSrc, srcStep, pSrcResidue, pDst, dstStep,
predictType)
ippiMC8x8_8u_C1(pSrc, srcStep, pSrcResidue, 16, pDst, dstStep,
predictType==IPP_VIDEO_INTEGER_PIXEL ? IPPVC_MC_APX_FF:
(predictType==IPP_VIDEO_HALF_PIXEL_X ? IPPVC_MC_APX_FH:
(predictType==IPP_VIDEO_HALF_PIXEL_Y ? IPPVC_MC_APX_HF:
IPPVC_MC_APX_HH)), ippRndZero)

Given the documentation shouldnt FH and HF be reversed?

(When I try reversing them, I still get motion compensation corruption, so It doesnt solve my problem).

Regards,

Sam.

0 Kudos
1 Reply
Vladimir_Dudnik
Employee
278 Views
Hi,
if you detected any issues with this sample you can submit it to technical support.
Regards,
Vladimir
0 Kudos
Reply