shithub: libvpx

Download patch

ref: 1f4c8dcf14533ff5c16281fdd38c8890b77814de
parent: 8b9b38bd5ebb9844707be8e5874dfa7532331d3b
author: Jingning Han <jingning@google.com>
date: Wed Aug 22 06:31:18 EDT 2018

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

--- a/vp9/encoder/vp9_encoder.c
+++ b/vp9/encoder/vp9_encoder.c
@@ -4972,7 +4972,10 @@
   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 @@
     ++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