Faster C VP8 normal inner loop filter
authorJason Garrett-Glaser <darkshikari@gmail.com>
Tue, 29 Jun 2010 04:34:04 +0000 (04:34 +0000)
committerJason Garrett-Glaser <darkshikari@gmail.com>
Tue, 29 Jun 2010 04:34:04 +0000 (04:34 +0000)
Originally committed as revision 23881 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavcodec/vp8dsp.c

index ab31099..8f9124e 100644 (file)
@@ -214,12 +214,15 @@ static void vp8_ ## dir ## _loop_filter ## size ## _c(uint8_t *dst, int stride,\
 static void vp8_ ## dir ## _loop_filter ## size ## _inner_c(uint8_t *dst, int stride,\
                                       int flim_E, int flim_I, int hev_thresh)\
 {\
 static void vp8_ ## dir ## _loop_filter ## size ## _inner_c(uint8_t *dst, int stride,\
                                       int flim_E, int flim_I, int hev_thresh)\
 {\
-    int i, hv;\
+    int i;\
 \
     for (i = 0; i < size; i++)\
         if (normal_limit(dst+i*stridea, strideb, flim_E, flim_I)) {\
 \
     for (i = 0; i < size; i++)\
         if (normal_limit(dst+i*stridea, strideb, flim_E, flim_I)) {\
-            hv = hev(dst+i*stridea, strideb, hev_thresh);\
-            filter_common(dst+i*stridea, strideb, hv);\
+            int hv = hev(dst+i*stridea, strideb, hev_thresh);\
+            if (hv) \
+                filter_common(dst+i*stridea, strideb, 1);\
+            else \
+                filter_common(dst+i*stridea, strideb, 0);\
         }\
 }
 
         }\
 }