From b40cd4e0e42d66195fef881e21832ba92a771cd5 Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Thu, 4 Dec 2003 18:34:47 +0000 Subject: rv20 (h263) b frame decoding support Originally committed as revision 2561 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavcodec/h263data.h | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) (limited to 'libavcodec/h263data.h') diff --git a/libavcodec/h263data.h b/libavcodec/h263data.h index 385decd9dc..2dc6e40d67 100644 --- a/libavcodec/h263data.h +++ b/libavcodec/h263data.h @@ -29,6 +29,49 @@ const uint8_t inter_MCBPC_bits[28] = { 11, 13, 13, 13,/* inter4Q*/ }; +static const uint8_t h263_mbtype_b_tab[15][2] = { + {1, 1}, + {3, 3}, + {1, 5}, + {4, 4}, + {5, 4}, + {6, 6}, + {2, 4}, + {3, 4}, + {7, 6}, + {4, 6}, + {5, 6}, + {1, 6}, + {1,10}, + {1, 7}, + {1, 8}, +}; + +static const int h263_mb_type_b_map[15]= { + MB_TYPE_DIRECT2 | MB_TYPE_L0L1, + MB_TYPE_DIRECT2 | MB_TYPE_L0L1 | MB_TYPE_CBP, + MB_TYPE_DIRECT2 | MB_TYPE_L0L1 | MB_TYPE_CBP | MB_TYPE_QUANT, + MB_TYPE_L0, + MB_TYPE_L0 | MB_TYPE_CBP, + MB_TYPE_L0 | MB_TYPE_CBP | MB_TYPE_QUANT, + MB_TYPE_L1, + MB_TYPE_L1 | MB_TYPE_CBP, + MB_TYPE_L1 | MB_TYPE_CBP | MB_TYPE_QUANT, + MB_TYPE_L0L1, + MB_TYPE_L0L1 | MB_TYPE_CBP, + MB_TYPE_L0L1 | MB_TYPE_CBP | MB_TYPE_QUANT, + 0, //stuffing + MB_TYPE_INTRA | MB_TYPE_CBP, + MB_TYPE_INTRA | MB_TYPE_CBP | MB_TYPE_QUANT, +}; + +const uint8_t cbpc_b_tab[4][2] = { +{0, 1}, +{2, 2}, +{7, 3}, +{6, 3}, +}; + const uint8_t cbpy_tab[16][2] = { {3,4}, {5,5}, {4,5}, {9,4}, {3,5}, {7,4}, {2,6}, {11,4}, -- cgit v1.2.3