diff mbox series

[FFmpeg-devel,2/5] avcodec: Add missing FF_API define for libavcodec pix fmt API

Message ID 20210226131806.1990485-2-andreas.rheinhardt@gmail.com
State Accepted
Headers show
Series [FFmpeg-devel,1/5] fftools/ffmpeg_filter: Don't use deprecated function | expand

Checks

Context Check Description
andriy/x86_make success Make finished
andriy/x86_make_fate success Make fate finished
andriy/PPC64_make success Make finished
andriy/PPC64_make_fate success Make fate finished

Commit Message

Andreas Rheinhardt Feb. 26, 2021, 1:18 p.m. UTC
avcodec_find_best_pix_fmt2 has been deprecated and replaced by
avcodec_find_best_pix_fmt_of_2 in 2a54ae9df8cbc1717b3929222ac75f384e2ff240.
avcodec_find_best_pix_fmt_of_2 and avcodec_get_pix_fmt_loss meanwhile
were deprecated in 617e866e25b72fa5d9f9d6bbcbd7e4bd69e63a54 when these
functions were de facto moved to libavutil; this has been mentioned in
APIchanges in f7a1c5e4d2294a8970ede7f6deb2fe0a64e202a5. Yet the
attribute_deprecated was never set for the latter two functions and they
were not wrapped in an FF_API define. This commit does this.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
---
 libavcodec/avcodec.h    | 15 +++++++++------
 libavcodec/imgconvert.c |  6 ++++--
 libavcodec/version.h    |  3 +++
 3 files changed, 16 insertions(+), 8 deletions(-)

Comments

