Hello,

What actually is this OETF? Is it power 1/2.4? Or reversed BT.1886?

Best regards,
Shengyu

________________________________
发件人: amd-gfx <amd-gfx-boun...@lists.freedesktop.org> 代表 Alex Hung 
<alex.h...@amd.com>
发送时间: Friday, August 15, 2025 11:50:20 AM
收件人: dri-devel@lists.freedesktop.org <dri-devel@lists.freedesktop.org>; 
amd-...@lists.freedesktop.org <amd-...@lists.freedesktop.org>
抄送: wayland-de...@lists.freedesktop.org <wayland-de...@lists.freedesktop.org>; 
harry.wentl...@amd.com <harry.wentl...@amd.com>; alex.h...@amd.com 
<alex.h...@amd.com>; leo....@amd.com <leo....@amd.com>; 
ville.syrj...@linux.intel.com <ville.syrj...@linux.intel.com>; 
pekka.paala...@collabora.com <pekka.paala...@collabora.com>; 
cont...@emersion.fr <cont...@emersion.fr>; m...@igalia.com <m...@igalia.com>; 
jad...@redhat.com <jad...@redhat.com>; sebastian.w...@redhat.com 
<sebastian.w...@redhat.com>; shashank.sha...@amd.com <shashank.sha...@amd.com>; 
ago...@nvidia.com <ago...@nvidia.com>; jos...@froggi.es <jos...@froggi.es>; 
mdaen...@redhat.com <mdaen...@redhat.com>; aleix...@kde.org <aleix...@kde.org>; 
xaver.h...@gmail.com <xaver.h...@gmail.com>; victo...@system76.com 
<victo...@system76.com>; dan...@ffwll.ch <dan...@ffwll.ch>; 
uma.shan...@intel.com <uma.shan...@intel.com>; quic_nas...@quicinc.com 
<quic_nas...@quicinc.com>; quic_cbr...@quicinc.com <quic_cbr...@quicinc.com>; 
quic_abhin...@quicinc.com <quic_abhin...@quicinc.com>; mar...@marcan.st 
<mar...@marcan.st>; liviu.du...@arm.com <liviu.du...@arm.com>; 
sashamcint...@google.com <sashamcint...@google.com>; 
chaitanya.kumar.bo...@intel.com <chaitanya.kumar.bo...@intel.com>; 
louis.chau...@bootlin.com <louis.chau...@bootlin.com>; mca...@igalia.com 
<mca...@igalia.com>; nfrapr...@collabora.com <nfrapr...@collabora.com>; Daniel 
Stone <dani...@collabora.com>
主题: [PATCH V11 31/47] drm/colorop: add BT2020/BT709 OETF and Inverse OETF

From: Harry Wentland <harry.wentl...@amd.com>

The BT.709 and BT.2020 OETFs are the same, the only difference
being that the BT.2020 variant is defined with more precision
for 10 and 12-bit per color encodings.

Both are used as encoding functions for video content, and are
therefore defined as OETF (opto-electronic transfer function)
instead of as EOTF (electro-optical transfer function).

Signed-off-by: Alex Hung <alex.h...@amd.com>
Signed-off-by: Harry Wentland <harry.wentl...@amd.com>
Reviewed-by: Daniel Stone <dani...@collabora.com>
Reviewed-by: Simon Ser <cont...@emersion.fr>
---
v9:
 - Move DRM_COLOROP_1D_CURVE_BT2020_* from middle to end (Simon Ser)

 drivers/gpu/drm/drm_colorop.c |  2 ++
 include/drm/drm_colorop.h     | 23 +++++++++++++++++++++++
 2 files changed, 25 insertions(+)

diff --git a/drivers/gpu/drm/drm_colorop.c b/drivers/gpu/drm/drm_colorop.c
index 5bb45963fa1f..c245a3ff45d3 100644
--- a/drivers/gpu/drm/drm_colorop.c
+++ b/drivers/gpu/drm/drm_colorop.c
@@ -72,6 +72,8 @@ static const char * const colorop_curve_1d_type_names[] = {
         [DRM_COLOROP_1D_CURVE_SRGB_INV_EOTF] = "sRGB Inverse EOTF",
         [DRM_COLOROP_1D_CURVE_PQ_125_EOTF] = "PQ 125 EOTF",
         [DRM_COLOROP_1D_CURVE_PQ_125_INV_EOTF] = "PQ 125 Inverse EOTF",
+       [DRM_COLOROP_1D_CURVE_BT2020_INV_OETF] = "BT.2020 Inverse OETF",
+       [DRM_COLOROP_1D_CURVE_BT2020_OETF] = "BT.2020 OETF",
 };


diff --git a/include/drm/drm_colorop.h b/include/drm/drm_colorop.h
index a38c90f61dc6..c6d2b289e3cf 100644
--- a/include/drm/drm_colorop.h
+++ b/include/drm/drm_colorop.h
@@ -83,6 +83,29 @@ enum drm_colorop_curve_1d_type {
          */
         DRM_COLOROP_1D_CURVE_PQ_125_INV_EOTF,

+       /**
+        * @DRM_COLOROP_1D_CURVE_BT2020_INV_OETF:
+        *
+        * enum string "BT.2020 Inverse OETF"
+        *
+        * The inverse of &DRM_COLOROP_1D_CURVE_BT2020_OETF
+        */
+       DRM_COLOROP_1D_CURVE_BT2020_INV_OETF,
+
+       /**
+        * @DRM_COLOROP_1D_CURVE_BT2020_OETF:
+        *
+        * enum string "BT.2020 OETF"
+        *
+        * The BT.2020/BT.709 transfer function. The BT.709 and BT.2020
+        * transfer functions are the same, the only difference is that
+        * BT.2020 is defined with more precision for 10 and 12-bit
+        * encodings.
+        *
+        *
+        */
+       DRM_COLOROP_1D_CURVE_BT2020_OETF,
+
         /**
          * @DRM_COLOROP_1D_CURVE_COUNT:
          *
--
2.43.0

Reply via email to