[FFmpeg-cvslog] Add key_frame and pict_type to AVFilterBufferRefVideo.

Stefano Sabatini stefano.sabatini-lala at poste.it
Sat Apr 16 12:15:57 CEST 2011


On date Saturday 2011-04-16 10:10:14 +0200, Roger Pau Monné wrote:
> ffmpeg | branch: master | Roger Pau Monné <roger.pau at entel.upc.edu> | Sat Apr 16 10:09:15 2011 +0200| [09a1416db78f49fb3a39cdf5a4bd0f5c5f849ce0] | committer: Carl Eugen Hoyos
> 
> Add key_frame and pict_type to AVFilterBufferRefVideo.
> 
> > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=09a1416db78f49fb3a39cdf5a4bd0f5c5f849ce0
> ---
> 
>  cmdutils.c                |    2 ++
>  libavfilter/avfilter.h    |    4 +++-
>  libavfilter/vsrc_buffer.c |    4 ++++
>  3 files changed, 9 insertions(+), 1 deletions(-)

missing API changes entry (which I don't know anymore how to fix
myself)
 
> diff --git a/cmdutils.c b/cmdutils.c
> index 5b7b508..aa30962 100644
> --- a/cmdutils.c
> +++ b/cmdutils.c
> @@ -827,6 +827,8 @@ int get_filtered_video_frame(AVFilterContext *ctx, AVFrame *frame,
>      memcpy(frame->linesize, picref->linesize, sizeof(frame->linesize));
>      frame->interlaced_frame = picref->video->interlaced;
>      frame->top_field_first  = picref->video->top_field_first;
> +    frame->key_frame        = picref->video->key_frame;
> +    frame->pict_type        = picref->video->pict_type;
>  
>      return 1;
>  }
> diff --git a/libavfilter/avfilter.h b/libavfilter/avfilter.h
> index f270a37..16c761a 100644
> --- a/libavfilter/avfilter.h
> +++ b/libavfilter/avfilter.h
> @@ -26,7 +26,7 @@
>  #include "libavutil/samplefmt.h"
>  
>  #define LIBAVFILTER_VERSION_MAJOR  1
> -#define LIBAVFILTER_VERSION_MINOR 78
> +#define LIBAVFILTER_VERSION_MINOR 79
>  #define LIBAVFILTER_VERSION_MICRO  0
>  
>  #define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \
> @@ -115,6 +115,8 @@ typedef struct AVFilterBufferRefVideoProps {
>      AVRational pixel_aspect;    ///< pixel aspect ratio
>      int interlaced;             ///< is frame interlaced
>      int top_field_first;        ///< field order
> +    int pict_type;              ///< Picture type of the frame
> +    int key_frame;              ///< 1 -> keyframe, 0-> not

I'm not very happy about this.

Indeed pict_type is not explained, which are the assumed values? Also
pict_type is defined in libavcodec, would make sense to move the
FF_*_TYPE_ definitions to libavutil?
-- 
FFmpeg = Frightening Friendly Mythic Portable Enlightened Guide


More information about the ffmpeg-cvslog mailing list