mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-27 03:55:20 +07:00
83eaeb85a5
Add column hints for LaTeX to format columns on the tables inside pixfmt-002.rst and pixfmt-006.rst. Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
296 lines
5.9 KiB
ReStructuredText
296 lines
5.9 KiB
ReStructuredText
.. -*- coding: utf-8; mode: rst -*-
|
|
|
|
****************************
|
|
Defining Colorspaces in V4L2
|
|
****************************
|
|
|
|
In V4L2 colorspaces are defined by four values. The first is the
|
|
colorspace identifier (enum :ref:`v4l2_colorspace <v4l2-colorspace>`)
|
|
which defines the chromaticities, the default transfer function, the
|
|
default Y'CbCr encoding and the default quantization method. The second
|
|
is the transfer function identifier (enum
|
|
:ref:`v4l2_xfer_func <v4l2-xfer-func>`) to specify non-standard
|
|
transfer functions. The third is the Y'CbCr encoding identifier (enum
|
|
:ref:`v4l2_ycbcr_encoding <v4l2-ycbcr-encoding>`) to specify
|
|
non-standard Y'CbCr encodings and the fourth is the quantization
|
|
identifier (enum :ref:`v4l2_quantization <v4l2-quantization>`) to
|
|
specify non-standard quantization methods. Most of the time only the
|
|
colorspace field of struct :ref:`v4l2_pix_format <v4l2-pix-format>`
|
|
or struct :ref:`v4l2_pix_format_mplane <v4l2-pix-format-mplane>`
|
|
needs to be filled in.
|
|
|
|
.. note::
|
|
|
|
The default R'G'B' quantization is full range for all
|
|
colorspaces except for BT.2020 which uses limited range R'G'B'
|
|
quantization.
|
|
|
|
.. tabularcolumns:: |p{6.0cm}|p{11.5cm}|
|
|
|
|
.. _v4l2-colorspace:
|
|
|
|
.. flat-table:: V4L2 Colorspaces
|
|
:header-rows: 1
|
|
:stub-columns: 0
|
|
|
|
|
|
- .. row 1
|
|
|
|
- Identifier
|
|
|
|
- Details
|
|
|
|
- .. row 2
|
|
|
|
- ``V4L2_COLORSPACE_DEFAULT``
|
|
|
|
- The default colorspace. This can be used by applications to let
|
|
the driver fill in the colorspace.
|
|
|
|
- .. row 3
|
|
|
|
- ``V4L2_COLORSPACE_SMPTE170M``
|
|
|
|
- See :ref:`col-smpte-170m`.
|
|
|
|
- .. row 4
|
|
|
|
- ``V4L2_COLORSPACE_REC709``
|
|
|
|
- See :ref:`col-rec709`.
|
|
|
|
- .. row 5
|
|
|
|
- ``V4L2_COLORSPACE_SRGB``
|
|
|
|
- See :ref:`col-srgb`.
|
|
|
|
- .. row 6
|
|
|
|
- ``V4L2_COLORSPACE_ADOBERGB``
|
|
|
|
- See :ref:`col-adobergb`.
|
|
|
|
- .. row 7
|
|
|
|
- ``V4L2_COLORSPACE_BT2020``
|
|
|
|
- See :ref:`col-bt2020`.
|
|
|
|
- .. row 8
|
|
|
|
- ``V4L2_COLORSPACE_DCI_P3``
|
|
|
|
- See :ref:`col-dcip3`.
|
|
|
|
- .. row 9
|
|
|
|
- ``V4L2_COLORSPACE_SMPTE240M``
|
|
|
|
- See :ref:`col-smpte-240m`.
|
|
|
|
- .. row 10
|
|
|
|
- ``V4L2_COLORSPACE_470_SYSTEM_M``
|
|
|
|
- See :ref:`col-sysm`.
|
|
|
|
- .. row 11
|
|
|
|
- ``V4L2_COLORSPACE_470_SYSTEM_BG``
|
|
|
|
- See :ref:`col-sysbg`.
|
|
|
|
- .. row 12
|
|
|
|
- ``V4L2_COLORSPACE_JPEG``
|
|
|
|
- See :ref:`col-jpeg`.
|
|
|
|
- .. row 13
|
|
|
|
- ``V4L2_COLORSPACE_RAW``
|
|
|
|
- The raw colorspace. This is used for raw image capture where the
|
|
image is minimally processed and is using the internal colorspace
|
|
of the device. The software that processes an image using this
|
|
'colorspace' will have to know the internals of the capture
|
|
device.
|
|
|
|
|
|
|
|
.. _v4l2-xfer-func:
|
|
|
|
.. flat-table:: V4L2 Transfer Function
|
|
:header-rows: 1
|
|
:stub-columns: 0
|
|
|
|
|
|
- .. row 1
|
|
|
|
- Identifier
|
|
|
|
- Details
|
|
|
|
- .. row 2
|
|
|
|
- ``V4L2_XFER_FUNC_DEFAULT``
|
|
|
|
- Use the default transfer function as defined by the colorspace.
|
|
|
|
- .. row 3
|
|
|
|
- ``V4L2_XFER_FUNC_709``
|
|
|
|
- Use the Rec. 709 transfer function.
|
|
|
|
- .. row 4
|
|
|
|
- ``V4L2_XFER_FUNC_SRGB``
|
|
|
|
- Use the sRGB transfer function.
|
|
|
|
- .. row 5
|
|
|
|
- ``V4L2_XFER_FUNC_ADOBERGB``
|
|
|
|
- Use the AdobeRGB transfer function.
|
|
|
|
- .. row 6
|
|
|
|
- ``V4L2_XFER_FUNC_SMPTE240M``
|
|
|
|
- Use the SMPTE 240M transfer function.
|
|
|
|
- .. row 7
|
|
|
|
- ``V4L2_XFER_FUNC_NONE``
|
|
|
|
- Do not use a transfer function (i.e. use linear RGB values).
|
|
|
|
- .. row 8
|
|
|
|
- ``V4L2_XFER_FUNC_DCI_P3``
|
|
|
|
- Use the DCI-P3 transfer function.
|
|
|
|
- .. row 9
|
|
|
|
- ``V4L2_XFER_FUNC_SMPTE2084``
|
|
|
|
- Use the SMPTE 2084 transfer function.
|
|
|
|
|
|
|
|
.. _v4l2-ycbcr-encoding:
|
|
|
|
.. tabularcolumns:: |p{6.5cm}|p{11.0cm}|
|
|
|
|
.. flat-table:: V4L2 Y'CbCr Encodings
|
|
:header-rows: 1
|
|
:stub-columns: 0
|
|
|
|
|
|
- .. row 1
|
|
|
|
- Identifier
|
|
|
|
- Details
|
|
|
|
- .. row 2
|
|
|
|
- ``V4L2_YCBCR_ENC_DEFAULT``
|
|
|
|
- Use the default Y'CbCr encoding as defined by the colorspace.
|
|
|
|
- .. row 3
|
|
|
|
- ``V4L2_YCBCR_ENC_601``
|
|
|
|
- Use the BT.601 Y'CbCr encoding.
|
|
|
|
- .. row 4
|
|
|
|
- ``V4L2_YCBCR_ENC_709``
|
|
|
|
- Use the Rec. 709 Y'CbCr encoding.
|
|
|
|
- .. row 5
|
|
|
|
- ``V4L2_YCBCR_ENC_XV601``
|
|
|
|
- Use the extended gamut xvYCC BT.601 encoding.
|
|
|
|
- .. row 6
|
|
|
|
- ``V4L2_YCBCR_ENC_XV709``
|
|
|
|
- Use the extended gamut xvYCC Rec. 709 encoding.
|
|
|
|
- .. row 7
|
|
|
|
- ``V4L2_YCBCR_ENC_SYCC``
|
|
|
|
- Use the extended gamut sYCC encoding.
|
|
|
|
- .. row 8
|
|
|
|
- ``V4L2_YCBCR_ENC_BT2020``
|
|
|
|
- Use the default non-constant luminance BT.2020 Y'CbCr encoding.
|
|
|
|
- .. row 9
|
|
|
|
- ``V4L2_YCBCR_ENC_BT2020_CONST_LUM``
|
|
|
|
- Use the constant luminance BT.2020 Yc'CbcCrc encoding.
|
|
|
|
- .. row 10
|
|
|
|
- ``V4L2_YCBCR_ENC_SMPTE_240M``
|
|
|
|
- Use the SMPTE 240M Y'CbCr encoding.
|
|
|
|
|
|
|
|
.. _v4l2-quantization:
|
|
|
|
.. tabularcolumns:: |p{6.5cm}|p{11.0cm}|
|
|
|
|
.. flat-table:: V4L2 Quantization Methods
|
|
:header-rows: 1
|
|
:stub-columns: 0
|
|
|
|
|
|
- .. row 1
|
|
|
|
- Identifier
|
|
|
|
- Details
|
|
|
|
- .. row 2
|
|
|
|
- ``V4L2_QUANTIZATION_DEFAULT``
|
|
|
|
- Use the default quantization encoding as defined by the
|
|
colorspace. This is always full range for R'G'B' (except for the
|
|
BT.2020 colorspace) and usually limited range for Y'CbCr.
|
|
|
|
- .. row 3
|
|
|
|
- ``V4L2_QUANTIZATION_FULL_RANGE``
|
|
|
|
- Use the full range quantization encoding. I.e. the range [0…1] is
|
|
mapped to [0…255] (with possible clipping to [1…254] to avoid the
|
|
0x00 and 0xff values). Cb and Cr are mapped from [-0.5…0.5] to
|
|
[0…255] (with possible clipping to [1…254] to avoid the 0x00 and
|
|
0xff values).
|
|
|
|
- .. row 4
|
|
|
|
- ``V4L2_QUANTIZATION_LIM_RANGE``
|
|
|
|
- Use the limited range quantization encoding. I.e. the range [0…1]
|
|
is mapped to [16…235]. Cb and Cr are mapped from [-0.5…0.5] to
|
|
[16…240].
|