Mercurial > libavcodec.hg
diff h264data.h @ 1177:fea03d2c4946 libavcodec
simplified adressing of most mb based arrays (mb_x + mb_y*s->mb_stride) now instead of mb_x + mb_y*mb_width and 1+mb_x + (1+mb_y)*(mb_width+2) and ... mixture
more direct use of the new mb_type stuff instead of codec specific stuff
runtime mb_type debug output h264/h263 variants/mpeg1/2/4
error concealment /resilience for mpeg1/2
various minor optimizations
author | michaelni |
---|---|
date | Thu, 10 Apr 2003 13:18:38 +0000 |
parents | 5af9aeadbdc3 |
children | 09f1c2f62388 |
line wrap: on
line diff
--- a/h264data.h Thu Apr 10 08:47:08 2003 +0000 +++ b/h264data.h Thu Apr 10 13:18:38 2003 +0000 @@ -306,6 +306,9 @@ (0+1*2)*16, (1+1*2)*16, //FIXME }; +#define MB_TYPE_REF0 0x40000000 +#define IS_REF0(a) ((a)&MB_TYPE_REF0) + typedef struct IMbInfo{ uint16_t type; uint8_t pred_mode; @@ -362,7 +365,7 @@ }; static const PMbInfo b_mb_type_info[23]={ -{MB_TYPE_DIRECT , 1, }, +{MB_TYPE_DIRECT2 , 1, }, {MB_TYPE_16x16|MB_TYPE_P0L0 , 1, }, {MB_TYPE_16x16 |MB_TYPE_P0L1 , 1, }, {MB_TYPE_16x16|MB_TYPE_P0L0|MB_TYPE_P0L1 , 1, }, @@ -388,7 +391,7 @@ }; static const PMbInfo b_sub_mb_type_info[13]={ -{MB_TYPE_DIRECT , 1, }, +{MB_TYPE_DIRECT2 , 1, }, {MB_TYPE_16x16|MB_TYPE_P0L0 , 1, }, {MB_TYPE_16x16 |MB_TYPE_P0L1 , 1, }, {MB_TYPE_16x16|MB_TYPE_P0L0|MB_TYPE_P0L1 , 1, },