mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-11-26 19:01:44 +02:00
wmavoice: protect against zero-energy in adaptive gain control.
Otherwise the scale factor becomes NaN, resulting in corrupt output. Fixes #5426.
This commit is contained in:
parent
7b27dd5c16
commit
33d7f822f8
@ -512,7 +512,8 @@ static void adaptive_gain_control(float *out, const float *in,
|
||||
speech_energy += fabsf(speech_synth[i]);
|
||||
postfilter_energy += fabsf(in[i]);
|
||||
}
|
||||
gain_scale_factor = (1.0 - alpha) * speech_energy / postfilter_energy;
|
||||
gain_scale_factor = postfilter_energy == 0.0 ? 0.0 :
|
||||
(1.0 - alpha) * speech_energy / postfilter_energy;
|
||||
|
||||
for (i = 0; i < size; i++) {
|
||||
mem = alpha * mem + gain_scale_factor;
|
||||
|
Loading…
Reference in New Issue
Block a user