[FFmpeg-devel] [PATCH] libavcodec/avcodec.h: fix typos in AVCodecContext.pkt_timebase description

Stefano Sabatini stefasab at gmail.com
Sun Apr 2 22:03:21 EEST 2023


On date Sunday 2023-04-02 20:14:16 +0200, Stefano Sabatini wrote:
> On date Sunday 2023-04-02 20:05:35 +0200, Stefano Sabatini wrote:
> > ---
> >  libavcodec/avcodec.h | 6 +++---
> >  1 file changed, 3 insertions(+), 3 deletions(-)
> > 
> > diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
> > index 1e91b9cb53..dec5e40eac 100644
> > --- a/libavcodec/avcodec.h
> > +++ b/libavcodec/avcodec.h
> > @@ -1781,9 +1781,9 @@ typedef struct AVCodecContext {
> >      enum AVPixelFormat sw_pix_fmt;
> >  
> >      /**
> > -     * Timebase in which pkt_dts/pts and AVPacket.dts/pts are.
> > -     * - encoding unused.
> > -     * - decoding set by user.
> > +     * Timebase in which pkt_dts/pts and AVPacket.dts/pts are expressed.
> > +     * - encoding: unused.
> > +     * - decoding: set by user.
> >       */
> >      AVRational pkt_timebase;
> 
> BTW, also I'm still confused by this field.
> 
> What happens in case it is not set? In this case I assume the
> decoder/libavcodec will pick a suitable timebase which is directly set
> in the decoded frames? Is the field internally set in this case, or
> the information is only stored in the output frames?
> 
> How libavcodec detects if the field is set or not?

Also, is there any guarantee that the decoded frame time base should
be set based on the pkt_timebase value?

In practice this does not happen (so that I had to set the time_base
explicitly in the decoded frame in transcode.c). Is this expected or
the library should explicitly set the time_base in the decoded frames?
The latter is what I would expect.


More information about the ffmpeg-devel mailing list