Possible divide by 0 error.
Put traps to prevent two possible divide by 0 errors. Change-Id: Ia415b945244253dcdd12f54f1f157f9ca8c94d6b
This commit is contained in:
Родитель
cf561bad1d
Коммит
bd5f384bef
|
@ -478,15 +478,19 @@ void separate_arf_mbs
|
|||
if ( 1 )
|
||||
{
|
||||
// Note % of blocks that are marked as static
|
||||
cpi->static_mb_pct =
|
||||
(ncnt[1] * 100) / cm->MBs;
|
||||
if ( cm->MBs )
|
||||
cpi->static_mb_pct = (ncnt[1] * 100) / cm->MBs;
|
||||
|
||||
// This error case should not be reachable as this function should
|
||||
// never be called with the common data structure unititialized.
|
||||
else
|
||||
cpi->static_mb_pct = 0;
|
||||
|
||||
vp8_enable_segmentation((VP8_PTR) cpi);
|
||||
}
|
||||
else
|
||||
{
|
||||
cpi->static_mb_pct = 0;
|
||||
|
||||
vp8_disable_segmentation((VP8_PTR) cpi);
|
||||
}
|
||||
|
||||
|
|
|
@ -4554,6 +4554,9 @@ static void encode_frame_to_data_rate
|
|||
int high_err_target = cpi->ambient_err;
|
||||
int low_err_target = ((cpi->ambient_err * 3) >> 2);
|
||||
|
||||
// Prevent possible divide by zero error below for perfect KF
|
||||
kf_err += (!kf_err);
|
||||
|
||||
// The key frame is not good enough
|
||||
if ( (kf_err > high_err_target) &&
|
||||
(cpi->projected_frame_size <= frame_over_shoot_limit) )
|
||||
|
|
Загрузка…
Ссылка в новой задаче