From d45a296732ed0b92d19a1cc017552cf163ccb648 Mon Sep 17 00:00:00 2001 From: Anton Khirnov Date: Sun, 7 May 2023 12:19:31 +0200 Subject: lavu/frame: extend AVFrame.repeat_pict documentation --- libavutil/frame.h | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/libavutil/frame.h b/libavutil/frame.h index f2b56beebb..ed3f199ce1 100644 --- a/libavutil/frame.h +++ b/libavutil/frame.h @@ -491,8 +491,22 @@ typedef struct AVFrame { void *opaque; /** - * When decoding, this signals how much the picture must be delayed. - * extra_delay = repeat_pict / (2*fps) + * Number of fields in this frame which should be repeated, i.e. the total + * duration of this frame should be repeat_pict + 2 normal field durations. + * + * For interlaced frames this field may be set to 1, which signals that this + * frame should be presented as 3 fields: beginning with the first field (as + * determined by AV_FRAME_FLAG_TOP_FIELD_FIRST being set or not), followed + * by the second field, and then the first field again. + * + * For progressive frames this field may be set to a multiple of 2, which + * signals that this frame's duration should be (repeat_pict + 2) / 2 + * normal frame durations. + * + * @note This field is computed from MPEG2 repeat_first_field flag and its + * associated flags, H.264 pic_struct from picture timing SEI, and + * their analogues in other codecs. Typically it should only be used when + * higher-layer timing information is not available. */ int repeat_pict; -- cgit v1.2.1