From 5d18eaad1349342b910f41fff5e49f9b4d6f033f Mon Sep 17 00:00:00 2001 From: Loren Merritt Date: Sun, 28 May 2006 22:44:14 +0000 Subject: h264: MBAFF interlaced decoding Originally committed as revision 5419 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavcodec/h264data.h | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) (limited to 'libavcodec/h264data.h') diff --git a/libavcodec/h264data.h b/libavcodec/h264data.h index 3132102df4..1dd9dafe50 100644 --- a/libavcodec/h264data.h +++ b/libavcodec/h264data.h @@ -345,6 +345,44 @@ static const uint8_t zigzag_scan8x8_cavlc[64]={ 5+5*8, 6+5*8, 6+6*8, 7+7*8, }; +static const uint8_t field_scan8x8[64]={ + 0+0*8, 0+1*8, 0+2*8, 1+0*8, + 1+1*8, 0+3*8, 0+4*8, 1+2*8, + 2+0*8, 1+3*8, 0+5*8, 0+6*8, + 0+7*8, 1+4*8, 2+1*8, 3+0*8, + 2+2*8, 1+5*8, 1+6*8, 1+7*8, + 2+3*8, 3+1*8, 4+0*8, 3+2*8, + 2+4*8, 2+5*8, 2+6*8, 2+7*8, + 3+3*8, 4+1*8, 5+0*8, 4+2*8, + 3+4*8, 3+5*8, 3+6*8, 3+7*8, + 4+3*8, 5+1*8, 6+0*8, 5+2*8, + 4+4*8, 4+5*8, 4+6*8, 4+7*8, + 5+3*8, 6+1*8, 6+2*8, 5+4*8, + 5+5*8, 5+6*8, 5+7*8, 6+3*8, + 7+0*8, 7+1*8, 6+4*8, 6+5*8, + 6+6*8, 6+7*8, 7+2*8, 7+3*8, + 7+4*8, 7+5*8, 7+6*8, 7+7*8, +}; + +static const uint8_t field_scan8x8_cavlc[64]={ + 0+0*8, 1+1*8, 2+0*8, 0+7*8, + 2+2*8, 2+3*8, 2+4*8, 3+3*8, + 3+4*8, 4+3*8, 4+4*8, 5+3*8, + 5+5*8, 7+0*8, 6+6*8, 7+4*8, + 0+1*8, 0+3*8, 1+3*8, 1+4*8, + 1+5*8, 3+1*8, 2+5*8, 4+1*8, + 3+5*8, 5+1*8, 4+5*8, 6+1*8, + 5+6*8, 7+1*8, 6+7*8, 7+5*8, + 0+2*8, 0+4*8, 0+5*8, 2+1*8, + 1+6*8, 4+0*8, 2+6*8, 5+0*8, + 3+6*8, 6+0*8, 4+6*8, 6+2*8, + 5+7*8, 6+4*8, 7+2*8, 7+6*8, + 1+0*8, 1+2*8, 0+6*8, 3+0*8, + 1+7*8, 3+2*8, 2+7*8, 4+2*8, + 3+7*8, 5+2*8, 4+7*8, 5+4*8, + 6+3*8, 6+5*8, 7+3*8, 7+7*8, +}; + #define MB_TYPE_REF0 MB_TYPE_ACPRED //dirty but it fits in 16bit #define MB_TYPE_8x8DCT 0x01000000 #define IS_REF0(a) ((a)&MB_TYPE_REF0) -- cgit v1.2.3