diff options
author | Scott LaVarnway <slavarnway@google.com> | 2013-01-25 17:06:32 -0800 |
---|---|---|
committer | Scott LaVarnway <slavarnway@google.com> | 2013-01-25 17:06:32 -0800 |
commit | 0c2919c3d57c92db996531b17255c6c444375600 (patch) | |
tree | 6ff07f404c1af9dc5a9bff8c2cd83c249960282c /vp8/decoder/onyxd_if.c | |
parent | de5546c37297383aae7648e84fd38009a333b9cf (diff) | |
download | libvpx-0c2919c3d57c92db996531b17255c6c444375600.tar libvpx-0c2919c3d57c92db996531b17255c6c444375600.tar.gz libvpx-0c2919c3d57c92db996531b17255c6c444375600.tar.bz2 libvpx-0c2919c3d57c92db996531b17255c6c444375600.zip |
Bug fix: error-concealment enabled changed postproc output
When error concealment is enabled, it swaps the mi and prev_mi ptrs after
each frame is decoded. The postproc uses the mi ptr for the mode info context.
Now the postproc will use the correct mode info context.
Change-Id: I537ae5450f319c624999b44525bb52bb30047b7b
Diffstat (limited to 'vp8/decoder/onyxd_if.c')
-rw-r--r-- | vp8/decoder/onyxd_if.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/vp8/decoder/onyxd_if.c b/vp8/decoder/onyxd_if.c index 24fc8783a..e9654839c 100644 --- a/vp8/decoder/onyxd_if.c +++ b/vp8/decoder/onyxd_if.c @@ -419,7 +419,13 @@ int vp8dx_receive_compressed_data(VP8D_COMP *pbi, size_t size, vp8_clear_system_state(); -#if CONFIG_ERROR_CONCEALMENT + if (cm->show_frame) + { + cm->current_video_frame++; + cm->show_frame_mi = cm->mi; + } + + #if CONFIG_ERROR_CONCEALMENT /* swap the mode infos to storage for future error concealment */ if (pbi->ec_enabled && pbi->common.prev_mi) { @@ -441,9 +447,6 @@ int vp8dx_receive_compressed_data(VP8D_COMP *pbi, size_t size, } #endif - if (cm->show_frame) - cm->current_video_frame++; - pbi->ready_for_new_data = 0; pbi->last_time_stamp = time_stamp; |