[FFmpeg-devel] [PATCH 22/35] fftools/ffmpeg: rework -shortest implementation

Anton Khirnov anton at khirnov.net
Fri Jun 17 13:25:18 EEST 2022


Quoting Andreas Rheinhardt (2022-06-16 23:05:32)
> Anton Khirnov:
> > +struct SyncQueue {
> > +    enum SyncQueueType type;
> > +
> > +    /* no more frames will be sent for any stream */
> > +    int finished;
> > +    /* sync head: the stream with the _smallest_ head timestamp
> > +     * this stream determines which frames can be output */
> > +    int head_stream;
> > +    /* the finished stream with the smallest finish timestamp or -1 */
> > +    int head_finished_stream;
> > +
> > +    // maximum buffering duration in microseconds
> > +    int64_t buf_size_us;
> > +
> > +    SyncQueueStream *streams;
> > +    unsigned int  nb_streams;
> > +
> > +    // pool of preallocated frames to avoid constant allocations
> > +    ObjPool *pool;
> > +    SyncQueueFrame  free_frames[32];
> > +    unsigned int nb_free_frames;
> 
> The free_frames stuff seems unused.

Right, forgot to remove them after the switch to objpool.
Dropped locally.

-- 
Anton Khirnov


More information about the ffmpeg-devel mailing list