[FFmpeg-devel] [PATCH 2/5] lavc/container_fifo: move to lavu and make public
Alexander Strasser
eclipse7 at gmx.net
Wed Dec 25 23:53:10 EET 2024
On 2024-12-15 22:20 +0100, Alexander Strasser via ffmpeg-devel wrote:
> On 2024-12-11 15:05 +0100, Anton Khirnov wrote:
> > This can be useful in other places, e.g. it can replace objpool in
> > fftools.
> >
> > The API is modified in the following nontrivial ways:
> > * opaque pointers can be passed through to all user callbacks
> > * read and write were previously separate callbacks in order to
> > accomodate the caller wishing to write a new reference to the FIFO and
> > keep the original one; the two callbacks are now merged into one, and
> > a flags argument is added that allows to request such behaviour on a
> > per-call basis
> > * new peek and drain functions
> > ---
> > doc/APIchanges | 5 +-
> > libavcodec/Makefile | 2 +-
> > libavcodec/container_fifo.h | 89 --------------
> > libavcodec/hevc/hevcdec.c | 10 +-
> > libavcodec/hevc/hevcdec.h | 2 +-
> > libavcodec/hevc/refs.c | 4 +-
> > libavutil/Makefile | 2 +
> > {libavcodec => libavutil}/container_fifo.c | 116 ++++++++++--------
> > libavutil/container_fifo.h | 130 +++++++++++++++++++++
> > 9 files changed, 215 insertions(+), 145 deletions(-)
> > delete mode 100644 libavcodec/container_fifo.h
> > rename {libavcodec => libavutil}/container_fifo.c (51%)
> > create mode 100644 libavutil/container_fifo.h
> >
> > diff --git a/doc/APIchanges b/doc/APIchanges
> > index 13789fcea4..5d75b6077d 100644
> > --- a/doc/APIchanges
> > +++ b/doc/APIchanges
> > @@ -2,10 +2,13 @@ The last version increases of all libraries were on 2024-03-07
> >
> > API changes, most recent first:
> >
> > -2024-12-xx - xxxxxxxxxx - lavu 59.50.100 - refstruct.h
> > +2024-12-xx - xxxxxxxxxx - lavu 59.50.100 - refstruct.h container_fifo.h
> > Add a new public header refstruct.h with new API for
> > reference-counted objects.
> >
> > + Add a new public header container_fifo.h with new API for
> > + a FIFO of container objects (e.g. AVFrame or AVPacket).
>
> I see this was already pushed.
>
> I wanted to comment mainly because of the naming. Didn't deeply
> check the series as a whole, but AFAICS it looks legit.
>
> I find the "container" part of the naming consusing, especially in
> a multimedia project.
>
> Didn't yet have brilliant ideas.
> Some suggestions to get started follow in no particular order:
>
> * objpool_fifo
> * reusable_obj_fifo
> * refstruct_fifo
Polite ping.
Alexander
More information about the ffmpeg-devel
mailing list