ref: 46218c9cb91ab19ab395e6ed1797f89e41d67730
parent: e84e868570dfb8acc531604bad05818041538710
parent: 1c27e1f127e9f6c775b71922eb85de1e11fc81d4
author: Paul Wilkins <[email protected]>
date: Thu Jun 26 05:41:40 EDT 2014
Merge "Fix quality regression for multi arf off case."
--- a/vp9/encoder/vp9_bitstream.c
+++ b/vp9/encoder/vp9_bitstream.c
@@ -904,7 +904,7 @@
(cpi->refresh_golden_frame << cpi->alt_fb_idx);
} else {
int arf_idx = cpi->alt_fb_idx;
- if (cpi->pass == 2) {
+ if ((cpi->pass == 2) && cpi->multi_arf_allowed) {
const GF_GROUP *const gf_group = &cpi->twopass.gf_group;
arf_idx = gf_group->arf_update_idx[gf_group->index];
}
--- a/vp9/encoder/vp9_encoder.c
+++ b/vp9/encoder/vp9_encoder.c
@@ -1514,7 +1514,7 @@
} else { /* For non key/golden frames */
if (cpi->refresh_alt_ref_frame) {
int arf_idx = cpi->alt_fb_idx;
- if (cpi->pass == 2) {
+ if ((cpi->pass == 2) && cpi->multi_arf_allowed) {
const GF_GROUP *const gf_group = &cpi->twopass.gf_group;
arf_idx = gf_group->arf_update_idx[gf_group->index];
}
@@ -2513,7 +2513,7 @@
cm->show_frame = 1;
cm->intra_only = 0;
- // Check to see if the frame should be encoded is an arf overlay.
+ // Check to see if the frame should be encoded as an arf overlay.
check_src_altref(cpi);
}
}