summaryrefslogtreecommitdiff
path: root/vp9/encoder/vp9_encoder.c
diff options
context:
space:
mode:
authorJingning Han <jingning@google.com>2018-08-22 10:31:18 -0700
committerJingning Han <jingning@google.com>2018-08-22 22:11:10 +0000
commit1f4c8dcf14533ff5c16281fdd38c8890b77814de (patch)
tree08b4611cf46e88396a6da5a94b2dc2556652acae /vp9/encoder/vp9_encoder.c
parent8b9b38bd5ebb9844707be8e5874dfa7532331d3b (diff)
downloadlibvpx-1f4c8dcf14533ff5c16281fdd38c8890b77814de.tar
libvpx-1f4c8dcf14533ff5c16281fdd38c8890b77814de.tar.gz
libvpx-1f4c8dcf14533ff5c16281fdd38c8890b77814de.tar.bz2
libvpx-1f4c8dcf14533ff5c16281fdd38c8890b77814de.zip
Sync prev_frame/last_show_frame update with decoder
Make the encoder side handling of prev_frame and last_show_frame update synchronized with the decoder behavior. Change-Id: I0f265391cba182d7cc266a1c327fe6b92e24ab17
Diffstat (limited to 'vp9/encoder/vp9_encoder.c')
-rw-r--r--vp9/encoder/vp9_encoder.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/vp9/encoder/vp9_encoder.c b/vp9/encoder/vp9_encoder.c
index a057ecfbb..44683f04b 100644
--- a/vp9/encoder/vp9_encoder.c
+++ b/vp9/encoder/vp9_encoder.c
@@ -4972,7 +4972,10 @@ static void encode_frame_to_data_rate(VP9_COMP *cpi, size_t *size,
cm->last_height = cm->height;
// reset to normal state now that we are done.
- if (!cm->show_existing_frame) cm->last_show_frame = cm->show_frame;
+ if (!cm->show_existing_frame) {
+ cm->last_show_frame = cm->show_frame;
+ cm->prev_frame = cm->cur_frame;
+ }
if (cm->show_frame) {
vp9_swap_mi_and_prev_mi(cm);
@@ -4981,7 +4984,6 @@ static void encode_frame_to_data_rate(VP9_COMP *cpi, size_t *size,
++cm->current_video_frame;
if (cpi->use_svc) vp9_inc_frame_in_layer(cpi);
}
- cm->prev_frame = cm->cur_frame;
if (cpi->use_svc) {
cpi->svc