summaryrefslogtreecommitdiff
path: root/libavcodec/h264_loopfilter.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2010-01-20 00:44:03 +0000
committerMichael Niedermayer <michaelni@gmx.at>2010-01-20 00:44:03 +0000
commit55c54371c4cdd2c24240d52ff4ed21045572f767 (patch)
treea01672b849efd85af64526fe4ac7b11053d9312a /libavcodec/h264_loopfilter.c
parent7f3f5f46c224c95673e85cdc06d5ac9d6a08701f (diff)
Simplify and optimize intra code in h264_loopfilter.c
Originally committed as revision 21339 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/h264_loopfilter.c')
-rw-r--r--libavcodec/h264_loopfilter.c17
1 files changed, 5 insertions, 12 deletions
diff --git a/libavcodec/h264_loopfilter.c b/libavcodec/h264_loopfilter.c
index 452a77aa3e..500efb6339 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;