diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2010-02-13 20:13:10 +0000 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2010-02-13 20:13:10 +0000 |
commit | 2e4362af14d01ebe64d13357218aa67ae0358034 (patch) | |
tree | 8e93bdcbde8e7e7793eadfc3006731a43c665c95 /libavcodec | |
parent | 65760304bc6b47febaabd5155e905437034e1c86 (diff) | |
download | ffmpeg-2e4362af14d01ebe64d13357218aa67ae0358034.tar.gz |
Skiped MBs dont need the cbp stuff so skip initing that.
Originally committed as revision 21811 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec')
-rw-r--r-- | libavcodec/h264.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/libavcodec/h264.h b/libavcodec/h264.h index 68c26af36c..ae95e5984f 100644 --- a/libavcodec/h264.h +++ b/libavcodec/h264.h @@ -801,6 +801,7 @@ static void fill_decode_caches(H264Context *h, int mb_type){ left_type[0] = h->slice_table[left_xy[0] ] == h->slice_num ? s->current_picture.mb_type[left_xy[0]] : 0; left_type[1] = h->slice_table[left_xy[1] ] == h->slice_num ? s->current_picture.mb_type[left_xy[1]] : 0; + if(!IS_SKIP(mb_type)){ if(IS_INTRA(mb_type)){ int type_mask= h->pps.constrained_intra_pred ? IS_INTRA(-1) : -1; h->topleft_samples_available= @@ -945,6 +946,7 @@ static void fill_decode_caches(H264Context *h, int mb_type){ h->left_cbp |= ((h->cbp_table[left_xy[1]]>>((left_block[2]&(~1))+1))&0x1) << 3; } } + } #if 1 if(IS_INTER(mb_type) || (IS_DIRECT(mb_type) && h->direct_spatial_mv_pred)){ |