diff mbox series

[FFmpeg-devel,2/3] {configure, avcodec/libx264}: remove separate x264_csp_bgr check

Message ID 20210701215447.34169-3-jeebjp@gmail.com
State Superseded
Headers show
Series libx264 configure check clean-up, removal of libx264rgb | expand

Checks

Context Check Description
andriy/x86_make fail Make failed
andriy/PPC64_make warning Make failed

Commit Message

Jan Ekström July 1, 2021, 9:54 p.m. UTC
We already require X264_BUILD >= 118, which includes an unconditional
definition of X264_CSP_BGR in itself, thus making this check
effectively always true.
---
 configure            | 3 ---
 libavcodec/libx264.c | 7 +------
 2 files changed, 1 insertion(+), 9 deletions(-)

Comments

James Almer July 1, 2021, 10:08 p.m. UTC | #1
On 7/1/2021 6:54 PM, Jan Ekström wrote:
> We already require X264_BUILD >= 118, which includes an unconditional
> definition of X264_CSP_BGR in itself, thus making this check
> effectively always true.
> ---
>   configure            | 3 ---
>   libavcodec/libx264.c | 7 +------
>   2 files changed, 1 insertion(+), 9 deletions(-)
> 
> diff --git a/configure b/configure
> index ab27220688..9e8d219449 100755
> --- a/configure
> +++ b/configure
> @@ -3316,8 +3316,6 @@ libwebp_anim_encoder_deps="libwebp"
>   libx262_encoder_deps="libx262"
>   libx264_encoder_deps="libx264"
>   libx264_encoder_select="atsc_a53"
> -libx264rgb_encoder_deps="libx264 x264_csp_bgr"
> -libx264rgb_encoder_select="libx264_encoder"

Without this, libx264rgb_encoder will be enabled even when libx264 is 
not present.
Just remove the x264_csp_bgr dep but kept the other dep, and the select.

>   libx265_encoder_deps="libx265"
>   libxavs_encoder_deps="libxavs"
>   libxavs2_encoder_deps="libxavs2"
> @@ -6529,7 +6527,6 @@ enabled libx264           && { check_pkg_config libx264 x264 "stdint.h x264.h" x
>                                  { require libx264 "stdint.h x264.h" x264_encoder_encode "-lx264 $pthreads_extralibs $libm_extralibs" &&
>                                    warn "using libx264 without pkg-config"; } } &&
>                                require_cpp_condition libx264 x264.h "X264_BUILD >= 118" &&
> -                             check_cpp_condition x264_csp_bgr x264.h "X264_CSP_BGR" &&
>                                check_cpp_condition libx262 x264.h "X264_MPEG2"
>   enabled libx265           && require_pkg_config libx265 x265 x265.h x265_api_get &&
>                                require_cpp_condition libx265 x265.h "X265_BUILD >= 70"
> diff --git a/libavcodec/libx264.c b/libavcodec/libx264.c
> index 4b905bf9da..fdb9e285a6 100644
> --- a/libavcodec/libx264.c
> +++ b/libavcodec/libx264.c
> @@ -553,7 +553,6 @@ static int convert_pix_fmt(enum AVPixelFormat pix_fmt)
>       case AV_PIX_FMT_YUVJ444P:
>       case AV_PIX_FMT_YUV444P9:
>       case AV_PIX_FMT_YUV444P10: return X264_CSP_I444;
> -#if CONFIG_LIBX264RGB_ENCODER
>       case AV_PIX_FMT_BGR0:
>           return X264_CSP_BGRA;
>       case AV_PIX_FMT_BGR24:
> @@ -561,7 +560,6 @@ static int convert_pix_fmt(enum AVPixelFormat pix_fmt)
>   
>       case AV_PIX_FMT_RGB24:
>           return X264_CSP_RGB;
> -#endif
>       case AV_PIX_FMT_NV12:      return X264_CSP_NV12;
>       case AV_PIX_FMT_NV16:
>       case AV_PIX_FMT_NV20:      return X264_CSP_NV16;
> @@ -1018,14 +1016,13 @@ static const enum AVPixelFormat pix_fmts_all[] = {
>   #endif
>       AV_PIX_FMT_NONE
>   };
> -#if CONFIG_LIBX264RGB_ENCODER
> +
>   static const enum AVPixelFormat pix_fmts_8bit_rgb[] = {
>       AV_PIX_FMT_BGR0,
>       AV_PIX_FMT_BGR24,
>       AV_PIX_FMT_RGB24,
>       AV_PIX_FMT_NONE
>   };
> -#endif
>   
>   #if X264_BUILD < 153
>   static av_cold void X264_init_static(AVCodec *codec)
> @@ -1186,9 +1183,7 @@ AVCodec ff_libx264_encoder = {
>                         ,
>       .wrapper_name     = "libx264",
>   };
> -#endif
>   
> -#if CONFIG_LIBX264RGB_ENCODER
>   static const AVClass rgbclass = {
>       .class_name = "libx264rgb",
>       .item_name  = av_default_item_name,
>
Jan Ekström July 1, 2021, 10:22 p.m. UTC | #2
On Fri, Jul 2, 2021 at 1:09 AM James Almer <jamrial@gmail.com> wrote:
>
> On 7/1/2021 6:54 PM, Jan Ekström wrote:
> > We already require X264_BUILD >= 118, which includes an unconditional
> > definition of X264_CSP_BGR in itself, thus making this check
> > effectively always true.
> > ---
> >   configure            | 3 ---
> >   libavcodec/libx264.c | 7 +------
> >   2 files changed, 1 insertion(+), 9 deletions(-)
> >
> > diff --git a/configure b/configure
> > index ab27220688..9e8d219449 100755
> > --- a/configure
> > +++ b/configure
> > @@ -3316,8 +3316,6 @@ libwebp_anim_encoder_deps="libwebp"
> >   libx262_encoder_deps="libx262"
> >   libx264_encoder_deps="libx264"
> >   libx264_encoder_select="atsc_a53"
> > -libx264rgb_encoder_deps="libx264 x264_csp_bgr"
> > -libx264rgb_encoder_select="libx264_encoder"
>
> Without this, libx264rgb_encoder will be enabled even when libx264 is
> not present.
> Just remove the x264_csp_bgr dep but kept the other dep, and the select.
>

I just re-tested and yes, I did forget that libavcodec/allcodecs.c
lines were not definitions but external references. As I saw no ifdefs
in allcodecs, I thought the now-unused CONFIG_LIBX264RGB_ENCODER
defines would cause no harm. How wrong I was :)

