Merge "Fixed handling of regularly placed keyframes"
This commit is contained in:
Коммит
025969d910
|
@ -1935,7 +1935,8 @@ static void find_next_key_frame(VP9_COMP *cpi, FIRSTPASS_STATS *this_frame) {
|
|||
|
||||
// Find the next keyframe.
|
||||
i = 0;
|
||||
while (twopass->stats_in < twopass->stats_in_end) {
|
||||
while (twopass->stats_in < twopass->stats_in_end &&
|
||||
rc->frames_to_key < cpi->key_frame_frequency) {
|
||||
// Accumulate kf group error.
|
||||
kf_group_err += calculate_modified_err(cpi, this_frame);
|
||||
|
||||
|
@ -2003,7 +2004,8 @@ static void find_next_key_frame(VP9_COMP *cpi, FIRSTPASS_STATS *this_frame) {
|
|||
input_stats(twopass, &tmp_frame);
|
||||
}
|
||||
rc->next_key_frame_forced = 1;
|
||||
} else if (twopass->stats_in == twopass->stats_in_end) {
|
||||
} else if (twopass->stats_in == twopass->stats_in_end ||
|
||||
rc->frames_to_key >= cpi->key_frame_frequency) {
|
||||
rc->next_key_frame_forced = 1;
|
||||
} else {
|
||||
rc->next_key_frame_forced = 0;
|
||||
|
|
|
@ -185,7 +185,7 @@ static vpx_codec_err_t validate_config(vpx_codec_alg_priv_t *ctx,
|
|||
ERROR("ts_rate_decimator factors are not powers of 2");
|
||||
}
|
||||
|
||||
// VP8 does not support a lower bound on the keyframe interval in
|
||||
// VP9 does not support a lower bound on the keyframe interval in
|
||||
// automatic keyframe placement mode.
|
||||
if (cfg->kf_mode != VPX_KF_DISABLED &&
|
||||
cfg->kf_min_dist != cfg->kf_max_dist &&
|
||||
|
|
Загрузка…
Ссылка в новой задаче