commit | 0713a18ebc87bad579b901b3dcd2499d8e5b552b | [log] [tgz] |
---|---|---|
author | Jean-Marc Valin <jmvalin@jmvalin.ca> | Fri Mar 01 17:34:52 2024 -0500 |
committer | Jean-Marc Valin <jmvalin@jmvalin.ca> | Fri Mar 01 17:34:52 2024 -0500 |
tree | 78ed102c760e8635a5af6ef396da145e85209fda | |
parent | e9b243b32a7d2e85b0dcfb9704c507bb59f8a3cf [diff] |
Fix overflow in CELT Deep PLC Added proper saturation and rounding
diff --git a/celt/celt_decoder.c b/celt/celt_decoder.c index 70b5ed1..743c203 100644 --- a/celt/celt_decoder.c +++ b/celt/celt_decoder.c
@@ -589,7 +589,7 @@ for (j=0;j<SINC_ORDER+1;j++) { sum += buf48k[3*i + j + offset]*sinc_filter[j]; } - buf16k[i] = sum; + buf16k[i] = float2int(MIN32(32767.f, MAX32(-32767.f, sum))); } tmp_read_post = lpcnet->fec_read_pos; tmp_fec_skip = lpcnet->fec_skip;