summaryrefslogtreecommitdiff
path: root/vp9/encoder
diff options
context:
space:
mode:
authorMarco Paniconi <marpan@google.com>2018-06-30 02:02:35 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2018-06-30 02:02:35 +0000
commit26792d95b3948894cd9be41df7570a3bc4241c2d (patch)
treeaa98c369215ca2748ecacfe8833f20062eff3c22 /vp9/encoder
parent914d5abb5cb1f5944247ad06e042f96966ac5ffc (diff)
parentd9d93140c437f0e5a2b4c6396831f4f465c8195e (diff)
downloadlibvpx-26792d95b3948894cd9be41df7570a3bc4241c2d.tar
libvpx-26792d95b3948894cd9be41df7570a3bc4241c2d.tar.gz
libvpx-26792d95b3948894cd9be41df7570a3bc4241c2d.tar.bz2
libvpx-26792d95b3948894cd9be41df7570a3bc4241c2d.zip
Merge "vp9: Reset params for cyclic refresh on slide change"
Diffstat (limited to 'vp9/encoder')
-rw-r--r--vp9/encoder/vp9_aq_cyclicrefresh.c3
-rw-r--r--vp9/encoder/vp9_encoder.c4
2 files changed, 6 insertions, 1 deletions
diff --git a/vp9/encoder/vp9_aq_cyclicrefresh.c b/vp9/encoder/vp9_aq_cyclicrefresh.c
index e11c94932..d89295bdf 100644
--- a/vp9/encoder/vp9_aq_cyclicrefresh.c
+++ b/vp9/encoder/vp9_aq_cyclicrefresh.c
@@ -593,7 +593,8 @@ void vp9_cyclic_refresh_reset_resize(VP9_COMP *const cpi) {
const VP9_COMMON *const cm = &cpi->common;
CYCLIC_REFRESH *const cr = cpi->cyclic_refresh;
memset(cr->map, 0, cm->mi_rows * cm->mi_cols);
- memset(cr->last_coded_q_map, MAXQ, cm->mi_rows * cm->mi_cols);
+ memset(cr->last_coded_q_map, MAXQ,
+ cm->mi_rows * cm->mi_cols * sizeof(*cr->last_coded_q_map));
cr->sb_index = 0;
cpi->refresh_golden_frame = 1;
cpi->refresh_alt_ref_frame = 1;
diff --git a/vp9/encoder/vp9_encoder.c b/vp9/encoder/vp9_encoder.c
index dc2a5a56c..976199759 100644
--- a/vp9/encoder/vp9_encoder.c
+++ b/vp9/encoder/vp9_encoder.c
@@ -3880,8 +3880,12 @@ static int encode_without_recode_loop(VP9_COMP *cpi, size_t *size,
suppress_active_map(cpi);
// Turn-off cyclic refresh for re-encoded frame.
if (cpi->oxcf.aq_mode == CYCLIC_REFRESH_AQ) {
+ CYCLIC_REFRESH *const cr = cpi->cyclic_refresh;
unsigned char *const seg_map = cpi->segmentation_map;
memset(seg_map, 0, cm->mi_rows * cm->mi_cols);
+ memset(cr->last_coded_q_map, MAXQ,
+ cm->mi_rows * cm->mi_cols * sizeof(*cr->last_coded_q_map));
+ cr->sb_index = 0;
vp9_disable_segmentation(&cm->seg);
}
apply_active_map(cpi);