View Issue Details

IDProjectCategoryView StatusLast Update
0000278JVT JM H.264/AVC reference softwareencoder and decoderpublic2011-09-07 20:53
ReporterDiego F. de Souza Assigned To 
PrioritynormalSeveritymajorReproducibilityalways
Status newResolutionopen 
Product VersionJM 18.0 
Summary0000278: Different number of pixels around the frame of reference for the encoder and decoder
DescriptionEncoder:

The number of pixels around the reference frame for the luma component is defined by the variables IMG_PAD_SIZE_X (32) and IMG_PAD_SIZE_Y (18) in the file /lencod/inc/defines.h.

The number of pixels around the reference frame for the chroma component is set by the YUVFormat (0=4:0:0, 1=4:2:0, 2=4:2:2, 3=4:4:4) defined by the encoder.cfg along with the variables IMG_PAD_SIZE_X (32) and IMG_PAD_SIZE_Y (18) in the file /lencod/src/defines.h.

Decoder:

The number of pixels around the reference frame for the luma component is defined by the variables MCBUF_LUMA_PAD_X (32) and MCBUF_LUMA_PAD_Y (12) in the file /ldecod/inc/defines.h.

The number of pixels around the reference frame for the chroma component is set by the variables MCBUF_CHROMA_PAD_X (16) and MCBUF_CHROMA_PAD_Y (8) in the file /ldecod/inc/defines.h. Regardless of YUVFormat used.

Problem:

If, at the encoder, the motion vector of the one of the first or last line of macroblocks has a motion vector bigger than 12 pixels vertically, the decoder will not be able to reconstruct the same macroblock. The decoder will not give a segmentation fault error because of these lines in the function get_block_luma() in the file /ldecod/src/mc_prediction.c:

x_pos = iClip3(-18, maxold_x+2, x_pos);
y_pos = iClip3(-10, maxold_y+2, y_pos);

Suggestion:

Change these variables to:
#define MCBUF_LUMA_PAD_Y 18
#define MCBUF_CHROMA_PAD_Y 16

And this line in the function get_block_luma() of the file /ldecod/src/mc_prediction.c:

y_pos = iClip3(-18, maxold_y+2, y_pos);
TagsNo tags attached.

Activities

There are no notes attached to this issue.

Issue History

Date Modified Username Field Change
2011-09-07 20:53 Diego F. de Souza New Issue