[FFmpeg-devel] [PATCH 1/5] avformat: Adding accessors for externally used AVStream fields which are after the public field list

James Almer jamrial at gmail.com
Wed Jun 29 22:07:52 CEST 2016


On 6/29/2016 4:36 PM, Michael Niedermayer wrote:
> Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
> ---
>  libavformat/avformat.h |    4 ++++
>  libavformat/utils.c    |   21 +++++++++++++++++++++
>  2 files changed, 25 insertions(+)
> 
> diff --git a/libavformat/avformat.h b/libavformat/avformat.h
> index 876f1e3..89f014b 100644
> --- a/libavformat/avformat.h
> +++ b/libavformat/avformat.h
> @@ -1224,6 +1224,10 @@ void       av_stream_set_r_frame_rate(AVStream *s, AVRational r);
>  struct AVCodecParserContext *av_stream_get_parser(const AVStream *s);
>  char* av_stream_get_recommended_encoder_configuration(const AVStream *s);
>  void  av_stream_set_recommended_encoder_configuration(AVStream *s, char *configuration);
> +int64_t av_stream_get_cur_dts(AVStream *s);
> +int64_t av_stream_get_first_dts(AVStream *s);
> +int av_stream_get_pts_wrap_bits(AVStream *s);
> +int64_t av_stream_get_codec_info_nb_frames(AVStream *s);
>  
>  /**
>   * Returns the pts of the last muxed packet + its duration
> diff --git a/libavformat/utils.c b/libavformat/utils.c
> index 6f343f2..5168816 100644
> --- a/libavformat/utils.c
> +++ b/libavformat/utils.c
> @@ -132,6 +132,27 @@ struct AVCodecParserContext *av_stream_get_parser(const AVStream *st)
>      return st->parser;
>  }
>  
> +int64_t av_stream_get_cur_dts(AVStream *s)
> +{
> +    return s->cur_dts;
> +}
> +
> +int64_t av_stream_get_first_dts(AVStream *s)
> +{
> +    return s->first_dts;
> +}
> +
> +int av_stream_get_pts_wrap_bits(AVStream *s)
> +{
> +    return s->pts_wrap_bits;
> +}
> +
> +int64_t av_stream_get_codec_info_nb_frames(AVStream *s)
> +{
> +    return s->codec_info_nb_frames;
> +}
> +
> +
>  void av_format_inject_global_side_data(AVFormatContext *s)
>  {
>      int i;

No more accessors, please. If these fields truly need to be used outside of
libavformat then move them above the private fields mark (alongside minor
bump and preferably some minimal doxy).



More information about the ffmpeg-devel mailing list