[FFmpeg-cvslog] r21339 - trunk/libavcodec/h264_loopfilter.c

michael subversion
Wed Jan 20 01:44:03 CET 2010


Author: michael
Date: Wed Jan 20 01:44:03 2010
New Revision: 21339

Log:
Simplify and optimize intra code in h264_loopfilter.c

Modified:
   trunk/libavcodec/h264_loopfilter.c

Modified: trunk/libavcodec/h264_loopfilter.c
==============================================================================
--- trunk/libavcodec/h264_loopfilter.c	Wed Jan 20 01:39:47 2010	(r21338)
+++ trunk/libavcodec/h264_loopfilter.c	Wed Jan 20 01:44:03 2010	(r21339)
@@ -498,21 +498,14 @@ static av_always_inline void filter_mb_d
         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;



More information about the ffmpeg-cvslog mailing list