From 9977332615deef53454f3c95c8d9200f8e775f39 Mon Sep 17 00:00:00 2001 From: Marco Paniconi Date: Wed, 13 Nov 2013 16:02:54 -0800 Subject: For CBR, keep rate-correction damping factor to 2. The switch to the rate-correction damping factor in https://gerrit.chromium.org/gerrit/#/c/67536/ was not conditioned on CBR mode. Change-Id: I2326704e8ac030a4f7b592dd3fedb94c7dd0644d --- test/datarate_test.cc | 4 ++-- vp9/encoder/vp9_onyx_if.c | 4 +++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/test/datarate_test.cc b/test/datarate_test.cc index 85f4bb668..5785a0aac 100644 --- a/test/datarate_test.cc +++ b/test/datarate_test.cc @@ -248,9 +248,9 @@ TEST_P(DatarateTestVP9, BasicRateTargeting) { cfg_.rc_target_bitrate = i; ResetModel(); ASSERT_NO_FATAL_FAILURE(RunLoop(&video)); - ASSERT_GE(cfg_.rc_target_bitrate, effective_datarate_ * 0.8) + ASSERT_GE(cfg_.rc_target_bitrate, effective_datarate_ * 0.9) << " The datarate for the file exceeds the target by too much!"; - ASSERT_LE(cfg_.rc_target_bitrate, effective_datarate_ * 1.3) + ASSERT_LE(cfg_.rc_target_bitrate, effective_datarate_ * 1.1) << " The datarate for the file missed the target!"; } } diff --git a/vp9/encoder/vp9_onyx_if.c b/vp9/encoder/vp9_onyx_if.c index 8a9834310..926e91f71 100644 --- a/vp9/encoder/vp9_onyx_if.c +++ b/vp9/encoder/vp9_onyx_if.c @@ -3443,7 +3443,9 @@ static void encode_frame_to_data_rate(VP9_COMP *cpi, // Post encode loop adjustment of Q prediction. if (!active_worst_qchanged) - vp9_update_rate_correction_factors(cpi, (cpi->sf.recode_loop) ? 2 : 0); + vp9_update_rate_correction_factors(cpi, (cpi->sf.recode_loop || + cpi->oxcf.end_usage == USAGE_STREAM_FROM_SERVER) ? 2 : 0); + cpi->last_q[cm->frame_type] = cm->base_qindex; -- cgit v1.2.3