Will do this change after I have had some sleep.

Jan
diff mbox series

Patch

diff --git a/configure b/configure
index ab27220688..9e8d219449 100755
--- a/configure
+++ b/configure
@@ -3316,8 +3316,6 @@  libwebp_anim_encoder_deps="libwebp"
 libx262_encoder_deps="libx262"
 libx264_encoder_deps="libx264"
 libx264_encoder_select="atsc_a53"
-libx264rgb_encoder_deps="libx264 x264_csp_bgr"
-libx264rgb_encoder_select="libx264_encoder"
 libx265_encoder_deps="libx265"
 libxavs_encoder_deps="libxavs"
 libxavs2_encoder_deps="libxavs2"
@@ -6529,7 +6527,6 @@  enabled libx264           && { check_pkg_config libx264 x264 "stdint.h x264.h" x
                                { require libx264 "stdint.h x264.h" x264_encoder_encode "-lx264 $pthreads_extralibs $libm_extralibs" &&
                                  warn "using libx264 without pkg-config"; } } &&
                              require_cpp_condition libx264 x264.h "X264_BUILD >= 118" &&
-                             check_cpp_condition x264_csp_bgr x264.h "X264_CSP_BGR" &&
                              check_cpp_condition libx262 x264.h "X264_MPEG2"
 enabled libx265           && require_pkg_config libx265 x265 x265.h x265_api_get &&
                              require_cpp_condition libx265 x265.h "X265_BUILD >= 70"
diff --git a/libavcodec/libx264.c b/libavcodec/libx264.c
index 4b905bf9da..fdb9e285a6 100644
--- a/libavcodec/libx264.c
+++ b/libavcodec/libx264.c
@@ -553,7 +553,6 @@  static int convert_pix_fmt(enum AVPixelFormat pix_fmt)
     case AV_PIX_FMT_YUVJ444P:
     case AV_PIX_FMT_YUV444P9:
     case AV_PIX_FMT_YUV444P10: return X264_CSP_I444;
-#if CONFIG_LIBX264RGB_ENCODER
     case AV_PIX_FMT_BGR0:
         return X264_CSP_BGRA;
     case AV_PIX_FMT_BGR24:
@@ -561,7 +560,6 @@  static int convert_pix_fmt(enum AVPixelFormat pix_fmt)
 
     case AV_PIX_FMT_RGB24:
         return X264_CSP_RGB;
-#endif
     case AV_PIX_FMT_NV12:      return X264_CSP_NV12;
     case AV_PIX_FMT_NV16:
     case AV_PIX_FMT_NV20:      return X264_CSP_NV16;
@@ -1018,14 +1016,13 @@  static const enum AVPixelFormat pix_fmts_all[] = {
 #endif
     AV_PIX_FMT_NONE
 };
-#if CONFIG_LIBX264RGB_ENCODER
+
 static const enum AVPixelFormat pix_fmts_8bit_rgb[] = {
     AV_PIX_FMT_BGR0,
     AV_PIX_FMT_BGR24,
     AV_PIX_FMT_RGB24,
     AV_PIX_FMT_NONE
 };
-#endif
 
 #if X264_BUILD < 153
 static av_cold void X264_init_static(AVCodec *codec)
@@ -1186,9 +1183,7 @@  AVCodec ff_libx264_encoder = {
                       ,
     .wrapper_name     = "libx264",
 };
-#endif
 
-#if CONFIG_LIBX264RGB_ENCODER
 static const AVClass rgbclass = {
     .class_name = "libx264rgb",
     .item_name  = av_default_item_name,