ref: e9cacfd66df8f29055fb812681310bd27265eee0
parent: ddf94f618443536d727ac967f45619370d006e8d
parent: 301409107feb8df66f3b6634af6abc92ff40be2f
author: Jim Bankoski <jimbankoski@google.com>
date: Tue Mar 13 06:13:03 EDT 2012
Merge "Update for key frame target size setting."
--- a/vp8/encoder/ratectrl.c
+++ b/vp8/encoder/ratectrl.c
@@ -392,13 +392,14 @@
int Q = (cpi->common.frame_flags & FRAMEFLAGS_KEY)
? cpi->avg_frame_qindex : cpi->ni_av_qi;
+ int initial_boost = 24; // Corresponds to: |2.5 * per_frame_bandwidth|
// Boost depends somewhat on frame rate: only used for 1 layer case.
if (cpi->oxcf.number_of_layers == 1) {
- kf_boost = (int)(2 * cpi->output_frame_rate - 16);
+ kf_boost = MAX(initial_boost, (int)(2 * cpi->output_frame_rate - 16));
}
else {
// Initial factor: set target size to: |2.5 * per_frame_bandwidth|.
- kf_boost = 24;
+ kf_boost = initial_boost;
}
// adjustment up based on q: this factor ranges from ~1.2 to 2.2.
--
⑨