summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJingning Han <jingning@google.com>2018-11-15 05:01:04 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2018-11-15 05:01:04 +0000
commitea57f9acdad73e9ba4c329d27993c74392f7a205 (patch)
tree8d5bbad71012ab7d6d1d47e39592c286dd3c603e
parentbca3baae7f7aa7ee6530dc0ad66dbfd4bee7c3e9 (diff)
parent66a6cfa5eb36dbc2e48bb154d28b1c229c7468a3 (diff)
downloadlibvpx-ea57f9acdad73e9ba4c329d27993c74392f7a205.tar
libvpx-ea57f9acdad73e9ba4c329d27993c74392f7a205.tar.gz
libvpx-ea57f9acdad73e9ba4c329d27993c74392f7a205.tar.bz2
libvpx-ea57f9acdad73e9ba4c329d27993c74392f7a205.zip
Merge "Disable tpl model in GF-only GOP structure"
-rw-r--r--vp9/encoder/vp9_encoder.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/vp9/encoder/vp9_encoder.c b/vp9/encoder/vp9_encoder.c
index e269955c1..35f5aa324 100644
--- a/vp9/encoder/vp9_encoder.c
+++ b/vp9/encoder/vp9_encoder.c
@@ -6442,6 +6442,7 @@ int vp9_get_compressed_data(VP9_COMP *cpi, unsigned int *frame_flags,
struct lookahead_entry *last_source = NULL;
struct lookahead_entry *source = NULL;
int arf_src_index;
+ const int gf_group_index = cpi->twopass.gf_group.index;
int i;
if (is_one_pass_cbr_svc(cpi)) {
@@ -6489,7 +6490,7 @@ int vp9_get_compressed_data(VP9_COMP *cpi, unsigned int *frame_flags,
}
// Clear arf index stack before group of pictures processing starts.
- if (cpi->twopass.gf_group.index == 1) {
+ if (gf_group_index == 1) {
stack_init(cpi->twopass.gf_group.arf_index_stack, MAX_LAG_BUFFERS * 2);
cpi->twopass.gf_group.stack_size = 0;
}
@@ -6640,7 +6641,9 @@ int vp9_get_compressed_data(VP9_COMP *cpi, unsigned int *frame_flags,
for (i = 0; i < REFS_PER_FRAME; ++i) cpi->scaled_ref_idx[i] = INVALID_IDX;
}
- if (cpi->twopass.gf_group.index == 1 && cpi->sf.enable_tpl_model) {
+ if (gf_group_index == 1 &&
+ cpi->twopass.gf_group.update_type[gf_group_index] == ARF_UPDATE &&
+ cpi->sf.enable_tpl_model) {
vp9_estimate_qp_gop(cpi);
setup_tpl_stats(cpi);
}