X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavcodec%2Fg729dec.c;h=f394184d52cb1dd0e212a314fcb3e6dd033a3a5a;hb=85044358f63f0158fb83712f659f6db5b454a7aa;hp=2f70115814cd562714cbc4b95b2d5544ec923267;hpb=5d6a40bc747da93bd4ee41a446c35fc60a399671;p=ffmpeg diff --git a/libavcodec/g729dec.c b/libavcodec/g729dec.c index 2f70115814c..f394184d52c 100644 --- a/libavcodec/g729dec.c +++ b/libavcodec/g729dec.c @@ -371,6 +371,8 @@ static av_cold int decoder_init(AVCodecContext * avctx) ctx->exc = &ctx->exc_base[PITCH_DELAY_MAX+INTERPOL_LEN]; + ctx->pitch_delay_int_prev = PITCH_DELAY_MIN; + /* random seed initialization */ ctx->rand_value = 21845; @@ -560,7 +562,7 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *got_frame_ptr, gain_corr_factor = cb_gain_1st_6k4[gc_1st_index][1] + cb_gain_2nd_6k4[gc_2nd_index][1]; - /* Without check below overflow can occure in ff_acelp_update_past_gain. + /* Without check below overflow can occur in ff_acelp_update_past_gain. It is not issue for G.729, because gain_corr_factor in it's case is always greater than 1024, while in G.729D it can be even zero. */ gain_corr_factor = FFMAX(gain_corr_factor, 1024); @@ -587,7 +589,7 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *got_frame_ptr, two times larger than in original G.729. If bit-exact result is not issue then gain_corr_factor - can be simpler devided by 2 before call to g729_get_gain_code + can be simpler divided by 2 before call to g729_get_gain_code instead of using correction below. */ if (packet_type == FORMAT_G729D_6K4) { @@ -712,14 +714,13 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *got_frame_ptr, return buf_size; } -AVCodec ff_g729_decoder = -{ +AVCodec ff_g729_decoder = { .name = "g729", .type = AVMEDIA_TYPE_AUDIO, .id = CODEC_ID_G729, .priv_data_size = sizeof(G729Context), .init = decoder_init, .decode = decode_frame, - .capabilities = CODEC_CAP_DR1, - .long_name = NULL_IF_CONFIG_SMALL("G.729"), + .capabilities = CODEC_CAP_DR1, + .long_name = NULL_IF_CONFIG_SMALL("G.729"), };