[FFmpeg-devel] [PATCH 1/2] avformat/mux: Warn if the muxers bitexact flag is not set but it looks as if the user wants it set

Michael Niedermayer michael at niedermayer.cc
Tue Aug 25 00:19:19 CEST 2015


On Tue, Aug 25, 2015 at 12:03:59AM +0200, Andreas Cadhalpun wrote:
> On 24.08.2015 02:22, Michael Niedermayer wrote:
> > is below diff better: ?
> > iam quite unsure how to word this
> > 
> > using the exact same system as FF_API_OLD_FILTER_OPTS is tricky as
> > there is a semantic difference
> > "codec->flags & AV_CODEC_FLAG_BITEXACT" is not deprecated as in
> > FF_API_OLD_FILTER_OPTS
> > Currently storing a bitexact stream in a container makes the
> > container bitexact. with FF_API_LAVF_BITEXACT==0 this would no longer
> > be the case and the user would have to explicitly switch the muxer
> > into bitexact mode in addition to the encoder to get a bitexact
> > result.
> > 
> > --- a/libavformat/mux.c
> > +++ b/libavformat/mux.c
> > @@ -250,10 +250,17 @@ static int init_muxer(AVFormatContext *s, AVDictionary **options)
> >          (ret = av_opt_set_dict2(s->priv_data, &tmp, AV_OPT_SEARCH_CHILDREN)) < 0)
> >          goto fail;
> > 
> > +    if (s->nb_streams && s->streams[0]->codec->flags & AV_CODEC_FLAG_BITEXACT) {
> > +        if (!(s->flags & AVFMT_FLAG_BITEXACT))
> > +            av_log(s, AV_LOG_WARNING, "Muxer bitexact flag is not set, please set AVFormatContext.flags |= AVFMT_FLAG_BITEXACT.\n"
> > +#if FF_API_LAVF_BITEXACT
> > +                                      "This will become mandatory with future API cleanup\n"
> > +#endif
> > +            );
> 
> I'd prefer something like:

whatever people/you prefer,
please set Author to you, if you push

thx

>     if (s->nb_streams && s->streams[0]->codec->flags & AV_CODEC_FLAG_BITEXACT) {
>         if (!(s->flags & AVFMT_FLAG_BITEXACT)) {
> #if FF_API_LAVF_BITEXACT
>             av_log(s, AV_LOG_WARNING,
>                    "Setting the AVFormatContext to bitexact mode, because "
>                    "the AVCodecContext is in that mode. This behavior will "
>                    "change in the future. To keep the current behavior, set "
>                    "AVFormatContext.flags |= AVFMT_FLAG_BITEXACT.\n");
>             s->flags |= AVFMT_FLAG_BITEXACT;
> #else
>             av_log(s, AV_LOG_WARNING,
>                    "The AVFormatContext is not in set to bitexact mode, only "
>                    "the AVCodecContext. If this is not intended, set "
>                    "AVFormatContext.flags |= AVFMT_FLAG_BITEXACT.\n");
> #endif
>         }
>     }
> 
> Best regards,
> Andreas
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

It is dangerous to be right in matters on which the established authorities
are wrong. -- Voltaire
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: Digital signature
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20150825/81c4ea3f/attachment.sig>


More information about the ffmpeg-devel mailing list