summaryrefslogtreecommitdiff
path: root/vp9/decoder
diff options
context:
space:
mode:
authorJingning Han <jingning@google.com>2018-08-27 15:22:24 -0700
committerJingning Han <jingning@google.com>2018-08-27 16:40:45 -0700
commit0d203054b3f51eb42a36895dc70c0b2ce599df90 (patch)
tree525de19e209cc41692c686c2212ef14e1c587af6 /vp9/decoder
parentb2f9b627e3ed2db23b6f856f4307e97879f68575 (diff)
downloadlibvpx-0d203054b3f51eb42a36895dc70c0b2ce599df90.tar
libvpx-0d203054b3f51eb42a36895dc70c0b2ce599df90.tar.gz
libvpx-0d203054b3f51eb42a36895dc70c0b2ce599df90.tar.bz2
libvpx-0d203054b3f51eb42a36895dc70c0b2ce599df90.zip
Rework enc/dec mismatch detection
The previous enc/dec mismatch detection assumes the previously reconstructed frame would always stay at frame buffer pool index at 0. It could hence cause certain delay in enc/dec mismatch detection when the immediate reconstruction frame is not yet propagated to index 0 in the buffer map pool. This change always keeps the latest decoded show frame buffer index and directly gets the reconstructed frame from encoder and decoder buffer pools to check for mismatch. Change-Id: If53092cbc42ab78d55af5b83f12a489fc362f3ae
Diffstat (limited to 'vp9/decoder')
-rw-r--r--vp9/decoder/vp9_decoder.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/vp9/decoder/vp9_decoder.c b/vp9/decoder/vp9_decoder.c
index d6eacaf44..b4d05f663 100644
--- a/vp9/decoder/vp9_decoder.c
+++ b/vp9/decoder/vp9_decoder.c
@@ -365,6 +365,8 @@ int vp9_receive_compressed_data(VP9Decoder *pbi, size_t size,
if (cm->seg.enabled) vp9_swap_current_and_last_seg_map(cm);
}
+ if (cm->show_frame) cm->cur_show_frame_fb_idx = cm->new_fb_idx;
+
// Update progress in frame parallel decode.
cm->last_width = cm->width;
cm->last_height = cm->height;