[FFmpeg-devel] [PATCH 1/2] avfilter/ccfifo: Inline trivial functions

Andreas Rheinhardt andreas.rheinhardt at outlook.com
Tue Feb 6 10:57:42 EET 2024


Andreas Rheinhardt:
> Besides being extremly simple this also avoids including
> ff_ccfifo_ccdetected() unnecessarily (it is only used by decklink).
> This is possible because this is not avpriv, but duplicated into
> lavd if necessary.
> 
> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>
> ---
>  libavfilter/ccfifo.c | 11 -----------
>  libavfilter/ccfifo.h | 13 +++++++++++--
>  2 files changed, 11 insertions(+), 13 deletions(-)
> 
> diff --git a/libavfilter/ccfifo.c b/libavfilter/ccfifo.c
> index 6ae61a4b15..29108822be 100644
> --- a/libavfilter/ccfifo.c
> +++ b/libavfilter/ccfifo.c
> @@ -24,7 +24,6 @@
>  #include "ccfifo.h"
>  
>  #define MAX_CC_ELEMENTS 128
> -#define CC_BYTES_PER_ENTRY 3
>  
>  struct cc_lookup {
>      int num;
> @@ -89,16 +88,6 @@ error:
>      return AVERROR(ENOMEM);
>  }
>  
> -int ff_ccfifo_getoutputsize(const CCFifo *ccf)
> -{
> -    return ccf->expected_cc_count * CC_BYTES_PER_ENTRY;
> -}
> -
> -int ff_ccfifo_ccdetected(const CCFifo *ccf)
> -{
> -    return ccf->cc_detected;
> -}
> -
>  int ff_ccfifo_injectbytes(CCFifo *ccf, uint8_t *cc_data, size_t len)
>  {
>      int cc_608_tuples = 0;
> diff --git a/libavfilter/ccfifo.h b/libavfilter/ccfifo.h
> index a3c302b6b2..565a837a00 100644
> --- a/libavfilter/ccfifo.h
> +++ b/libavfilter/ccfifo.h
> @@ -33,6 +33,8 @@
>  #include "libavutil/frame.h"
>  #include "libavutil/fifo.h"
>  
> +#define CC_BYTES_PER_ENTRY 3
> +
>  typedef struct CCFifo {
>      AVFifo *cc_608_fifo;
>      AVFifo *cc_708_fifo;
> @@ -88,7 +90,11 @@ int ff_ccfifo_extractbytes(CCFifo *ccf, uint8_t *data, size_t len);
>   * an appropriately sized buffer and pass it to ff_ccfifo_injectbytes()
>   *
>   */
> -int ff_ccfifo_getoutputsize(const CCFifo *ccf);
> +static inline int ff_ccfifo_getoutputsize(const CCFifo *ccf)
> +{
> +    return ccf->expected_cc_count * CC_BYTES_PER_ENTRY;
> +}
> +
>  
>  /**
>   * Insert CC data from the FIFO into an AVFrame (as side data)
> @@ -113,6 +119,9 @@ int ff_ccfifo_injectbytes(CCFifo *ccf, uint8_t *data, size_t len);
>   * Returns 1 if captions have been found as a prior call
>   * to ff_ccfifo_extract() or ff_ccfifo_extractbytes()
>   */
> -int ff_ccfifo_ccdetected(const CCFifo *ccf);
> +static inline int ff_ccfifo_ccdetected(const CCFifo *ccf)
> +{
> +    return ccf->cc_detected;
> +}
>  
>  #endif /* AVFILTER_CCFIFO_H */

Will apply this patchset tomorrow unless there are objections.

- Andreas



More information about the ffmpeg-devel mailing list