[libav-devel] Fix Indeo4 IP-frames

Kostya Shishkov kostya.shishkov at gmail.com
Sun Jun 1 08:56:21 CEST 2014


On Fri, May 30, 2014 at 02:38:05PM +0200, Dirk Ausserhaus wrote:
> On Fri, May 30, 2014 at 7:38 AM, Anton Khirnov <anton at khirnov.net> wrote:
> >
> >
> > On Thu, 29 May 2014 13:44:34 +0200, Dirk Ausserhaus <dausserhaus at gmail.com> wrote:
> > > diff --git a/libavcodec/ivi_common.c b/libavcodec/ivi_common.c
> > > index cf4df18..ef4df10 100644
> > > --- a/libavcodec/ivi_common.c
> > > +++ b/libavcodec/ivi_common.c
> > > @@ -968,6 +968,21 @@ int ff_ivi_decode_frame(AVCodecContext *avctx, void *data, int *got_frame,
> > >      if (ctx->gop_invalid)
> > >          return AVERROR_INVALIDDATA;
> > >
> > > +    if (avctx->codec_id == AV_CODEC_ID_INDEO4 &&
> > > +        ctx->frame_type == IVI4_FRAMETYPE_NULL_LAST) {
> > > +        if (ctx->got_p_frame) {
> > > +            if ((result = av_frame_ref(data, ctx->p_frame)) < 0)
> > > +                return result;
> > > +            av_frame_free(&ctx->p_frame);
> > > +            ctx->p_frame = av_frame_alloc();
> >
> > The above 4 lines should be replaced with av_frame_move_ref(data, ctx->p_frame)
> >
> > The rest looks fine to me.
> 
> 
> Here're the updated patches in case you've not committed them yet.

Now they are committed, thanks.


More information about the libav-devel mailing list