From 1ff7438463ef79a5850cbfd3e37b70a7b3a13256 Mon Sep 17 00:00:00 2001 From: Marco Paniconi Date: Wed, 6 Jun 2018 22:42:38 -0700 Subject: [PATCH] vp9-svc: Modify choose_partitioning for second temporal ref For mode where second temporal reference is used in SVC: allow for using/testing this reference (golden ref) in the variance partition scheme (choose_partitioning). Small positive gain (~0.25%) on metrics for 3 layer SVC, negligible change in speed. Change-Id: I29b8315da530e60db3d6c90faa8fb178d9f2de26 --- vp9/encoder/vp9_encodeframe.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/vp9/encoder/vp9_encodeframe.c b/vp9/encoder/vp9_encodeframe.c index 29588f19a..cfc087637 100644 --- a/vp9/encoder/vp9_encodeframe.c +++ b/vp9/encoder/vp9_encodeframe.c @@ -1317,7 +1317,8 @@ static int choose_partitioning(VP9_COMP *cpi, const TileInfo *const tile, assert(yv12 != NULL); - if (!(is_one_pass_cbr_svc(cpi) && cpi->svc.spatial_layer_id)) { + if (!(is_one_pass_cbr_svc(cpi) && cpi->svc.spatial_layer_id) || + cpi->svc.use_longterm_ref_current_layer) { // For now, GOLDEN will not be used for non-zero spatial layers, since // it may not be a temporal reference. yv12_g = get_ref_frame_buffer(cpi, GOLDEN_FRAME); -- 2.40.0