Commit f2449c9d06 for aom
commit f2449c9d0619531aa0f3508ec970e73294d90d4b
Author: Frank Galligan <fgalligan@google.com>
Date: Wed Mar 25 17:52:51 2026 +0000
Add support for more color spaces
New color spaces:
IPT-C2
YCgCo-Re
YCgCo-Ro
Change-Id: I66c5de3c27451c6a3c672bd533fc07369ba85f1a
diff --git a/aom/aom_image.h b/aom/aom_image.h
index 6a73298878..67af54a791 100644
--- a/aom/aom_image.h
+++ b/aom/aom_image.h
@@ -132,10 +132,14 @@ typedef enum aom_matrix_coefficients {
AOM_CICP_MC_SMPTE_2085 = 11, /**< SMPTE ST 2085 YDzDx */
AOM_CICP_MC_CHROMAT_NCL =
12, /**< Chromaticity-derived non-constant luminance */
- AOM_CICP_MC_CHROMAT_CL = 13, /**< Chromaticity-derived constant luminance */
- AOM_CICP_MC_ICTCP = 14, /**< BT.2100 ICtCp */
- AOM_CICP_MC_RESERVED_15 = 15 /**< For future use (values 15-255) */
-} aom_matrix_coefficients_t; /**< alias for enum aom_matrix_coefficients */
+ AOM_CICP_MC_CHROMAT_CL = 13, /**< Chromaticity-derived constant luminance */
+ AOM_CICP_MC_ICTCP = 14, /**< BT.2100 ICtCp */
+ AOM_CICP_MC_RESERVED_15 = 15, /**< For backward compatibility */
+ AOM_CICP_MC_IPT_C2 = 15, /**< IPT-C2 */
+ AOM_CICP_MC_YCGCO_RE = 16, /**< YCgCo-Re */
+ AOM_CICP_MC_YCGCO_RO = 17, /**< YCgCo-Ro */
+ /**< For future use (values 18-255) */
+} aom_matrix_coefficients_t; /**< alias for enum aom_matrix_coefficients */
/*!\brief List of supported color range */
typedef enum aom_color_range {
diff --git a/av1/arg_defs.c b/av1/arg_defs.c
index b5f4c7c08b..ff0f03acc5 100644
--- a/av1/arg_defs.c
+++ b/av1/arg_defs.c
@@ -89,6 +89,9 @@ static const struct arg_enum_list matrix_coefficients_enum[] = {
{ "chromncl", AOM_CICP_MC_CHROMAT_NCL },
{ "chromcl", AOM_CICP_MC_CHROMAT_CL },
{ "ictcp", AOM_CICP_MC_ICTCP },
+ { "ipt-c2", AOM_CICP_MC_IPT_C2 },
+ { "ycgco-re", AOM_CICP_MC_YCGCO_RE },
+ { "ycgco-ro", AOM_CICP_MC_YCGCO_RO },
{ NULL, 0 }
};
diff --git a/av1/av1_cx_iface.c b/av1/av1_cx_iface.c
index 443f62c261..6c7e1f6fac 100644
--- a/av1/av1_cx_iface.c
+++ b/av1/av1_cx_iface.c
@@ -858,7 +858,7 @@ static aom_codec_err_t validate_config(aom_codec_alg_priv_t *ctx,
RANGE_CHECK(extra_cfg, transfer_characteristics, AOM_CICP_TC_BT_709,
AOM_CICP_TC_HLG);
RANGE_CHECK(extra_cfg, matrix_coefficients, AOM_CICP_MC_IDENTITY,
- AOM_CICP_MC_ICTCP);
+ AOM_CICP_MC_YCGCO_RO);
RANGE_CHECK(extra_cfg, color_range, 0, 1);
/* Average corpus complexity is supported only in the case of single pass