summaryrefslogtreecommitdiff
path: root/vp9/encoder
diff options
context:
space:
mode:
authorYaowu Xu <yaowu@google.com>2012-12-13 23:53:11 -0800
committerYaowu Xu <yaowu@google.com>2012-12-14 06:35:32 -0800
commit6247b239bca25cadb5fb16b1bc6f4c77e764c4ff (patch)
tree2d339c7fb9bc27d7c4757306829348f3bd7662f5 /vp9/encoder
parentf8ff3e5d4783b6e30950927d6490986313a55d5f (diff)
downloadlibvpx-6247b239bca25cadb5fb16b1bc6f4c77e764c4ff.tar
libvpx-6247b239bca25cadb5fb16b1bc6f4c77e764c4ff.tar.gz
libvpx-6247b239bca25cadb5fb16b1bc6f4c77e764c4ff.tar.bz2
libvpx-6247b239bca25cadb5fb16b1bc6f4c77e764c4ff.zip
reset segement map on key frame
This is to fix a decoder crash when decoder skips a number of frame to continue decoding from a later key frame. Change-Id: I3ba116eba6c3440e0528a21f53745f694302e4ad
Diffstat (limited to 'vp9/encoder')
-rw-r--r--vp9/encoder/vp9_ratectrl.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/vp9/encoder/vp9_ratectrl.c b/vp9/encoder/vp9_ratectrl.c
index b589243e8..5b5f38b78 100644
--- a/vp9/encoder/vp9_ratectrl.c
+++ b/vp9/encoder/vp9_ratectrl.c
@@ -249,6 +249,9 @@ void vp9_setup_key_frame(VP9_COMP *cpi) {
vp9_init_mbmode_probs(& cpi->common);
vp9_default_bmode_probs(cm->fc.bmode_prob);
+ if(cm->last_frame_seg_map)
+ vpx_memset(cm->last_frame_seg_map, 0, (cm->mb_rows * cm->mb_cols));
+
vp9_init_mv_probs(& cpi->common);
// cpi->common.filter_level = 0; // Reset every key frame.