[media] DocBook media: fix xvYCC601 documentation
The documentation of the xvYCC601 Y'CbCr encoding was part of the SMPTE 170M (SDTV) colorspace, but it should have been part of the Rec. 709 (HDTV) colorspace as per the xvYCC standard. This change only affects the documentation and not any code. Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
This commit is contained in:
Родитель
2438e78a48
Коммит
e6d72d2051
|
@ -666,8 +666,7 @@ as the SMPTE C set, so this colorspace is sometimes called SMPTE C as well.</par
|
||||||
<variablelist>
|
<variablelist>
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term>The transfer function defined for SMPTE 170M is the same as the
|
<term>The transfer function defined for SMPTE 170M is the same as the
|
||||||
one defined in Rec. 709. Normally L is in the range [0…1], but for the extended
|
one defined in Rec. 709.</term>
|
||||||
gamut xvYCC encoding values outside that range are allowed.</term>
|
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>L' = -1.099(-L)<superscript>0.45</superscript> + 0.099 for L ≤ -0.018</para>
|
<para>L' = -1.099(-L)<superscript>0.45</superscript> + 0.099 for L ≤ -0.018</para>
|
||||||
<para>L' = 4.5L for -0.018 < L < 0.018</para>
|
<para>L' = 4.5L for -0.018 < L < 0.018</para>
|
||||||
|
@ -702,25 +701,6 @@ defined in the <xref linkend="itu601" /> standard and this colorspace is sometim
|
||||||
though BT.601 does not mention any color primaries.</para>
|
though BT.601 does not mention any color primaries.</para>
|
||||||
<para>The default quantization is limited range, but full range is possible although
|
<para>The default quantization is limited range, but full range is possible although
|
||||||
rarely seen.</para>
|
rarely seen.</para>
|
||||||
<para>The <constant>V4L2_YCBCR_ENC_601</constant> encoding as described above is the
|
|
||||||
default for this colorspace, but it can be overridden with <constant>V4L2_YCBCR_ENC_709</constant>,
|
|
||||||
in which case the Rec. 709 Y'CbCr encoding is used.</para>
|
|
||||||
<variablelist>
|
|
||||||
<varlistentry>
|
|
||||||
<term>The xvYCC 601 encoding (<constant>V4L2_YCBCR_ENC_XV601</constant>, <xref linkend="xvycc" />) is similar
|
|
||||||
to the BT.601 encoding, but it allows for R', G' and B' values that are outside the range
|
|
||||||
[0…1]. The resulting Y', Cb and Cr values are scaled and offset:</term>
|
|
||||||
<listitem>
|
|
||||||
<para>Y' = (219 / 255) * (0.299R' + 0.587G' + 0.114B') + (16 / 255)</para>
|
|
||||||
<para>Cb = (224 / 255) * (-0.169R' - 0.331G' + 0.5B')</para>
|
|
||||||
<para>Cr = (224 / 255) * (0.5R' - 0.419G' - 0.081B')</para>
|
|
||||||
</listitem>
|
|
||||||
</varlistentry>
|
|
||||||
</variablelist>
|
|
||||||
<para>Y' is clamped to the range [0…1] and Cb and Cr are clamped
|
|
||||||
to the range [-0.5…0.5]. The non-standard xvYCC 709 encoding can also be used by selecting
|
|
||||||
<constant>V4L2_YCBCR_ENC_XV709</constant>. The xvYCC encodings always use full range
|
|
||||||
quantization.</para>
|
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section>
|
<section>
|
||||||
|
@ -803,6 +783,7 @@ rarely seen.</para>
|
||||||
<para>The <constant>V4L2_YCBCR_ENC_709</constant> encoding described above is the default
|
<para>The <constant>V4L2_YCBCR_ENC_709</constant> encoding described above is the default
|
||||||
for this colorspace, but it can be overridden with <constant>V4L2_YCBCR_ENC_601</constant>, in which
|
for this colorspace, but it can be overridden with <constant>V4L2_YCBCR_ENC_601</constant>, in which
|
||||||
case the BT.601 Y'CbCr encoding is used.</para>
|
case the BT.601 Y'CbCr encoding is used.</para>
|
||||||
|
<para>Two additional extended gamut Y'CbCr encodings are also possible with this colorspace:</para>
|
||||||
<variablelist>
|
<variablelist>
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term>The xvYCC 709 encoding (<constant>V4L2_YCBCR_ENC_XV709</constant>, <xref linkend="xvycc" />)
|
<term>The xvYCC 709 encoding (<constant>V4L2_YCBCR_ENC_XV709</constant>, <xref linkend="xvycc" />)
|
||||||
|
@ -815,10 +796,22 @@ is similar to the Rec. 709 encoding, but it allows for R', G' and B' values that
|
||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
</variablelist>
|
</variablelist>
|
||||||
|
<variablelist>
|
||||||
|
<varlistentry>
|
||||||
|
<term>The xvYCC 601 encoding (<constant>V4L2_YCBCR_ENC_XV601</constant>, <xref linkend="xvycc" />) is similar
|
||||||
|
to the BT.601 encoding, but it allows for R', G' and B' values that are outside the range
|
||||||
|
[0…1]. The resulting Y', Cb and Cr values are scaled and offset:</term>
|
||||||
|
<listitem>
|
||||||
|
<para>Y' = (219 / 255) * (0.299R' + 0.587G' + 0.114B') + (16 / 255)</para>
|
||||||
|
<para>Cb = (224 / 255) * (-0.169R' - 0.331G' + 0.5B')</para>
|
||||||
|
<para>Cr = (224 / 255) * (0.5R' - 0.419G' - 0.081B')</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
</variablelist>
|
||||||
<para>Y' is clamped to the range [0…1] and Cb and Cr are clamped
|
<para>Y' is clamped to the range [0…1] and Cb and Cr are clamped
|
||||||
to the range [-0.5…0.5]. The non-standard xvYCC 601 encoding can also be used by
|
to the range [-0.5…0.5]. The non-standard xvYCC 709 or xvYCC 601 encodings can be used by
|
||||||
selecting <constant>V4L2_YCBCR_ENC_XV601</constant>. The xvYCC encodings always use full
|
selecting <constant>V4L2_YCBCR_ENC_XV709</constant> or <constant>V4L2_YCBCR_ENC_XV601</constant>.
|
||||||
range quantization.</para>
|
The xvYCC encodings always use full range quantization.</para>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section>
|
<section>
|
||||||
|
|
Загрузка…
Ссылка в новой задаче