summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRonald S. Bultje <rsbultje@gmail.com>2015-10-21 09:13:59 -0400
committerRonald S. Bultje <rsbultje@gmail.com>2015-10-21 15:19:11 -0400
commit6a032503caec65c1f5fdf609c79b377a06a034d8 (patch)
tree7ae366b7e4f628f0dbf54e1fb5336d703b9e0ef2
parent558d93f3a5a41a75aa8c3bfce97c8e49509fcb7e (diff)
downloadlibvpx-6a032503caec65c1f5fdf609c79b377a06a034d8.tar.gz
vp10: don't allow comp_inter_inter on keyframes.
Change-Id: Ibd0e13721a2bb71c532d20b36c42f4cccf5c5de2
-rw-r--r--vp10/decoder/decodeframe.c2
-rw-r--r--vp10/encoder/encodeframe.c2
2 files changed, 4 insertions, 0 deletions
diff --git a/vp10/decoder/decodeframe.c b/vp10/decoder/decodeframe.c
index fa28e7cf7..5c95e16bc 100644
--- a/vp10/decoder/decodeframe.c
+++ b/vp10/decoder/decodeframe.c
@@ -47,6 +47,8 @@
static int is_compound_reference_allowed(const VP10_COMMON *cm) {
int i;
+ if (frame_is_intra_only(cm))
+ return 0;
for (i = 1; i < REFS_PER_FRAME; ++i)
if (cm->ref_frame_sign_bias[i + 1] != cm->ref_frame_sign_bias[1])
return 1;
diff --git a/vp10/encoder/encodeframe.c b/vp10/encoder/encodeframe.c
index e038fe675..f303b01fc 100644
--- a/vp10/encoder/encodeframe.c
+++ b/vp10/encoder/encodeframe.c
@@ -2807,6 +2807,8 @@ void vp10_encode_frame(VP10_COMP *cpi) {
cm->comp_var_ref[0] = LAST_FRAME;
cm->comp_var_ref[1] = GOLDEN_FRAME;
}
+ } else {
+ cpi->allow_comp_inter_inter = 0;
}
if (cpi->sf.frame_parameter_update) {