Update for key frame target size setting.

Set an iniital/minimun boost level for the frame rate
factor of key frame target size setting.

Change-Id: If2586f4ac76a1fa89378aa652a58607356a1f426
This commit is contained in:
Marco Paniconi 2012-03-12 16:23:08 -07:00
Родитель 507ee87e3e
Коммит 301409107f
1 изменённых файлов: 3 добавлений и 2 удалений

Просмотреть файл

@ -392,13 +392,14 @@ static void calc_iframe_target_size(VP8_COMP *cpi)
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.