Quoting wm4 (2016-03-29 10:40:38)
> On Sun, 27 Mar 2016 14:26:43 +0200
> Anton Khirnov <[email protected]> wrote:
> 
> > For video, frame_number tracks the number of frames sent to the encoder.
> > So it should be incremented when we submit a frame, not when we get a
> > packet back.
> > ---
> >  avconv.c | 13 +++++++------
> >  1 file changed, 7 insertions(+), 6 deletions(-)
> > 
> > diff --git a/avconv.c b/avconv.c
> > index 087cc0c..00e50ee 100644
> > --- a/avconv.c
> > +++ b/avconv.c
> > @@ -537,6 +537,13 @@ static void do_video_out(AVFormatContext *s,
> >      if (ret < 0)
> >          goto error;
> >  
> > +    /*
> > +     * For video, number of frames in == number of packets out.
> > +     * But there may be reordering, so we can't throw away frames on 
> > encoder
> > +     * flush, we need to limit them here, before they go into encoder.
> > +     */
> 
> The comment is wrong (even if you disregard the new API). vp9 already
> does not output a frame for certain frame types (because that is how vp9
> works).
> 
> I would say avconv should only rely on decoder _output_ and timestamps,
> instead of assuming anything about packets.
> 

You're talking about decoding, this code is encoding. And the rest of
the comment is still applicable.

> On a side note, -frames did not work for remuxing, right?

It did, for certain values of work.

-- 
Anton Khirnov
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to