From: Michael Niedermayer Date: Wed, 20 Jan 2010 00:44:03 +0000 (+0000) Subject: Simplify and optimize intra code in h264_loopfilter.c X-Git-Tag: v0.6~1776 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=55c54371c4cdd2c24240d52ff4ed21045572f767;p=platform%2Fupstream%2Flibav.git Simplify and optimize intra code in h264_loopfilter.c Originally committed as revision 21339 to svn://svn.ffmpeg.org/ffmpeg/trunk --- diff --git a/libavcodec/h264_loopfilter.c b/libavcodec/h264_loopfilter.c index 452a77a..500efb6 100644 --- a/libavcodec/h264_loopfilter.c +++ b/libavcodec/h264_loopfilter.c @@ -498,21 +498,14 @@ static av_always_inline void filter_mb_dir(H264Context *h, int mb_x, int mb_y, u if( (edge&1) && IS_8x8DCT(mb_type) ) continue; - if( IS_INTRA(mb_type) || - IS_INTRA(mbn_type) ) { - int value; + if( IS_INTRA(mb_type|mbn_type)) { + *(uint64_t*)bS= 0x0003000300030003ULL; if (edge == 0) { - if ( (!IS_INTERLACED(mb_type) && !IS_INTERLACED(mbm_type)) + if ( (!IS_INTERLACED(mb_type|mbm_type)) || ((FRAME_MBAFF || (s->picture_structure != PICT_FRAME)) && (dir == 0)) - ) { - value = 4; - } else { - value = 3; - } - } else { - value = 3; + ) + *(uint64_t*)bS= 0x0004000400040004ULL; } - bS[0] = bS[1] = bS[2] = bS[3] = value; } else { int i, l; int mv_done;