Paul B Mahol Feb. 26, 2021, 1:29 p.m. UTC | #1
lgtm
James Almer Feb. 26, 2021, 1:30 p.m. UTC | #2
On 2/26/2021 10:18 AM, Andreas Rheinhardt wrote:
> avcodec_find_best_pix_fmt2 has been deprecated and replaced by
> avcodec_find_best_pix_fmt_of_2 in 2a54ae9df8cbc1717b3929222ac75f384e2ff240.
> avcodec_find_best_pix_fmt_of_2 and avcodec_get_pix_fmt_loss meanwhile
> were deprecated in 617e866e25b72fa5d9f9d6bbcbd7e4bd69e63a54 when these
> functions were de facto moved to libavutil; this has been mentioned in
> APIchanges in f7a1c5e4d2294a8970ede7f6deb2fe0a64e202a5. Yet the
> attribute_deprecated was never set for the latter two functions and they
> were not wrapped in an FF_API define. This commit does this.
> 
> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
> ---
>   libavcodec/avcodec.h    | 15 +++++++++------
>   libavcodec/imgconvert.c |  6 ++++--
>   libavcodec/version.h    |  3 +++
>   3 files changed, 16 insertions(+), 8 deletions(-)
> 
> diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
> index 3d77d2f6fd..3178c163b9 100644
> --- a/libavcodec/avcodec.h
> +++ b/libavcodec/avcodec.h
> @@ -3786,12 +3786,6 @@ void avcodec_get_chroma_sub_sample(enum AVPixelFormat pix_fmt, int *h_shift, int
>    */
>   unsigned int avcodec_pix_fmt_to_codec_tag(enum AVPixelFormat pix_fmt);
>   
> -/**
> - * @deprecated see av_get_pix_fmt_loss()
> - */
> -int avcodec_get_pix_fmt_loss(enum AVPixelFormat dst_pix_fmt, enum AVPixelFormat src_pix_fmt,
> -                             int has_alpha);
> -
>   /**
>    * Find the best pixel format to convert to given a certain source pixel
>    * format.  When converting from one pixel format to another, information loss
> @@ -3813,15 +3807,24 @@ enum AVPixelFormat avcodec_find_best_pix_fmt_of_list(const enum AVPixelFormat *p
>                                               enum AVPixelFormat src_pix_fmt,
>                                               int has_alpha, int *loss_ptr);
>   
> +#if FF_API_AVCODEC_PIX_FMT
> +/**
> + * @deprecated see av_get_pix_fmt_loss()
> + */
> +attribute_deprecated
> +int avcodec_get_pix_fmt_loss(enum AVPixelFormat dst_pix_fmt, enum AVPixelFormat src_pix_fmt,
> +                             int has_alpha);
>   /**
>    * @deprecated see av_find_best_pix_fmt_of_2()
>    */
> +attribute_deprecated
>   enum AVPixelFormat avcodec_find_best_pix_fmt_of_2(enum AVPixelFormat dst_pix_fmt1, enum AVPixelFormat dst_pix_fmt2,
>                                               enum AVPixelFormat src_pix_fmt, int has_alpha, int *loss_ptr);
>   
>   attribute_deprecated
>   enum AVPixelFormat avcodec_find_best_pix_fmt2(enum AVPixelFormat dst_pix_fmt1, enum AVPixelFormat dst_pix_fmt2,
>                                               enum AVPixelFormat src_pix_fmt, int has_alpha, int *loss_ptr);
> +#endif
>   
>   enum AVPixelFormat avcodec_default_get_format(struct AVCodecContext *s, const enum AVPixelFormat * fmt);
>   
> diff --git a/libavcodec/imgconvert.c b/libavcodec/imgconvert.c
> index 1fd636c83d..8de1563404 100644
> --- a/libavcodec/imgconvert.c
> +++ b/libavcodec/imgconvert.c
> @@ -44,6 +44,7 @@ void avcodec_get_chroma_sub_sample(enum AVPixelFormat pix_fmt, int *h_shift, int
>   }
>   #endif
>   
> +#if FF_API_AVCODEC_PIX_FMT
>   int avcodec_get_pix_fmt_loss(enum AVPixelFormat dst_pix_fmt,
>                                enum AVPixelFormat src_pix_fmt,
>                                int has_alpha)
> @@ -60,9 +61,10 @@ enum AVPixelFormat avcodec_find_best_pix_fmt_of_2(enum AVPixelFormat dst_pix_fmt
>   enum AVPixelFormat avcodec_find_best_pix_fmt2(enum AVPixelFormat dst_pix_fmt1, enum AVPixelFormat dst_pix_fmt2,
>                                               enum AVPixelFormat src_pix_fmt, int has_alpha, int *loss_ptr)
>   {
> -    return avcodec_find_best_pix_fmt_of_2(dst_pix_fmt1, dst_pix_fmt2, src_pix_fmt, has_alpha, loss_ptr);
> +    return av_find_best_pix_fmt_of_2(dst_pix_fmt1, dst_pix_fmt2, src_pix_fmt, has_alpha, loss_ptr);
>   }
>   
> +#endif
>   enum AVPixelFormat avcodec_find_best_pix_fmt_of_list(const enum AVPixelFormat *pix_fmt_list,
>                                               enum AVPixelFormat src_pix_fmt,
>                                               int has_alpha, int *loss_ptr){
> @@ -73,7 +75,7 @@ enum AVPixelFormat avcodec_find_best_pix_fmt_of_list(const enum AVPixelFormat *p
>   
>       for (i=0; pix_fmt_list[i] != AV_PIX_FMT_NONE; i++) {
>           loss = loss_ptr ? *loss_ptr : 0;
> -        best = avcodec_find_best_pix_fmt_of_2(best, pix_fmt_list[i], src_pix_fmt, has_alpha, &loss);
> +        best = av_find_best_pix_fmt_of_2(best, pix_fmt_list[i], src_pix_fmt, has_alpha, &loss);
>       }
>   
>       if (loss_ptr)
> diff --git a/libavcodec/version.h b/libavcodec/version.h
> index e5a5ec8abc..516411b4b2 100644
> --- a/libavcodec/version.h
> +++ b/libavcodec/version.h
> @@ -144,6 +144,9 @@
>   #ifndef FF_API_OLD_ENCDEC
>   #define FF_API_OLD_ENCDEC          (LIBAVCODEC_VERSION_MAJOR < 59)
>   #endif
> +#ifndef FF_API_AVCODEC_PIX_FMT
> +#define FF_API_AVCODEC_PIX_FMT     (LIBAVCODEC_VERSION_MAJOR < 59)

Ok, since this was mentioned in APIChanges, i guess < 59 is ok despite 
the missing function prototype attribute. But if i were to guess, most 
API users will pay more attention to compiler warnings rather than 
bothering to read the above document...

So LGTM.

> +#endif
>   #ifndef FF_API_THREAD_SAFE_CALLBACKS
>   #define FF_API_THREAD_SAFE_CALLBACKS (LIBAVCODEC_VERSION_MAJOR < 60)
>   #endif
>
diff mbox series

Patch

diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
index 3d77d2f6fd..3178c163b9 100644
--- a/libavcodec/avcodec.h
+++ b/libavcodec/avcodec.h
@@ -3786,12 +3786,6 @@  void avcodec_get_chroma_sub_sample(enum AVPixelFormat pix_fmt, int *h_shift, int
  */
 unsigned int avcodec_pix_fmt_to_codec_tag(enum AVPixelFormat pix_fmt);
 
-/**
- * @deprecated see av_get_pix_fmt_loss()
- */
-int avcodec_get_pix_fmt_loss(enum AVPixelFormat dst_pix_fmt, enum AVPixelFormat src_pix_fmt,
-                             int has_alpha);
-
 /**
  * Find the best pixel format to convert to given a certain source pixel
  * format.  When converting from one pixel format to another, information loss
@@ -3813,15 +3807,24 @@  enum AVPixelFormat avcodec_find_best_pix_fmt_of_list(const enum AVPixelFormat *p
                                             enum AVPixelFormat src_pix_fmt,
                                             int has_alpha, int *loss_ptr);
 
+#if FF_API_AVCODEC_PIX_FMT
+/**
+ * @deprecated see av_get_pix_fmt_loss()
+ */
+attribute_deprecated
+int avcodec_get_pix_fmt_loss(enum AVPixelFormat dst_pix_fmt, enum AVPixelFormat src_pix_fmt,
+                             int has_alpha);
 /**
  * @deprecated see av_find_best_pix_fmt_of_2()
  */
+attribute_deprecated
 enum AVPixelFormat avcodec_find_best_pix_fmt_of_2(enum AVPixelFormat dst_pix_fmt1, enum AVPixelFormat dst_pix_fmt2,
                                             enum AVPixelFormat src_pix_fmt, int has_alpha, int *loss_ptr);
 
 attribute_deprecated
 enum AVPixelFormat avcodec_find_best_pix_fmt2(enum AVPixelFormat dst_pix_fmt1, enum AVPixelFormat dst_pix_fmt2,
                                             enum AVPixelFormat src_pix_fmt, int has_alpha, int *loss_ptr);
+#endif
 
 enum AVPixelFormat avcodec_default_get_format(struct AVCodecContext *s, const enum AVPixelFormat * fmt);
 
diff --git a/libavcodec/imgconvert.c b/libavcodec/imgconvert.c
index 1fd636c83d..8de1563404 100644
--- a/libavcodec/imgconvert.c
+++ b/libavcodec/imgconvert.c
@@ -44,6 +44,7 @@  void avcodec_get_chroma_sub_sample(enum AVPixelFormat pix_fmt, int *h_shift, int
 }
 #endif
 
+#if FF_API_AVCODEC_PIX_FMT
 int avcodec_get_pix_fmt_loss(enum AVPixelFormat dst_pix_fmt,
                              enum AVPixelFormat src_pix_fmt,
                              int has_alpha)
@@ -60,9 +61,10 @@  enum AVPixelFormat avcodec_find_best_pix_fmt_of_2(enum AVPixelFormat dst_pix_fmt
 enum AVPixelFormat avcodec_find_best_pix_fmt2(enum AVPixelFormat dst_pix_fmt1, enum AVPixelFormat dst_pix_fmt2,
                                             enum AVPixelFormat src_pix_fmt, int has_alpha, int *loss_ptr)
 {
-    return avcodec_find_best_pix_fmt_of_2(dst_pix_fmt1, dst_pix_fmt2, src_pix_fmt, has_alpha, loss_ptr);
+    return av_find_best_pix_fmt_of_2(dst_pix_fmt1, dst_pix_fmt2, src_pix_fmt, has_alpha, loss_ptr);
 }
 
+#endif
 enum AVPixelFormat avcodec_find_best_pix_fmt_of_list(const enum AVPixelFormat *pix_fmt_list,
                                             enum AVPixelFormat src_pix_fmt,
                                             int has_alpha, int *loss_ptr){
@@ -73,7 +75,7 @@  enum AVPixelFormat avcodec_find_best_pix_fmt_of_list(const enum AVPixelFormat *p
 
     for (i=0; pix_fmt_list[i] != AV_PIX_FMT_NONE; i++) {
         loss = loss_ptr ? *loss_ptr : 0;
-        best = avcodec_find_best_pix_fmt_of_2(best, pix_fmt_list[i], src_pix_fmt, has_alpha, &loss);
+        best = av_find_best_pix_fmt_of_2(best, pix_fmt_list[i], src_pix_fmt, has_alpha, &loss);
     }
 
     if (loss_ptr)
diff --git a/libavcodec/version.h b/libavcodec/version.h
index e5a5ec8abc..516411b4b2 100644
--- a/libavcodec/version.h
+++ b/libavcodec/version.h
@@ -144,6 +144,9 @@ 
 #ifndef FF_API_OLD_ENCDEC
 #define FF_API_OLD_ENCDEC          (LIBAVCODEC_VERSION_MAJOR < 59)
 #endif
+#ifndef FF_API_AVCODEC_PIX_FMT
+#define FF_API_AVCODEC_PIX_FMT     (LIBAVCODEC_VERSION_MAJOR < 59)
+#endif
 #ifndef FF_API_THREAD_SAFE_CALLBACKS
 #define FF_API_THREAD_SAFE_CALLBACKS (LIBAVCODEC_VERSION_MAJOR < 60)
 #endif