[FFmpeg-devel] [PATCH] aacsbr_fixed: prevent sbr gain from being zero
Andreas Cadhalpun
andreas.cadhalpun at googlemail.com
Sun Nov 13 22:29:11 EET 2016
It causes division by zero crashes.
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun at googlemail.com>
---
libavcodec/aacsbr_fixed.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/libavcodec/aacsbr_fixed.c b/libavcodec/aacsbr_fixed.c
index b26314a..d2a7027 100644
--- a/libavcodec/aacsbr_fixed.c
+++ b/libavcodec/aacsbr_fixed.c
@@ -429,6 +429,10 @@ static void sbr_gain_calc(AACContext *ac, SpectralBandReplication *sbr,
av_add_sf(FLOAT_1, sbr->e_curr[e][m]),
av_add_sf(FLOAT_1, sbr->q_mapped[e][m]))));
}
+ if (sbr->gain[e][m].mant == 0) {
+ sbr->gain[e][m] = FLOAT_1;
+ sbr->gain[e][m].exp = MIN_EXP;
+ }
}
for (m = sbr->f_tablelim[k] - sbr->kx[1]; m < sbr->f_tablelim[k + 1] - sbr->kx[1]; m++) {
sum[0] = av_add_sf(sum[0], sbr->e_origmapped[e][m]);
--
2.10.2
More information about the ffmpeg-devel
mailing list