summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAngie Chiang <angiebird@google.com>2020-12-17 18:09:55 -0800
committerAngie Chiang <angiebird@google.com>2020-12-17 18:09:55 -0800
commit3a38edea2cd114d53914cab017cab2e43a600031 (patch)
treef4db0d3792adc3f2e8ef42a94178ab6b60f6448b
parent67b1d7f1740158e795a26a722491424e6257c0dc (diff)
downloadlibvpx-3a38edea2cd114d53914cab017cab2e43a600031.tar.gz
libvpx-3a38edea2cd114d53914cab017cab2e43a600031.tar.bz2
libvpx-3a38edea2cd114d53914cab017cab2e43a600031.zip
Fix show_index in vp9_extrc_encodeframe_decision()
Change-Id: I93bb1fb3c14126d881d3f691d30875a0062e436c
-rw-r--r--test/vp9_ext_ratectrl_test.cc3
-rw-r--r--vp9/encoder/vp9_encoder.c4
2 files changed, 6 insertions, 1 deletions
diff --git a/test/vp9_ext_ratectrl_test.cc b/test/vp9_ext_ratectrl_test.cc
index 812a18ed2..4b3693a34 100644
--- a/test/vp9_ext_ratectrl_test.cc
+++ b/test/vp9_ext_ratectrl_test.cc
@@ -73,6 +73,7 @@ vpx_rc_status_t rc_get_encodeframe_decision(
EXPECT_EQ(encode_frame_info->coding_index, toy_rate_ctrl->coding_index);
if (encode_frame_info->coding_index == 0) {
+ EXPECT_EQ(encode_frame_info->show_index, 0);
EXPECT_EQ(encode_frame_info->gop_index, 0);
EXPECT_EQ(encode_frame_info->frame_type, 0 /*kFrameTypeKey*/);
EXPECT_EQ(encode_frame_info->ref_frame_valid_list[0],
@@ -84,6 +85,7 @@ vpx_rc_status_t rc_get_encodeframe_decision(
}
if (encode_frame_info->coding_index == 1) {
+ EXPECT_EQ(encode_frame_info->show_index, 4);
EXPECT_EQ(encode_frame_info->gop_index, 1);
EXPECT_EQ(encode_frame_info->frame_type, 2 /*kFrameTypeAltRef*/);
EXPECT_EQ(encode_frame_info->ref_frame_valid_list[0],
@@ -104,6 +106,7 @@ vpx_rc_status_t rc_get_encodeframe_decision(
}
if (encode_frame_info->coding_index == 5) {
+ EXPECT_EQ(encode_frame_info->show_index, 4);
EXPECT_EQ(encode_frame_info->gop_index, 0);
EXPECT_EQ(encode_frame_info->frame_type, 3 /*kFrameTypeOverlay*/);
EXPECT_EQ(encode_frame_info->ref_frame_valid_list[0],
diff --git a/vp9/encoder/vp9_encoder.c b/vp9/encoder/vp9_encoder.c
index 37f644501..6968e5791 100644
--- a/vp9/encoder/vp9_encoder.c
+++ b/vp9/encoder/vp9_encoder.c
@@ -4508,9 +4508,11 @@ static void encode_with_recode_loop(VP9_COMP *cpi, size_t *size, uint8_t *dest
FRAME_UPDATE_TYPE update_type = gf_group->update_type[gf_group->index];
const int ref_frame_flags = get_ref_frame_flags(cpi);
RefCntBuffer *ref_frame_bufs[MAX_INTER_REF_FRAMES];
+ const RefCntBuffer *curr_frame_buf =
+ get_ref_cnt_buffer(cm, cm->new_fb_idx);
get_ref_frame_bufs(cpi, ref_frame_bufs);
vp9_extrc_get_encodeframe_decision(
- &cpi->ext_ratectrl, cm->current_video_frame,
+ &cpi->ext_ratectrl, curr_frame_buf->frame_index,
cm->current_frame_coding_index, gf_group->index, update_type,
ref_frame_bufs, ref_frame_flags, &encode_frame_decision);
q = encode_frame_decision.q_index;