diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2010-01-28 11:12:46 +0000 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2010-01-28 11:12:46 +0000 |
commit | 2cf0d46d4c3e4590086ec29860772ea54ccd98e6 (patch) | |
tree | fb857a770ccfde4efdcdb6439e82f06b6f11e5d3 | |
parent | fabd704b37b7a61ed2673bb34b0955774140ce1b (diff) | |
download | ffmpeg-streaming-2cf0d46d4c3e4590086ec29860772ea54ccd98e6.zip ffmpeg-streaming-2cf0d46d4c3e4590086ec29860772ea54ccd98e6.tar.gz |
Restructure check_mv()
~20 cpu cycles faster loopfilter
Originally committed as revision 21505 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r-- | libavcodec/h264_loopfilter.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/libavcodec/h264_loopfilter.c b/libavcodec/h264_loopfilter.c index 20f846d..c9d8aec 100644 --- a/libavcodec/h264_loopfilter.c +++ b/libavcodec/h264_loopfilter.c @@ -439,14 +439,13 @@ static int check_mv(H264Context *h, long b_idx, long bn_idx, int mvy_limit){ if(v){ if(h->ref_cache[0][b_idx] != h->ref_cache[1][bn_idx] | - h->mv_cache[0][b_idx][0] - h->mv_cache[1][bn_idx][0] + 3 >= 7U | - FFABS( h->mv_cache[0][b_idx][1] - h->mv_cache[1][bn_idx][1] ) >= mvy_limit) + h->ref_cache[1][b_idx] != h->ref_cache[0][bn_idx]) return 1; - if(h->ref_cache[1][b_idx] != h->ref_cache[0][bn_idx] | + return + h->mv_cache[0][b_idx][0] - h->mv_cache[1][bn_idx][0] + 3 >= 7U | + FFABS( h->mv_cache[0][b_idx][1] - h->mv_cache[1][bn_idx][1] ) >= mvy_limit | h->mv_cache[1][b_idx][0] - h->mv_cache[0][bn_idx][0] + 3 >= 7U | - FFABS( h->mv_cache[1][b_idx][1] - h->mv_cache[0][bn_idx][1] ) >= mvy_limit) - return 1; - return 0; + FFABS( h->mv_cache[1][b_idx][1] - h->mv_cache[0][bn_idx][1] ) >= mvy_limit; } } |