Force show_frame=1 when show_existing_frame=1 When showing a previously decoded frame, we need to explicitly set the show_frame flag. For the current frame being decoded this flag is explicitly set in the frame header. This should fix WebM Issue 696: http://code.google.com/p/webm/issues/detail?id=696 Change-Id: I5751a809813f88d2ca6f62c47c3878475ff9ba8d
diff --git a/vp9/decoder/vp9_decodeframe.c b/vp9/decoder/vp9_decodeframe.c index 59faccd..7b856d7 100644 --- a/vp9/decoder/vp9_decodeframe.c +++ b/vp9/decoder/vp9_decodeframe.c
@@ -1129,11 +1129,12 @@ cm->show_existing_frame = vp9_rb_read_bit(rb); if (cm->show_existing_frame) { - // show an existing frame directly + // Show an existing frame directly. int frame_to_show = cm->ref_frame_map[vp9_rb_read_literal(rb, 3)]; ref_cnt_fb(cm->fb_idx_ref_cnt, &cm->new_fb_idx, frame_to_show); pbi->refresh_frame_flags = 0; cm->lf.filter_level = 0; + cm->show_frame = 1; return 0; }