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


Best regards,
  Alexander
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to