Fixes: Ticket8176
Signed-off-by: Michael Niedermayer <[email protected]>
---
libavcodec/g729dec.c | 13 +++++++------
1 file changed, 7 insertions(+), 6 deletions(-)
diff --git a/libavcodec/g729dec.c b/libavcodec/g729dec.c
index 25951716ef..67054b71df 100644
--- a/libavcodec/g729dec.c
+++ b/libavcodec/g729dec.c
@@ -557,12 +557,13 @@ static int decode_frame(AVCodecContext *avctx, void
*data, int *got_frame_ptr,
fc_v[i] = <
\ fc_v[i] + gain_pitch * fc_v[i-pitch_delay], i >=
pitch_delay
*/
- ff_acelp_weighted_vector_sum(fc + pitch_delay_int[i],
- fc + pitch_delay_int[i],
- fc, 1 << 14,
- av_clip(ctx->past_gain_pitch[0],
SHARP_MIN, SHARP_MAX),
- 0, 14,
- SUBFRAME_SIZE - pitch_delay_int[i]);
+ if (SUBFRAME_SIZE > pitch_delay_int[i])
+ ff_acelp_weighted_vector_sum(fc + pitch_delay_int[i],
+ fc + pitch_delay_int[i],
+ fc, 1 << 14,
+ av_clip(ctx->past_gain_pitch[0],
SHARP_MIN, SHARP_MAX),
+ 0, 14,
+ SUBFRAME_SIZE -
pitch_delay_int[i]);
memmove(ctx->past_gain_pitch+1, ctx->past_gain_pitch, 5 *
sizeof(int16_t));
ctx->past_gain_code[1] = ctx->past_gain_code[0];
--
2.23.0
_______________________________________________
ffmpeg-devel mailing list
[email protected]
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
[email protected] with subject "unsubscribe".