safety check to avoid divide by 0s
This commit is contained in:
Родитель
0f5c63e4f6
Коммит
39f41a4f36
|
@ -1420,6 +1420,9 @@ int vp8_reverse_trans(int x)
|
|||
};
|
||||
void vp8_new_frame_rate(VP8_COMP *cpi, double framerate)
|
||||
{
|
||||
if(framerate < .1)
|
||||
framerate = 30;
|
||||
|
||||
cpi->oxcf.frame_rate = framerate;
|
||||
cpi->output_frame_rate = cpi->oxcf.frame_rate;
|
||||
cpi->per_frame_bandwidth = (int)(cpi->oxcf.target_bandwidth / cpi->output_frame_rate);
|
||||
|
|
|
@ -1481,6 +1481,8 @@ void vp8_adjust_key_frame_context(VP8_COMP *cpi)
|
|||
// allocated than those following other gfs.
|
||||
cpi->kf_overspend_bits += (cpi->projected_frame_size - cpi->per_frame_bandwidth) * 7 / 8;
|
||||
cpi->gf_overspend_bits += (cpi->projected_frame_size - cpi->per_frame_bandwidth) * 1 / 8;
|
||||
if(!av_key_frame_frequency)
|
||||
av_key_frame_frequency = 60;
|
||||
|
||||
// Work out how much to try and recover per frame.
|
||||
// For one pass we estimate the number of frames to spread it over based upon past history.
|
||||
|
|
Загрузка…
Ссылка в новой задаче