From da04312f79ef4fb858c2bbc8c0665546bd89ac1b Mon Sep 17 00:00:00 2001 From: Paul Wilkins Date: Wed, 24 Apr 2013 16:05:02 +0100 Subject: [PATCH] Minor tweak to implicit segmentation experiment. This minor tweak makes segment 0 neutral and used by key frames and also extends beyond 4 segments. Change-Id: Ife4744602aba66ac9432746db3113cc5cd88a482 --- vp9/common/vp9_seg_common.c | 2 +- vp9/encoder/vp9_onyx_if.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/vp9/common/vp9_seg_common.c b/vp9/common/vp9_seg_common.c index 4c913e2..9ed3e2d 100644 --- a/vp9/common/vp9_seg_common.c +++ b/vp9/common/vp9_seg_common.c @@ -99,7 +99,7 @@ void vp9_implicit_segment_map_update(VP9_COMMON * cm) { mi = mi_ptr; // Experimental use of tx size to define implicit segmentation for (col = 0; col < cm->mb_cols; ++col, ++mi) { - map_ptr[col] = mi->mbmi.txfm_size; + map_ptr[col] = 1 + mi->mbmi.txfm_size; } mi_ptr += cm->mode_info_stride; map_ptr += cm->mb_cols; diff --git a/vp9/encoder/vp9_onyx_if.c b/vp9/encoder/vp9_onyx_if.c index c2c587e..053a21b 100644 --- a/vp9/encoder/vp9_onyx_if.c +++ b/vp9/encoder/vp9_onyx_if.c @@ -534,8 +534,8 @@ static void configure_implicit_segmentation(VP9_COMP *cpi) { xd->update_mb_segmentation_data = 1; - // Enable use of q deltas on segments - for (i = 0; i < MAX_MB_SEGMENTS; ++i) { + // Enable use of q deltas on segments 1 and up + for (i = 1; i < MAX_MB_SEGMENTS; ++i) { qi_delta = compute_qdelta(cpi, cpi->active_worst_quality, q_target); vp9_set_segdata(xd, i, SEG_LVL_ALT_Q, qi_delta); q_target *= 0.95; -- 2.7.4