Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 00507a8d authored by Hans Verkuil's avatar Hans Verkuil Committed by Mauro Carvalho Chehab
Browse files

[media] DocBook media: Document the SMPTE 2084 transfer function



Document this new transfer function used by High Dynamic Range content.

Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
parent c732e647
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -186,6 +186,15 @@ Signal - NTSC for Studio Applications"</title>
      <title>SMPTE RP 431-2:2011 "D-Cinema Quality - Reference Projector and Environment"</title>
    </biblioentry>

    <biblioentry id="smpte2084">
      <abbrev>SMPTE&nbsp;ST&nbsp;2084</abbrev>
      <authorgroup>
	<corpauthor>Society of Motion Picture and Television Engineers
(<ulink url="http://www.smpte.org">http://www.smpte.org</ulink>)</corpauthor>
      </authorgroup>
      <title>SMPTE ST 2084:2014 "High Dynamic Range Electro-Optical Transfer Function of Master Reference Displays"</title>
    </biblioentry>

    <biblioentry id="srgb">
      <abbrev>sRGB</abbrev>
      <authorgroup>
+39 −0
Original line number Diff line number Diff line
@@ -609,6 +609,10 @@ colorspaces except for BT.2020 which uses limited range R'G'B' quantization.</pa
	    <entry><constant>V4L2_XFER_FUNC_DCI_P3</constant></entry>
	    <entry>Use the DCI-P3 transfer function.</entry>
	  </row>
	  <row>
	    <entry><constant>V4L2_XFER_FUNC_SMPTE2084</constant></entry>
	    <entry>Use the SMPTE 2084 transfer function.</entry>
	  </row>
	</tbody>
      </tgroup>
    </table>
@@ -1472,6 +1476,41 @@ and <constant>V4L2_QUANTIZATION_FULL_RANGE</constant>.</para>

  </section>

  <section>
    <title>Detailed Transfer Function Descriptions</title>
    <section id="xf-smpte-2084">
      <title>Transfer Function SMPTE 2084 (<constant>V4L2_XFER_FUNC_SMPTE2084</constant>)</title>
      <para>The <xref linkend="smpte2084" /> standard defines the transfer function used by
High Dynamic Range content.</para>
      <variablelist>
	<varlistentry>
          <term>Constants:</term>
	  <listitem>
            <para>m1 = (2610 / 4096) / 4</para>
            <para>m2 = (2523 / 4096) * 128</para>
            <para>c1 = 3424 / 4096</para>
            <para>c2 = (2413 / 4096) * 32</para>
            <para>c3 = (2392 / 4096) * 32</para>
	  </listitem>
	</varlistentry>
	<varlistentry>
          <term>Transfer function:</term>
	  <listitem>
            <para>L' = ((c1 + c2 * L<superscript>m1</superscript>) / (1 + c3 * L<superscript>m1</superscript>))<superscript>m2</superscript></para>
	  </listitem>
	</varlistentry>
      </variablelist>
      <variablelist>
	<varlistentry>
          <term>Inverse Transfer function:</term>
	  <listitem>
            <para>L = (max(L'<superscript>1/m2</superscript> - c1, 0) / (c2 - c3 * L'<superscript>1/m2</superscript>))<superscript>1/m1</superscript></para>
	  </listitem>
	</varlistentry>
      </variablelist>
    </section>
  </section>

  <section id="pixfmt-indexed">
    <title>Indexed Format</title>