[FFmpeg-devel] [PATCH] avcodec: Add avpriv_codec_get_cap_skip_frame_fill_param()
wm4
nfxjfg at googlemail.com
Wed Apr 20 20:18:54 CEST 2016
On Wed, 20 Apr 2016 15:05:40 -0300
James Almer <jamrial at gmail.com> wrote:
> On 4/20/2016 2:49 PM, Michael Niedermayer wrote:
> > With this the use of the caps_internal from libavormat can be avoided
> >
> > TODO: bump version
> >
> > Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
> > ---
> > libavcodec/internal.h | 2 ++
> > libavcodec/utils.c | 4 ++++
> > 2 files changed, 6 insertions(+)
> >
> > diff --git a/libavcodec/internal.h b/libavcodec/internal.h
> > index 24d320c..6c0efec 100644
> > --- a/libavcodec/internal.h
> > +++ b/libavcodec/internal.h
> > @@ -293,6 +293,8 @@ const uint8_t *avpriv_find_start_code(const uint8_t *p,
> > const uint8_t *end,
> > uint32_t *state);
> >
> > +int avpriv_codec_get_cap_skip_frame_fill_param(const AVCodec *codec);
> > +
> > /**
> > * Check that the provided frame dimensions are valid and set them on the codec
> > * context.
> > diff --git a/libavcodec/utils.c b/libavcodec/utils.c
> > index 44843a4..9766bb0 100644
> > --- a/libavcodec/utils.c
> > +++ b/libavcodec/utils.c
> > @@ -1160,6 +1160,10 @@ int av_codec_get_max_lowres(const AVCodec *codec)
> > return codec->max_lowres;
> > }
> >
> > +int avpriv_codec_get_cap_skip_frame_fill_param(const AVCodec *codec){
> > + return !!(codec->caps_internal & FF_CODEC_CAP_SKIP_FRAME_FILL_PARAM);
> > +}
>
> Might as well do a generic accessor function like "int avpriv_codec_get_caps(const AVCodec *codec)"
> or "int avpriv_codec_check_cap(const AVCodec *codec, int cap)" if this field is going to be used
> outside lavc.
> If for whatever reason any of the other flags need to be checked in lavf, you'll not need to
> introduce another avpriv function.
IMHO the idea should be that another of such a case shouldn't happen.
The case which this patch tries to fix was introduced accidentally
(and also, it really should have been implemented as a parser).
I still wonder if this could be fixed in a better way.
More information about the ffmpeg-devel
mailing list