From 1ec8fc9da72931ea30881e81cb969ecd1c9b38eb Mon Sep 17 00:00:00 2001 From: Jingning Han Date: Tue, 21 Aug 2018 10:16:57 -0700 Subject: [PATCH] Point show frame buffer towards existing frame buffer When the show_existing_frame mode is on, directly point the new frame pointer towards the existing reference frame buffer entry. Change-Id: Ic50b25655fe95ea702fb529afacb7701ec17adcb --- vp9/encoder/vp9_encoder.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/vp9/encoder/vp9_encoder.c b/vp9/encoder/vp9_encoder.c index 4862ffdbc..c1a33ec4e 100644 --- a/vp9/encoder/vp9_encoder.c +++ b/vp9/encoder/vp9_encoder.c @@ -4829,6 +4829,13 @@ static void encode_frame_to_data_rate(VP9_COMP *cpi, size_t *size, encode_with_recode_loop(cpi, size, dest); } + // TODO(jingning): When using show existing frame mode, we assume that the + // current ARF will be directly used as the final reconstructed frame. This is + // an encoder control scheme. One could in principle explore other + // possibilities to arrange the reference frame buffer and their coding order. + if (cm->show_existing_frame) + cm->new_fb_idx = cm->ref_frame_map[cpi->alt_fb_idx]; + cpi->last_frame_dropped = 0; cpi->svc.last_layer_dropped[cpi->svc.spatial_layer_id] = 0; // Keep track of the frame buffer index updated/refreshed for the -- 2.40.0