diff options
author | Angie Chiang <angiebird@google.com> | 2019-07-17 12:36:14 -0700 |
---|---|---|
committer | Angie Chiang <angiebird@google.com> | 2019-07-17 13:14:10 -0700 |
commit | 706f1f10e016f30f6f68afd938e25df9765ffb87 (patch) | |
tree | 00a41d51553ec0d499d8ff5756f33d5d9f009d26 /vp9/encoder/vp9_rdopt.c | |
parent | ee554c8cebcb0e3a7a549b98a8b3d398fc88fd07 (diff) | |
download | libvpx-706f1f10e016f30f6f68afd938e25df9765ffb87.tar libvpx-706f1f10e016f30f6f68afd938e25df9765ffb87.tar.gz libvpx-706f1f10e016f30f6f68afd938e25df9765ffb87.tar.bz2 libvpx-706f1f10e016f30f6f68afd938e25df9765ffb87.zip |
Make vp9_prepare_nb_full_mvs only return valid mvs
In this case, vp9_nb_mvs_inconsistency doesn't need to check
whether each neighbor mv is valid or not.
non_greedy_mv encoding time is reduced by 1.5%
Change-Id: I3216c98481e777d5e0b917ea20ee39b7ca9c9d23
Diffstat (limited to 'vp9/encoder/vp9_rdopt.c')
-rw-r--r-- | vp9/encoder/vp9_rdopt.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/vp9/encoder/vp9_rdopt.c b/vp9/encoder/vp9_rdopt.c index 1df69c9af..65b94357d 100644 --- a/vp9/encoder/vp9_rdopt.c +++ b/vp9/encoder/vp9_rdopt.c @@ -2496,15 +2496,15 @@ static void single_motion_search(VP9_COMP *cpi, MACROBLOCK *x, BLOCK_SIZE bsize, int bestsme = INT_MAX; #if CONFIG_NON_GREEDY_MV - int_mv nb_full_mvs[NB_MVS_NUM]; - const int nb_full_mv_num = NB_MVS_NUM; int gf_group_idx = cpi->twopass.gf_group.index; int gf_rf_idx = ref_frame_to_gf_rf_idx(ref); BLOCK_SIZE square_bsize = get_square_block_size(bsize); + int_mv nb_full_mvs[NB_MVS_NUM]; + const int nb_full_mv_num = + vp9_prepare_nb_full_mvs(&cpi->tpl_stats[gf_group_idx], mi_row, mi_col, + gf_rf_idx, square_bsize, nb_full_mvs); const int lambda = (pw * ph) / 4; assert(pw * ph == lambda << 2); - vp9_prepare_nb_full_mvs(&cpi->tpl_stats[gf_group_idx], mi_row, mi_col, - gf_rf_idx, square_bsize, nb_full_mvs); #else // CONFIG_NON_GREEDY_MV int sadpb = x->sadperbit16; #endif // CONFIG_NON_GREEDY_MV |