1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2025-08-04 22:03:09 +02:00

avcodec/apv: align APV color format support with latest liboapv version

Signed-off-by: Dariusz Frankiewicz <d.frankiewic@samsung.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
Dariusz Frankiewicz
2025-07-23 13:13:49 +02:00
committed by Michael Niedermayer
parent 03b9180fe3
commit 9d8469e431
2 changed files with 25 additions and 1 deletions

2
configure vendored
View File

@ -6983,7 +6983,7 @@ enabled jni && { [ $target_os = "android" ] && check_headers jni.h
enabled ladspa && require_headers "ladspa.h dlfcn.h" enabled ladspa && require_headers "ladspa.h dlfcn.h"
enabled lcms2 && require_pkg_config lcms2 "lcms2 >= 2.13" lcms2.h cmsCreateContext enabled lcms2 && require_pkg_config lcms2 "lcms2 >= 2.13" lcms2.h cmsCreateContext
enabled libaom && require_pkg_config libaom "aom >= 2.0.0" aom/aom_codec.h aom_codec_version enabled libaom && require_pkg_config libaom "aom >= 2.0.0" aom/aom_codec.h aom_codec_version
enabled liboapv && require_pkg_config liboapv "oapv >= 0.1.13.1" "oapv/oapv.h" oapve_encode enabled liboapv && require_pkg_config liboapv "oapv >= 0.2.0.0" "oapv/oapv.h" oapve_encode
enabled libaribb24 && { check_pkg_config libaribb24 "aribb24 > 1.0.3" "aribb24/aribb24.h" arib_instance_new || enabled libaribb24 && { check_pkg_config libaribb24 "aribb24 > 1.0.3" "aribb24/aribb24.h" arib_instance_new ||
{ enabled gpl && require_pkg_config libaribb24 aribb24 "aribb24/aribb24.h" arib_instance_new; } || { enabled gpl && require_pkg_config libaribb24 aribb24 "aribb24/aribb24.h" arib_instance_new; } ||
die "ERROR: libaribb24 requires version higher than 1.0.3 or --enable-gpl."; } die "ERROR: libaribb24 requires version higher than 1.0.3 or --enable-gpl."; }

View File

@ -102,9 +102,27 @@ static inline int get_color_format(enum AVPixelFormat pix_fmt)
int cf = OAPV_CF_UNKNOWN; int cf = OAPV_CF_UNKNOWN;
switch (pix_fmt) { switch (pix_fmt) {
case AV_PIX_FMT_GRAY10:
cf = OAPV_CF_YCBCR400;
break;
case AV_PIX_FMT_YUV422P10: case AV_PIX_FMT_YUV422P10:
cf = OAPV_CF_YCBCR422; cf = OAPV_CF_YCBCR422;
break; break;
case AV_PIX_FMT_YUV422P12:
cf = OAPV_CF_YCBCR422;
break;
case AV_PIX_FMT_YUV444P10:
cf = OAPV_CF_YCBCR444;
break;
case AV_PIX_FMT_YUV444P12:
cf = OAPV_CF_YCBCR444;
break;
case AV_PIX_FMT_YUVA444P10:
cf = OAPV_CF_YCBCR4444;
break;
case AV_PIX_FMT_YUVA444P12:
cf = OAPV_CF_YCBCR4444;
break;
default: default:
av_assert0(cf != OAPV_CF_UNKNOWN); av_assert0(cf != OAPV_CF_UNKNOWN);
} }
@ -438,7 +456,13 @@ static av_cold int liboapve_close(AVCodecContext *avctx)
#define VE AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_ENCODING_PARAM #define VE AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_ENCODING_PARAM
static const enum AVPixelFormat supported_pixel_formats[] = { static const enum AVPixelFormat supported_pixel_formats[] = {
AV_PIX_FMT_GRAY10,
AV_PIX_FMT_YUV422P10, AV_PIX_FMT_YUV422P10,
AV_PIX_FMT_YUV422P12,
AV_PIX_FMT_YUV444P10,
AV_PIX_FMT_YUV444P12,
AV_PIX_FMT_YUVA444P10,
AV_PIX_FMT_YUVA444P12,
AV_PIX_FMT_NONE AV_PIX_FMT_NONE
}; };