From: Marco Paniconi Date: Thu, 19 Dec 2013 22:26:46 +0000 (-0800) Subject: Initialize avg_frame_qindex to worst_allowed for 1 pass. X-Git-Tag: v1.4.0~2776^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=5ba4b16c2df952a7e3a88e8dfb213f697f2bf121;p=libvpx Initialize avg_frame_qindex to worst_allowed for 1 pass. Change-Id: I535bde16c8fc4c2cd263bbbbaed46ead4c776090 --- diff --git a/vp9/encoder/vp9_onyx_if.c b/vp9/encoder/vp9_onyx_if.c index 3f813a1f6..1091b7d2d 100644 --- a/vp9/encoder/vp9_onyx_if.c +++ b/vp9/encoder/vp9_onyx_if.c @@ -1094,12 +1094,18 @@ static void init_config(VP9_PTR ptr, VP9_CONFIG *oxcf) { // Initialize active best and worst q and average q values. cpi->rc.active_worst_quality = cpi->oxcf.worst_allowed_q; - cpi->rc.avg_frame_qindex[0] = (cpi->oxcf.worst_allowed_q + - cpi->oxcf.best_allowed_q) / 2; - cpi->rc.avg_frame_qindex[1] = (cpi->oxcf.worst_allowed_q + - cpi->oxcf.best_allowed_q) / 2; - cpi->rc.avg_frame_qindex[2] = (cpi->oxcf.worst_allowed_q + - cpi->oxcf.best_allowed_q) / 2; + if (cpi->pass == 0 && cpi->oxcf.end_usage == USAGE_STREAM_FROM_SERVER) { + cpi->rc.avg_frame_qindex[0] = cpi->oxcf.worst_allowed_q; + cpi->rc.avg_frame_qindex[1] = cpi->oxcf.worst_allowed_q; + cpi->rc.avg_frame_qindex[2] = cpi->oxcf.worst_allowed_q; + } else { + cpi->rc.avg_frame_qindex[0] = (cpi->oxcf.worst_allowed_q + + cpi->oxcf.best_allowed_q) / 2; + cpi->rc.avg_frame_qindex[1] = (cpi->oxcf.worst_allowed_q + + cpi->oxcf.best_allowed_q) / 2; + cpi->rc.avg_frame_qindex[2] = (cpi->oxcf.worst_allowed_q + + cpi->oxcf.best_allowed_q) / 2; + } cpi->rc.last_q[0] = cpi->oxcf.best_allowed_q; cpi->rc.last_q[1] = cpi->oxcf.best_allowed_q; cpi->rc.last_q[2] = cpi->oxcf.best_allowed_q;