Mercurial > libavcodec.hg
comparison h264_loopfilter.c @ 11061:40b84645b089 libavcodec
Split first reference list comparission from mv comparission.
about 0.5% faster MBAFF loop filtering
author | michael |
---|---|
date | Sat, 30 Jan 2010 20:07:37 +0000 |
parents | af4b724b99d5 |
children | 86ec27e828b5 |
comparison
equal
deleted
inserted
replaced
11060:daff45175333 | 11061:40b84645b089 |
---|---|
416 } | 416 } |
417 | 417 |
418 static int check_mv(H264Context *h, long b_idx, long bn_idx, int mvy_limit){ | 418 static int check_mv(H264Context *h, long b_idx, long bn_idx, int mvy_limit){ |
419 int v; | 419 int v; |
420 | 420 |
421 v = h->ref_cache[0][b_idx] != h->ref_cache[0][bn_idx] | | 421 v= h->ref_cache[0][b_idx] != h->ref_cache[0][bn_idx]; |
422 h->mv_cache[0][b_idx][0] - h->mv_cache[0][bn_idx][0] + 3 >= 7U | | 422 if(!v && h->ref_cache[0][b_idx]!=-1) |
423 FFABS( h->mv_cache[0][b_idx][1] - h->mv_cache[0][bn_idx][1] ) >= mvy_limit; | 423 v= h->mv_cache[0][b_idx][0] - h->mv_cache[0][bn_idx][0] + 3 >= 7U | |
424 FFABS( h->mv_cache[0][b_idx][1] - h->mv_cache[0][bn_idx][1] ) >= mvy_limit; | |
424 | 425 |
425 if(h->list_count==2){ | 426 if(h->list_count==2){ |
426 if(!v) | 427 if(!v) |
427 v = h->ref_cache[1][b_idx] != h->ref_cache[1][bn_idx] | | 428 v = h->ref_cache[1][b_idx] != h->ref_cache[1][bn_idx] | |
428 h->mv_cache[1][b_idx][0] - h->mv_cache[1][bn_idx][0] + 3 >= 7U | | 429 h->mv_cache[1][b_idx][0] - h->mv_cache[1][bn_idx][0] + 3 >= 7U | |