ref: 2f24ad9e85e4db0d9d5b265a6d4c1f4b7db6babb
parent: 26bd81b955c0f20edc9ffad0a03f99edf485d0be
author: John Koleszar <jkoleszar@google.com>
date: Fri Jan 18 09:35:20 EST 2013
Use alt-ref frame context for keyframes This matches the behavior prior to generalizing the frame context selection, and intuitively makes sense in that the first forward ref is immediately after the keyframe, so it's quality is improved a bit by using the keyframe's entropy context rather than the default. Change-Id: Ia82cef79382b9d8cfafdc44ba0533d4dc3e44053
--- a/vp9/encoder/vp9_ratectrl.c
+++ b/vp9/encoder/vp9_ratectrl.c
@@ -286,6 +286,13 @@
sizeof(xd->mb_mv_ref_probs));
}
#endif
+
+ /* Choose which entropy context to use. When using a forward reference
+ * frame, it immediately follows the keyframe, and thus benefits from
+ * using the same entropy context established by the keyframe. Otherwise,
+ * use the default context 0.
+ */
+ cm->frame_context_idx = cpi->oxcf.play_alternate;
}
void vp9_setup_inter_frame(VP9_COMP *cpi) {
--
⑨