aacpsy: psy_3gpp_analyze_channel() handle energy == 0
authorMichael Niedermayer <michaelni@gmx.at>
Fri, 14 Sep 2012 01:27:25 +0000 (03:27 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Fri, 14 Sep 2012 01:27:25 +0000 (03:27 +0200)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavcodec/aacpsy.c

index 93370b8..fa562b3 100644 (file)
@@ -588,7 +588,7 @@ static void psy_3gpp_analyze_channel(FFPsyContext *ctx, int channel,
                 form_factor  += sqrtf(fabs(coefs[start+i]));
             }
             band->thr      = band->energy * 0.001258925f;
-            band->nz_lines = form_factor / powf(band->energy / band_sizes[g], 0.25f);
+            band->nz_lines = band->energy>0 ? form_factor / powf(band->energy / band_sizes[g], 0.25f) : 0;
 
             start += band_sizes[g];
         }