[FFmpeg-devel] [PATCH v2 2/3] {configure, avcodec/libx264}: remove separate x264_csp_bgr check
Jan Ekström
jeebjp at gmail.com
Fri Jul 2 15:10:23 EEST 2021
On Fri, Jul 2, 2021 at 2:25 PM Jan Ekström <jeebjp at gmail.com> 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, 2 insertions(+), 8 deletions(-)
>
> diff --git a/configure b/configure
> index ab27220688..b3b8065188 100755
> --- a/configure
> +++ b/configure
> @@ -3316,7 +3316,7 @@ 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_deps="libx264"
> libx264rgb_encoder_select="libx264_encoder"
> libx265_encoder_deps="libx265"
> libxavs_encoder_deps="libxavs"
> @@ -6529,7 +6529,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
> +
As much as I want to remove the x264rgb ifs for the AVClass and
AVCodec, I guess at this point the separation should still be there to
be 100% correct...
1. `--disable-encoder=libx264rgb` does actually make it unavailable
through the API (even if the ff_ symbol most likely is still there
built/exposed), and keeps the base x264 wrapper around.
2. `--disable-encoder=libx264` does disable both (which is kind of
what the end result of this patch set is after merging, but
technically I guess incorrect at the point where they're still
separated).
So I will slip these changes to the last commit for the AVClass and
AVCodec definitions (and I guess pix_fmts_8bit_rgb since otherwise you
will get unused warnings about it).
Jan
More information about the ffmpeg-devel
mailing list