From: Jim Bankoski Date: Mon, 24 Sep 2012 14:53:26 +0000 (-0700) Subject: disable segmentation on enhancement layers X-Git-Tag: v1.2.0~71^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=22141d9d7999be8acef90e3aa3aef2db5efd8711;p=libvpx disable segmentation on enhancement layers This should avoid problems with blocks gettings high quality improvement despite having recently moved: Change-Id: Ic0af0de2d6577807fa3c553f47b55d547ef36359 --- diff --git a/vp8/encoder/onyx_if.c b/vp8/encoder/onyx_if.c index 488558791..9171d0752 100644 --- a/vp8/encoder/onyx_if.c +++ b/vp8/encoder/onyx_if.c @@ -3777,8 +3777,13 @@ static void encode_frame_to_data_rate /* Setup background Q adjustment for error resilient mode. * For multi-layer encodes only enable this for the base layer. */ - if (cpi->cyclic_refresh_mode_enabled && (cpi->current_layer==0)) + if (cpi->cyclic_refresh_mode_enabled) + { + if (cpi->current_layer==0) cyclic_background_refresh(cpi, Q, 0); + else + disable_segmentation(cpi); + } vp8_compute_frame_size_bounds(cpi, &frame_under_shoot_limit, &frame_over_shoot_limit); @@ -3933,8 +3938,13 @@ static void encode_frame_to_data_rate * and background refresh. */ Q = vp8_regulate_q(cpi, cpi->this_frame_target); - if (cpi->cyclic_refresh_mode_enabled && (cpi->current_layer==0)) - cyclic_background_refresh(cpi, Q, 0); + if (cpi->cyclic_refresh_mode_enabled) + { + if (cpi->current_layer==0) + cyclic_background_refresh(cpi, Q, 0); + else + disable_segmentation(cpi); + } vp8_set_quantizer(cpi, Q); }