On Thu, Nov 3, 2016 at 11:31 PM, Sasi Inguva <isasi-at-google....@ffmpeg.org> wrote: > Signed-off-by: Sasi Inguva <is...@google.com> > --- > libavcodec/utils.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/libavcodec/utils.c b/libavcodec/utils.c > index 87de15f..a33afaa 100644 > --- a/libavcodec/utils.c > +++ b/libavcodec/utils.c > @@ -2391,7 +2391,9 @@ int attribute_align_arg > avcodec_decode_audio4(AVCodecContext *avctx, > > if ((frame->flags & AV_FRAME_FLAG_DISCARD) && *got_frame_ptr && > !(avctx->flags2 & AV_CODEC_FLAG2_SKIP_MANUAL)) { > - avctx->internal->skip_samples -= frame->nb_samples; > + if (avctx->internal->skip_samples >= frame->nb_samples) { > + avctx->internal->skip_samples -= frame->nb_samples; > + } > *got_frame_ptr = 0; > } >
Shouldnt skip samples be zeroed then? Maybe something like: avctx->internal->skip_samples -= FFMAX(frame->nb_samples, avctx->internal->skip_samples); - Hendrik _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel