Mercurial > libavcodec.hg
changeset 11092:64c36264b13f libavcodec
Set direct MB partitioning for 16x8 and 8x16 colocated MBs to the respective true partitioning.
author | michael |
---|---|
date | Sun, 07 Feb 2010 17:40:22 +0000 |
parents | 74748a220032 |
children | 788db3371366 |
files | h264_direct.c |
diffstat | 1 files changed, 3 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/h264_direct.c Sun Feb 07 17:15:17 2010 +0000 +++ b/h264_direct.c Sun Feb 07 17:40:22 2010 +0000 @@ -193,6 +193,9 @@ }else if(!is_b8x8 && (mb_type_col[0] & MB_TYPE_16x16_OR_INTRA)){ sub_mb_type = MB_TYPE_16x16|MB_TYPE_P0L0|MB_TYPE_P0L1|MB_TYPE_DIRECT2; /* B_SUB_8x8 */ *mb_type |= MB_TYPE_16x16|MB_TYPE_P0L0|MB_TYPE_P0L1|MB_TYPE_DIRECT2; /* B_16x16 */ + }else if(!is_b8x8 && (mb_type_col[0] & (MB_TYPE_16x8|MB_TYPE_8x16))){ + sub_mb_type = MB_TYPE_16x16|MB_TYPE_P0L0|MB_TYPE_P0L1|MB_TYPE_DIRECT2; /* B_SUB_8x8 */ + *mb_type |= MB_TYPE_L0L1|MB_TYPE_DIRECT2 | (mb_type_col[0] & (MB_TYPE_16x8|MB_TYPE_8x16)); }else{ sub_mb_type = MB_TYPE_16x16|MB_TYPE_P0L0|MB_TYPE_P0L1|MB_TYPE_DIRECT2; /* B_SUB_8x8 */ *mb_type |= MB_TYPE_8x8|MB_TYPE_L0L1;