ref: b8b471103c5e5638a5c000d5feb9a008f6016abe
parent: a2192701b1ff5f79bc53f75199f2d9e3bc42df12
author: Jingning Han <[email protected]>
date: Tue Sep 11 05:21:45 EDT 2018
Localize variable definitions Localize variable definitions in setup_frames() and two_pass_first_group_inter(). Change-Id: I66e842791d679be6d22cef50e0b395b5aa380eac
--- a/vp9/encoder/vp9_encoder.c
+++ b/vp9/encoder/vp9_encoder.c
@@ -780,7 +780,6 @@
static void setup_frame(VP9_COMP *cpi) {
VP9_COMMON *const cm = &cpi->common;
- GF_GROUP *const gf_group = &cpi->twopass.gf_group;
// Set up entropy context depending on frame type. The decoder mandates
// the use of the default context, index 0, for keyframes and inter
// frames where the error_resilient_mode or intra_only flag is set. For
@@ -795,9 +794,11 @@
// TODO(jingning): Overwrite the frame_context_idx index in multi-layer ARF
// case. Need some further investigation on if we could apply this to single
// layer ARF case as well.
- if (cpi->multi_layer_arf && !cpi->use_svc)
+ if (cpi->multi_layer_arf && !cpi->use_svc) {
+ GF_GROUP *const gf_group = &cpi->twopass.gf_group;
cm->frame_context_idx = clamp(gf_group->layer_depth[gf_group->index] - 1, 0,
FRAME_CONTEXTS - 1);
+ }
if (cm->frame_type == KEY_FRAME) {
cpi->refresh_golden_frame = 1;
@@ -2919,11 +2920,11 @@
// test in two pass for the first
static int two_pass_first_group_inter(VP9_COMP *cpi) {
- TWO_PASS *const twopass = &cpi->twopass;
- GF_GROUP *const gf_group = &twopass->gf_group;
- const int gfg_index = gf_group->index;
-
if (cpi->oxcf.pass == 2) {
+ TWO_PASS *const twopass = &cpi->twopass;
+ GF_GROUP *const gf_group = &twopass->gf_group;
+ const int gfg_index = gf_group->index;
+
if (gfg_index == 0) return gf_group->update_type[gfg_index] == LF_UPDATE;
return gf_group->update_type[gfg_index - 1] != LF_UPDATE &&
gf_group->update_type[gfg_index] == LF_UPDATE;