diff options
author | Diego Biurrun <diego@biurrun.de> | 2013-08-19 14:24:45 +0200 |
---|---|---|
committer | Diego Biurrun <diego@biurrun.de> | 2016-03-25 15:56:14 +0100 |
commit | a7da517f6a5c472f46f67dd33bb6b95ccc919923 (patch) | |
tree | 4d81c15ee42203fc381ffba5f763e1e8278723a4 /libavcodec/h264_cavlc.c | |
parent | f4d581cda3897f66c1dda7586b93f86a591dbbef (diff) | |
download | ffmpeg-a7da517f6a5c472f46f67dd33bb6b95ccc919923.tar.gz |
h264data: Move all data tables from a header to a .c file
Diffstat (limited to 'libavcodec/h264_cavlc.c')
-rw-r--r-- | libavcodec/h264_cavlc.c | 35 |
1 files changed, 19 insertions, 16 deletions
diff --git a/libavcodec/h264_cavlc.c b/libavcodec/h264_cavlc.c index 636b5f6182..45a838603e 100644 --- a/libavcodec/h264_cavlc.c +++ b/libavcodec/h264_cavlc.c @@ -30,8 +30,8 @@ #include "internal.h" #include "avcodec.h" #include "h264.h" -#include "h264data.h" // FIXME FIXME FIXME #include "h264_mvpred.h" +#include "h264data.h" #include "golomb.h" #include "mpegutils.h" @@ -733,16 +733,16 @@ int ff_h264_decode_mb_cavlc(const H264Context *h, H264SliceContext *sl) mb_type= get_ue_golomb(&sl->gb); if (sl->slice_type_nos == AV_PICTURE_TYPE_B) { if(mb_type < 23){ - partition_count= b_mb_type_info[mb_type].partition_count; - mb_type= b_mb_type_info[mb_type].type; + partition_count = ff_h264_b_mb_type_info[mb_type].partition_count; + mb_type = ff_h264_b_mb_type_info[mb_type].type; }else{ mb_type -= 23; goto decode_intra_mb; } } else if (sl->slice_type_nos == AV_PICTURE_TYPE_P) { if(mb_type < 5){ - partition_count= p_mb_type_info[mb_type].partition_count; - mb_type= p_mb_type_info[mb_type].type; + partition_count = ff_h264_p_mb_type_info[mb_type].partition_count; + mb_type = ff_h264_p_mb_type_info[mb_type].type; }else{ mb_type -= 5; goto decode_intra_mb; @@ -757,9 +757,9 @@ decode_intra_mb: return -1; } partition_count=0; - cbp= i_mb_type_info[mb_type].cbp; - sl->intra16x16_pred_mode = i_mb_type_info[mb_type].pred_mode; - mb_type= i_mb_type_info[mb_type].type; + cbp = ff_h264_i_mb_type_info[mb_type].cbp; + sl->intra16x16_pred_mode = ff_h264_i_mb_type_info[mb_type].pred_mode; + mb_type = ff_h264_i_mb_type_info[mb_type].type; } if (MB_FIELD(sl)) @@ -843,8 +843,8 @@ decode_intra_mb: av_log(h->avctx, AV_LOG_ERROR, "B sub_mb_type %u out of range at %d %d\n", sl->sub_mb_type[i], sl->mb_x, sl->mb_y); return -1; } - sub_partition_count[i]= b_sub_mb_type_info[ sl->sub_mb_type[i] ].partition_count; - sl->sub_mb_type[i]= b_sub_mb_type_info[ sl->sub_mb_type[i] ].type; + sub_partition_count[i] = ff_h264_b_sub_mb_type_info[sl->sub_mb_type[i]].partition_count; + sl->sub_mb_type[i] = ff_h264_b_sub_mb_type_info[sl->sub_mb_type[i]].type; } if( IS_DIRECT(sl->sub_mb_type[0]|sl->sub_mb_type[1]|sl->sub_mb_type[2]|sl->sub_mb_type[3])) { ff_h264_pred_direct_motion(h, sl, &mb_type); @@ -861,8 +861,8 @@ decode_intra_mb: av_log(h->avctx, AV_LOG_ERROR, "P sub_mb_type %u out of range at %d %d\n", sl->sub_mb_type[i], sl->mb_x, sl->mb_y); return -1; } - sub_partition_count[i]= p_sub_mb_type_info[ sl->sub_mb_type[i] ].partition_count; - sl->sub_mb_type[i]= p_sub_mb_type_info[ sl->sub_mb_type[i] ].type; + sub_partition_count[i] = ff_h264_p_sub_mb_type_info[sl->sub_mb_type[i]].partition_count; + sl->sub_mb_type[i] = ff_h264_p_sub_mb_type_info[sl->sub_mb_type[i]].type; } } @@ -1062,8 +1062,10 @@ decode_intra_mb: av_log(h->avctx, AV_LOG_ERROR, "cbp too large (%u) at %d %d\n", cbp, sl->mb_x, sl->mb_y); return -1; } - if(IS_INTRA4x4(mb_type)) cbp= golomb_to_intra4x4_cbp[cbp]; - else cbp= golomb_to_inter_cbp [cbp]; + if (IS_INTRA4x4(mb_type)) + cbp = ff_h264_golomb_to_intra4x4_cbp[cbp]; + else + cbp = ff_h264_golomb_to_inter_cbp[cbp]; }else{ if(cbp > 15){ av_log(h->avctx, AV_LOG_ERROR, "cbp too large (%u) at %d %d\n", cbp, sl->mb_x, sl->mb_y); @@ -1128,7 +1130,7 @@ decode_intra_mb: if(cbp&0x30){ for(chroma_idx=0; chroma_idx<2; chroma_idx++) if (decode_residual(h, sl, gb, sl->mb + ((256 + 16*16*chroma_idx) << pixel_shift), - CHROMA_DC_BLOCK_INDEX+chroma_idx, chroma422_dc_scan, + CHROMA_DC_BLOCK_INDEX + chroma_idx, ff_h264_chroma422_dc_scan, NULL, 8) < 0) { return -1; } @@ -1154,7 +1156,8 @@ decode_intra_mb: } else /* yuv420 */ { if(cbp&0x30){ for(chroma_idx=0; chroma_idx<2; chroma_idx++) - if( decode_residual(h, sl, gb, sl->mb + ((256 + 16*16*chroma_idx) << pixel_shift), CHROMA_DC_BLOCK_INDEX+chroma_idx, chroma_dc_scan, NULL, 4) < 0){ + if (decode_residual(h, sl, gb, sl->mb + ((256 + 16 * 16 * chroma_idx) << pixel_shift), + CHROMA_DC_BLOCK_INDEX + chroma_idx, ff_h264_chroma_dc_scan, NULL, 4) < 0) { return -1; } } |