[FFmpeg-devel] [PATCH 2/2] avcodec/mmaldec: fix deprecation warning

Ming Shun Ho cyph1984 at gmail.com
Thu Sep 23 20:41:54 EEST 2021


On Fri, Sep 24, 2021 at 12:52 AM Andreas Rheinhardt
<andreas.rheinhardt at outlook.com> wrote:
>
> Ho Ming Shun:
> > Signed-off-by: Ho Ming Shun <cyph1984 at gmail.com>
> > ---
> >  libavcodec/mmaldec.c | 2 ++
> >  1 file changed, 2 insertions(+)
> >
> > diff --git a/libavcodec/mmaldec.c b/libavcodec/mmaldec.c
> > index 5b75a1e74d..96140bf53d 100644
> > --- a/libavcodec/mmaldec.c
> > +++ b/libavcodec/mmaldec.c
> > @@ -772,7 +772,9 @@ static int ffmmal_decode(AVCodecContext *avctx, void *data, int *got_frame,
> >
> >      if (avctx->extradata_size && !ctx->extradata_sent) {
> >          AVPacket pkt = {0};
> > +FF_DISABLE_DEPRECATION_WARNINGS
> >          av_init_packet(&pkt);
> > +FF_ENABLE_DEPRECATION_WARNINGS
> >          pkt.data = avctx->extradata;
> >          pkt.size = avctx->extradata_size;
> >          ctx->extradata_sent = 1;
> >
>
> You did not fix the underlying issue (av_init_packet() is deprecated and
> its use should therefore be discontinued), but just hid the warning.

I was under the impression that it is deprecated to remove sizeof(AVPacket)
from libavcodec's ABI. Internally however it should be ok.

> This patch here:
> https://ffmpeg.org/pipermail/ffmpeg-devel/2021-March/277278.html intends
> to fix the underlying issue (and also the warning). I have just not
> found anyone to actually test whether it works. I presume you could do
> it. Would you be so kind and do it?

Had to patch it to build:

diff --git a/libavcodec/mmaldec.c b/libavcodec/mmaldec.c
index 0ea07ea787..2bed7309bb 100644
--- a/libavcodec/mmaldec.c
+++ b/libavcodec/mmaldec.c
@@ -779,7 +779,7 @@ static int ffmmal_decode(AVCodecContext *avctx,
void *data, int *got_frame,
            return ret;
    }

-    if ((ret = ffmmal_add_packet(avctx, avpkt, pkt->data, pkt->size)) < 0)
+    if ((ret = ffmmal_add_packet(avctx, avpkt, avpkt->data, avpkt->size)) < 0)
        return ret;

    if ((ret = ffmmal_fill_input_port(avctx)) < 0)

Seems to be working fine with the above patch applied.

Will this series likely be applied? I am asking because I am working on another
patch to convert this to the new dataflow API, and your patches look like they
might conflict.

>
> - Andreas
>
> PS: There is also a second patch of this patchset:
> https://ffmpeg.org/pipermail/ffmpeg-devel/2021-March/277279.html
> You can get the patches from patchwork here if that is easier for you:
> https://patchwork.ffmpeg.org/project/ffmpeg/list/?series=3470
> Or use this command line to apply the patches directly:
> curl https://patchwork.ffmpeg.org/series/3470/mbox/ | git am -3
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".


More information about the ffmpeg-devel mailing list