ref: 79774d108ff525bc1aeeb61b2d2e597b4c798a5b
parent: b1781b48dbdc77aeca06a8edcb67ec8b268c6608
author: Paul Wilkins <paulwilkins@google.com>
date: Wed Dec 7 08:32:45 EST 2011
Minor fixes: fixed issues caused by conflicts between two experiments. Change-Id: I56a9bd69493e4850c121ea057a6233c55777c2a5
--- a/vp8/decoder/decodemv.c
+++ b/vp8/decoder/decodemv.c
@@ -692,8 +692,13 @@
}
if (mbmi->second_ref_frame)
{
- vp8_find_near_mvs(xd, mi, &nearest, &nearby, &best_mv, rct,
- mbmi->second_ref_frame, pbi->common.ref_frame_sign_bias);
+ vp8_find_near_mvs(xd, mi,
+#if CONFIG_NEWNEAR
+ prev_mi,
+#endif
+ &nearest, &nearby, &best_mv, rct,
+ (int)mbmi->second_ref_frame,
+ pbi->common.ref_frame_sign_bias);
switch (mbmi->mode) {
case ZEROMV:
mbmi->second_mv.as_int = 0;
--- a/vp8/encoder/bitstream.c
+++ b/vp8/encoder/bitstream.c
@@ -1207,7 +1207,13 @@
const int second_rf = mi->second_ref_frame;
int_mv n1, n2;
int ct[4];
- vp8_find_near_mvs(xd, m, &n1, &n2, &best_mv, ct, second_rf, cpi->common.ref_frame_sign_bias);
+ vp8_find_near_mvs(xd, m,
+#if CONFIG_NEWNEAR
+ prev_m,
+#endif
+ &n1, &n2, &best_mv,
+ ct, second_rf,
+ cpi->common.ref_frame_sign_bias);
write_mv(w, &mi->second_mv.as_mv, &best_mv, mvc);
}
#endif /* CONFIG_DUALPRED */
--- a/vp8/encoder/rdopt.c
+++ b/vp8/encoder/rdopt.c
@@ -2555,10 +2555,12 @@
vp8_build_inter16x16_predictors_mby(&x->e_mbd);
#if CONFIG_DUALPRED
- MB_MODE_INFO *t = &x->e_mbd.mode_info_context[-cpi->common.mode_info_stride].mbmi;
- MB_MODE_INFO *l = &x->e_mbd.mode_info_context[-1].mbmi;
- int cnt = (t->second_ref_frame != INTRA_FRAME) + (l->second_ref_frame != INTRA_FRAME);
- dualmode_cost = vp8_cost_bit(cpi->prob_dualpred[cnt], 0);
+ {
+ MB_MODE_INFO *t = &x->e_mbd.mode_info_context[-cpi->common.mode_info_stride].mbmi;
+ MB_MODE_INFO *l = &x->e_mbd.mode_info_context[-1].mbmi;
+ int cnt = (t->second_ref_frame != INTRA_FRAME) + (l->second_ref_frame != INTRA_FRAME);
+ dualmode_cost = vp8_cost_bit(cpi->prob_dualpred[cnt], 0);
+ }
#endif /* CONFIG_DUALPRED */
if (cpi->active_map_enabled && x->active_ptr[0] == 0) {
@@ -2713,10 +2715,12 @@
/* We don't include the cost of the second reference here, because there are only
* three options: Last/Golden, ARF/Last or Golden/ARF, or in other words if you
* present them in that order, the second one is always known if the first is known */
- MB_MODE_INFO *t = &x->e_mbd.mode_info_context[-cpi->common.mode_info_stride].mbmi;
- MB_MODE_INFO *l = &x->e_mbd.mode_info_context[-1].mbmi;
- int cnt = (t->second_ref_frame != INTRA_FRAME) + (l->second_ref_frame != INTRA_FRAME);
- dualmode_cost = vp8_cost_bit(cpi->prob_dualpred[cnt], 1);
+ {
+ MB_MODE_INFO *t = &x->e_mbd.mode_info_context[-cpi->common.mode_info_stride].mbmi;
+ MB_MODE_INFO *l = &x->e_mbd.mode_info_context[-1].mbmi;
+ int cnt = (t->second_ref_frame != INTRA_FRAME) + (l->second_ref_frame != INTRA_FRAME);
+ dualmode_cost = vp8_cost_bit(cpi->prob_dualpred[cnt], 1);
+ }
}
#endif /* CONFIG_DUALPRED */