[FFmpeg-devel] [PATCH 1/4] avutil: add support for CUVA HDR Vivid metadata
Andreas Rheinhardt
andreas.rheinhardt at outlook.com
Tue Feb 15 09:08:51 EET 2022
lance.lmwang at gmail.com:
> From: Limin Wang <lance.lmwang at gmail.com>
>
> Signed-off-by: Limin Wang <lance.lmwang at gmail.com>
> ---
> libavutil/Makefile | 2 +
> libavutil/frame.c | 1 +
> libavutil/frame.h | 7 +
> libavutil/hdr_dynamic_vivid_metadata.c | 47 ++++++
> libavutil/hdr_dynamic_vivid_metadata.h | 285 +++++++++++++++++++++++++++++++++
> libavutil/version.h | 2 +-
> 6 files changed, 343 insertions(+), 1 deletion(-)
> create mode 100644 libavutil/hdr_dynamic_vivid_metadata.c
> create mode 100644 libavutil/hdr_dynamic_vivid_metadata.h
>
> diff --git a/libavutil/Makefile b/libavutil/Makefile
> index d17876d..a8d7587 100644
> --- a/libavutil/Makefile
> +++ b/libavutil/Makefile
> @@ -34,6 +34,7 @@ HEADERS = adler32.h \
> frame.h \
> hash.h \
> hdr_dynamic_metadata.h \
> + hdr_dynamic_vivid_metadata.h \
> hmac.h \
> hwcontext.h \
> hwcontext_cuda.h \
> @@ -130,6 +131,7 @@ OBJS = adler32.o \
> frame.o \
> hash.o \
> hdr_dynamic_metadata.o \
> + hdr_dynamic_vivid_metadata.o \
> hmac.o \
> hwcontext.o \
> imgutils.o \
> diff --git a/libavutil/frame.c b/libavutil/frame.c
> index 8997c85..b035e28 100644
> --- a/libavutil/frame.c
> +++ b/libavutil/frame.c
> @@ -723,6 +723,7 @@ const char *av_frame_side_data_name(enum AVFrameSideDataType type)
> case AV_FRAME_DATA_SPHERICAL: return "Spherical Mapping";
> case AV_FRAME_DATA_ICC_PROFILE: return "ICC profile";
> case AV_FRAME_DATA_DYNAMIC_HDR_PLUS: return "HDR Dynamic Metadata SMPTE2094-40 (HDR10+)";
> + case AV_FRAME_DATA_DYNAMIC_HDR_VIVID: return "HDR Dynamic Metadata CUVA 005.1 2021 (Vivid)";
> case AV_FRAME_DATA_REGIONS_OF_INTEREST: return "Regions Of Interest";
> case AV_FRAME_DATA_VIDEO_ENC_PARAMS: return "Video encoding parameters";
> case AV_FRAME_DATA_SEI_UNREGISTERED: return "H.26[45] User Data Unregistered SEI message";
> diff --git a/libavutil/frame.h b/libavutil/frame.h
> index 18e239f..32cde3c 100644
> --- a/libavutil/frame.h
> +++ b/libavutil/frame.h
> @@ -158,6 +158,13 @@ enum AVFrameSideDataType {
> AV_FRAME_DATA_DYNAMIC_HDR_PLUS,
>
> /**
> + * HDR Vivid dynamic metadata associated with a video frame. The payload is
> + * an AVDynamicHDRVivid type and contains information for color
> + * volume transform - CUVA 005.1-2021.
> + */
> + AV_FRAME_DATA_DYNAMIC_HDR_VIVID,
> +
Always add at the end. You are breaking ABI otherwise.
> + /**
> * Regions Of Interest, the data is an array of AVRegionOfInterest type, the number of
> * array element is implied by AVFrameSideData.size / AVRegionOfInterest.self_size.
> */
More information about the ffmpeg-devel
mailing list