diff options
author | Jingning Han <jingning@google.com> | 2018-08-27 15:22:24 -0700 |
---|---|---|
committer | Jingning Han <jingning@google.com> | 2018-08-27 16:40:45 -0700 |
commit | 0d203054b3f51eb42a36895dc70c0b2ce599df90 (patch) | |
tree | 525de19e209cc41692c686c2212ef14e1c587af6 /vp9/decoder | |
parent | b2f9b627e3ed2db23b6f856f4307e97879f68575 (diff) | |
download | libvpx-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.c | 2 |
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; |