View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0000278 | JVT JM H.264/AVC reference software | encoder and decoder | public | 2011-09-07 20:53 | 2011-09-07 20:53 |
Reporter | Diego F. de Souza | Assigned To | |||
Priority | normal | Severity | major | Reproducibility | always |
Status | new | Resolution | open | ||
Product Version | JM 18.0 | ||||
Summary | 0000278: Different number of pixels around the frame of reference for the encoder and decoder | ||||
Description | Encoder: 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); | ||||
Tags | No tags attached. | ||||
Date Modified | Username | Field | Change |
---|---|---|---|
2011-09-07 20:53 | Diego F. de Souza | New Issue |