[SCM] libav/experimental: Split first reference list comparission from mv comparission. about 0.5% faster MBAFF loop filtering

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 16:59:03 UTC 2013


The following commit has been merged in the experimental branch:
commit 26468148979842f2c76531b8646bfbcae23a9a74
Author: Michael Niedermayer <michaelni at gmx.at>
Date:   Sat Jan 30 20:07:37 2010 +0000

    Split first reference list comparission from mv comparission.
    about 0.5% faster MBAFF loop filtering
    
    Originally committed as revision 21552 to svn://svn.ffmpeg.org/ffmpeg/trunk

diff --git a/libavcodec/h264_loopfilter.c b/libavcodec/h264_loopfilter.c
index 2c27929..e7cece3 100644
--- a/libavcodec/h264_loopfilter.c
+++ b/libavcodec/h264_loopfilter.c
@@ -418,9 +418,10 @@ void ff_h264_filter_mb_fast( H264Context *h, int mb_x, int mb_y, uint8_t *img_y,
 static int check_mv(H264Context *h, long b_idx, long bn_idx, int mvy_limit){
     int v;
 
-    v = h->ref_cache[0][b_idx] != h->ref_cache[0][bn_idx] |
-        h->mv_cache[0][b_idx][0] - h->mv_cache[0][bn_idx][0] + 3 >= 7U |
-        FFABS( h->mv_cache[0][b_idx][1] - h->mv_cache[0][bn_idx][1] ) >= mvy_limit;
+    v= h->ref_cache[0][b_idx] != h->ref_cache[0][bn_idx];
+    if(!v && h->ref_cache[0][b_idx]!=-1)
+        v= h->mv_cache[0][b_idx][0] - h->mv_cache[0][bn_idx][0] + 3 >= 7U |
+           FFABS( h->mv_cache[0][b_idx][1] - h->mv_cache[0][bn_idx][1] ) >= mvy_limit;
 
     if(h->list_count==2){
         if(!v)

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list