mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-25 21:54:06 +08:00
media: doc: pixfmt-yuv: Document subsampling in more details
Document YUV subsampling, including chroma spatial siting, and replace the siting examples in individual formats by references to the common documentation. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
This commit is contained in:
parent
a1bcf9b9a7
commit
e3ae4c204d
@ -67,60 +67,5 @@ Each cell is one byte.
|
||||
|
||||
|
||||
**Color Sample Location:**
|
||||
|
||||
|
||||
|
||||
.. flat-table::
|
||||
:header-rows: 0
|
||||
:stub-columns: 0
|
||||
|
||||
* -
|
||||
- 0
|
||||
-
|
||||
- 1
|
||||
- 2
|
||||
-
|
||||
- 3
|
||||
* - 0
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
* -
|
||||
-
|
||||
- C
|
||||
-
|
||||
-
|
||||
- C
|
||||
-
|
||||
* - 1
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
* -
|
||||
* - 2
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
* -
|
||||
-
|
||||
- C
|
||||
-
|
||||
-
|
||||
- C
|
||||
-
|
||||
* - 3
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
Chroma samples are :ref:`interstitially sited<yuv-chroma-centered>`
|
||||
horizontally and vertically.
|
||||
|
@ -72,58 +72,5 @@ Each cell is one byte.
|
||||
|
||||
|
||||
**Color Sample Location:**
|
||||
|
||||
.. flat-table::
|
||||
:header-rows: 0
|
||||
:stub-columns: 0
|
||||
|
||||
* -
|
||||
- 0
|
||||
-
|
||||
- 1
|
||||
- 2
|
||||
-
|
||||
- 3
|
||||
* - 0
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
* -
|
||||
-
|
||||
- C
|
||||
-
|
||||
-
|
||||
- C
|
||||
-
|
||||
* - 1
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
* -
|
||||
* - 2
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
* -
|
||||
-
|
||||
- C
|
||||
-
|
||||
-
|
||||
- C
|
||||
-
|
||||
* - 3
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
Chroma samples are :ref:`interstitially sited<yuv-chroma-centered>`
|
||||
horizontally and vertically.
|
||||
|
@ -84,61 +84,5 @@ Each cell is one byte.
|
||||
|
||||
|
||||
**Color Sample Location:**
|
||||
|
||||
|
||||
|
||||
.. flat-table::
|
||||
:header-rows: 0
|
||||
:stub-columns: 0
|
||||
|
||||
* -
|
||||
- 0
|
||||
-
|
||||
- 1
|
||||
- 2
|
||||
-
|
||||
- 3
|
||||
* - 0
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
* -
|
||||
-
|
||||
- C
|
||||
-
|
||||
-
|
||||
- C
|
||||
-
|
||||
* - 1
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
* -
|
||||
* - 2
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
* -
|
||||
-
|
||||
- C
|
||||
-
|
||||
-
|
||||
-
|
||||
- C
|
||||
-
|
||||
* - 3
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
Chroma samples are :ref:`interstitially sited<yuv-chroma-centered>`
|
||||
horizontally and vertically.
|
||||
|
@ -80,74 +80,5 @@ Each cell is one byte.
|
||||
|
||||
|
||||
**Color Sample Location:**
|
||||
|
||||
|
||||
|
||||
.. flat-table::
|
||||
:header-rows: 0
|
||||
:stub-columns: 0
|
||||
|
||||
* -
|
||||
- 0
|
||||
-
|
||||
- 1
|
||||
- 2
|
||||
-
|
||||
- 3
|
||||
* - 0
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
* -
|
||||
-
|
||||
- C
|
||||
-
|
||||
-
|
||||
- C
|
||||
-
|
||||
* - 1
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
* -
|
||||
-
|
||||
- C
|
||||
-
|
||||
-
|
||||
- C
|
||||
-
|
||||
* -
|
||||
* - 2
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
* -
|
||||
-
|
||||
- C
|
||||
-
|
||||
-
|
||||
- C
|
||||
-
|
||||
* - 3
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
* -
|
||||
-
|
||||
- C
|
||||
-
|
||||
-
|
||||
- C
|
||||
-
|
||||
Chroma samples are :ref:`interstitially sited<yuv-chroma-centered>`
|
||||
horizontally.
|
||||
|
@ -84,74 +84,5 @@ Each cell is one byte.
|
||||
|
||||
|
||||
**Color Sample Location:**
|
||||
|
||||
|
||||
|
||||
.. flat-table::
|
||||
:header-rows: 0
|
||||
:stub-columns: 0
|
||||
|
||||
* -
|
||||
- 0
|
||||
-
|
||||
- 1
|
||||
- 2
|
||||
-
|
||||
- 3
|
||||
* - 0
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
* -
|
||||
-
|
||||
- C
|
||||
-
|
||||
-
|
||||
- C
|
||||
-
|
||||
* - 1
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
* -
|
||||
-
|
||||
- C
|
||||
-
|
||||
-
|
||||
- C
|
||||
-
|
||||
* -
|
||||
* - 2
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
* -
|
||||
-
|
||||
- C
|
||||
-
|
||||
-
|
||||
- C
|
||||
-
|
||||
* - 3
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
* -
|
||||
-
|
||||
- C
|
||||
-
|
||||
-
|
||||
- C
|
||||
-
|
||||
Chroma samples are :ref:`interstitially sited<yuv-chroma-centered>`
|
||||
horizontally.
|
||||
|
@ -66,45 +66,5 @@ Each cell is one byte.
|
||||
|
||||
|
||||
**Color Sample Location:**
|
||||
|
||||
|
||||
|
||||
.. flat-table::
|
||||
:header-rows: 0
|
||||
:stub-columns: 0
|
||||
|
||||
* -
|
||||
- 0
|
||||
-
|
||||
- 1
|
||||
- 2
|
||||
-
|
||||
- 3
|
||||
* - 0
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
* - 1
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
* - 2
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
* - 3
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
Chroma samples are :ref:`interstitially sited<yuv-chroma-centered>`
|
||||
horizontally.
|
||||
|
@ -66,43 +66,5 @@ Each cell is one byte.
|
||||
|
||||
|
||||
**Color Sample Location:**
|
||||
|
||||
.. flat-table::
|
||||
:header-rows: 0
|
||||
:stub-columns: 0
|
||||
|
||||
* -
|
||||
- 0
|
||||
-
|
||||
- 1
|
||||
-
|
||||
- 2
|
||||
- 3
|
||||
* - 0
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
* - 1
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
* - 2
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
* - 3
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
Chroma samples are :ref:`interstitially sited<yuv-chroma-centered>`
|
||||
horizontally.
|
||||
|
@ -89,63 +89,5 @@ Each cell is one byte.
|
||||
|
||||
|
||||
**Color Sample Location:**
|
||||
|
||||
.. flat-table::
|
||||
:header-rows: 0
|
||||
:stub-columns: 0
|
||||
|
||||
* -
|
||||
- 0
|
||||
- 1
|
||||
-
|
||||
- 2
|
||||
- 3
|
||||
- 4
|
||||
- 5
|
||||
-
|
||||
- 6
|
||||
- 7
|
||||
* - 0
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
* - 1
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
* - 2
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
* - 3
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
Chroma samples are :ref:`interstitially sited<yuv-chroma-centered>`
|
||||
horizontally.
|
||||
|
@ -68,60 +68,5 @@ Each cell is one byte.
|
||||
|
||||
|
||||
**Color Sample Location:**
|
||||
|
||||
|
||||
|
||||
.. flat-table::
|
||||
:header-rows: 0
|
||||
:stub-columns: 0
|
||||
|
||||
* -
|
||||
- 0
|
||||
-
|
||||
- 1
|
||||
-
|
||||
- 2
|
||||
-
|
||||
- 3
|
||||
* - 0
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
* -
|
||||
* - 1
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
* -
|
||||
-
|
||||
-
|
||||
-
|
||||
- C
|
||||
-
|
||||
-
|
||||
-
|
||||
* - 2
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
* -
|
||||
* - 3
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
Chroma samples are :ref:`interstitially sited<yuv-chroma-centered>`
|
||||
horizontally and vertically.
|
||||
|
@ -76,40 +76,5 @@ Each cell is one byte.
|
||||
|
||||
|
||||
**Color Sample Location:**
|
||||
|
||||
|
||||
|
||||
.. flat-table::
|
||||
:header-rows: 0
|
||||
:stub-columns: 0
|
||||
|
||||
* -
|
||||
- 0
|
||||
- 1
|
||||
-
|
||||
- 2
|
||||
- 3
|
||||
* - 0
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
* - 1
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
* - 2
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
* - 3
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
Chroma samples are :ref:`interstitially sited<yuv-chroma-centered>`
|
||||
horizontally.
|
||||
|
@ -77,67 +77,5 @@ Each cell is one byte.
|
||||
|
||||
|
||||
**Color Sample Location:**
|
||||
|
||||
|
||||
|
||||
.. flat-table::
|
||||
:header-rows: 0
|
||||
:stub-columns: 0
|
||||
|
||||
* -
|
||||
- 0
|
||||
-
|
||||
- 1
|
||||
-
|
||||
- 2
|
||||
-
|
||||
- 3
|
||||
* - 0
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
* -
|
||||
-
|
||||
- C
|
||||
-
|
||||
-
|
||||
-
|
||||
- C
|
||||
-
|
||||
* - 1
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
* -
|
||||
* - 2
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
* -
|
||||
-
|
||||
- C
|
||||
-
|
||||
-
|
||||
-
|
||||
- C
|
||||
-
|
||||
* - 3
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
Chroma samples are :ref:`interstitially sited<yuv-chroma-centered>`
|
||||
horizontally and vertically.
|
||||
|
@ -86,67 +86,5 @@ Each cell is one byte.
|
||||
|
||||
|
||||
**Color Sample Location:**
|
||||
|
||||
|
||||
|
||||
.. flat-table::
|
||||
:header-rows: 0
|
||||
:stub-columns: 0
|
||||
|
||||
* -
|
||||
- 0
|
||||
-
|
||||
- 1
|
||||
-
|
||||
- 2
|
||||
-
|
||||
- 3
|
||||
* - 0
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
* -
|
||||
-
|
||||
- C
|
||||
-
|
||||
-
|
||||
-
|
||||
- C
|
||||
-
|
||||
* - 1
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
* -
|
||||
* - 2
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
* -
|
||||
-
|
||||
- C
|
||||
-
|
||||
-
|
||||
-
|
||||
- C
|
||||
-
|
||||
* - 3
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
Chroma samples are :ref:`interstitially sited<yuv-chroma-centered>`
|
||||
horizontally and vertically.
|
||||
|
@ -97,45 +97,5 @@ Each cell is one byte.
|
||||
|
||||
|
||||
**Color Sample Location:**
|
||||
|
||||
|
||||
|
||||
.. flat-table::
|
||||
:header-rows: 0
|
||||
:stub-columns: 0
|
||||
|
||||
* -
|
||||
- 0
|
||||
-
|
||||
- 1
|
||||
- 2
|
||||
-
|
||||
- 3
|
||||
* - 0
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
* - 1
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
* - 2
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
* - 3
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
Chroma samples are :ref:`interstitially sited<yuv-chroma-centered>`
|
||||
horizontally.
|
||||
|
@ -85,45 +85,5 @@ Each cell is one byte.
|
||||
|
||||
|
||||
**Color Sample Location:**
|
||||
|
||||
|
||||
|
||||
.. flat-table::
|
||||
:header-rows: 0
|
||||
:stub-columns: 0
|
||||
|
||||
* -
|
||||
- 0
|
||||
-
|
||||
- 1
|
||||
- 2
|
||||
-
|
||||
- 3
|
||||
* - 0
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
* - 1
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
* - 2
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
* - 3
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
Chroma samples are :ref:`interstitially sited<yuv-chroma-centered>`
|
||||
horizontally.
|
||||
|
@ -107,35 +107,4 @@ Each cell is one byte.
|
||||
|
||||
|
||||
**Color Sample Location:**
|
||||
|
||||
|
||||
|
||||
.. flat-table::
|
||||
:header-rows: 0
|
||||
:stub-columns: 0
|
||||
|
||||
* -
|
||||
- 0
|
||||
- 1
|
||||
- 2
|
||||
- 3
|
||||
* - 0
|
||||
- YC
|
||||
- YC
|
||||
- YC
|
||||
- YC
|
||||
* - 1
|
||||
- YC
|
||||
- YC
|
||||
- YC
|
||||
- YC
|
||||
* - 2
|
||||
- YC
|
||||
- YC
|
||||
- YC
|
||||
- YC
|
||||
* - 3
|
||||
- YC
|
||||
- YC
|
||||
- YC
|
||||
- YC
|
||||
Chroma samples are :ref:`co-sited<yuv-chroma-cosited>`.
|
||||
|
@ -69,50 +69,5 @@ Each cell is one byte.
|
||||
|
||||
|
||||
**Color Sample Location:**
|
||||
|
||||
|
||||
|
||||
.. flat-table::
|
||||
:header-rows: 0
|
||||
:stub-columns: 0
|
||||
|
||||
* -
|
||||
- 0
|
||||
-
|
||||
- 1
|
||||
-
|
||||
- 2
|
||||
-
|
||||
- 3
|
||||
* - 0
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
* - 1
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
* - 2
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
* - 3
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
Chroma samples are :ref:`interstitially sited<yuv-chroma-centered>`
|
||||
horizontally.
|
||||
|
@ -66,43 +66,5 @@ Each cell is one byte.
|
||||
|
||||
|
||||
**Color Sample Location:**
|
||||
|
||||
.. flat-table::
|
||||
:header-rows: 0
|
||||
:stub-columns: 0
|
||||
|
||||
* -
|
||||
- 0
|
||||
-
|
||||
- 1
|
||||
- 2
|
||||
-
|
||||
- 3
|
||||
* - 0
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
* - 1
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
* - 2
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
* - 3
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
Chroma samples are :ref:`interstitially sited<yuv-chroma-centered>`
|
||||
horizontally.
|
||||
|
@ -14,11 +14,251 @@ reconstructed by subtracting from the brightness component. See
|
||||
:ref:`colorspaces` for conversion examples. YUV was chosen because
|
||||
early television would only transmit brightness information. To add
|
||||
color in a way compatible with existing receivers a new signal carrier
|
||||
was added to transmit the color difference signals. Secondary in the YUV
|
||||
format the U and V components usually have lower resolution than the Y
|
||||
component. This is an analog video compression technique taking
|
||||
advantage of a property of the human visual system, being more sensitive
|
||||
to brightness information.
|
||||
was added to transmit the color difference signals.
|
||||
|
||||
|
||||
Subsampling
|
||||
===========
|
||||
|
||||
YUV formats commonly encode images with a lower resolution for the chroma
|
||||
components than for the luma component. This compression technique, taking
|
||||
advantage of the human eye being more sensitive to luminance than color
|
||||
differences, is called chroma subsampling.
|
||||
|
||||
While many combinations of subsampling factors in the horizontal and vertical
|
||||
direction are possible, common factors are 1 (no subsampling), 2 and 4, with
|
||||
horizontal subsampling always larger than or equal to vertical subsampling.
|
||||
Common combinations are named as follows.
|
||||
|
||||
- `4:4:4`: No subsampling
|
||||
- `4:2:2`: Horizontal subsampling by 2, no vertical subsampling
|
||||
- `4:2:0`: Horizontal subsampling by 2, vertical subsampling by 2
|
||||
- `4:1:1`: Horizontal subsampling by 4, no vertical subsampling
|
||||
- `4:1:0`: Horizontal subsampling by 4, vertical subsampling by 4
|
||||
|
||||
Subsampling the chroma component effectively creates chroma values that can be
|
||||
located in different spatial locations:
|
||||
|
||||
- .. _yuv-chroma-centered:
|
||||
|
||||
The subsampled chroma value may be calculated by simply averaging the chroma
|
||||
value of two consecutive pixels. It effectively models the chroma of a pixel
|
||||
sited between the two original pixels. This is referred to as centered or
|
||||
interstitially sited chroma.
|
||||
|
||||
- .. _yuv-chroma-cosited:
|
||||
|
||||
The other option is to subsample chroma values in a way that place them in
|
||||
the same spatial sites as the pixels. This may be performed by skipping every
|
||||
other chroma sample (creating aliasing artifacts), or with filters using an
|
||||
odd number of taps. This is referred to as co-sited chroma.
|
||||
|
||||
The following examples show different combination of chroma siting in a 4x4
|
||||
image.
|
||||
|
||||
.. flat-table:: 4:2:2 subsampling, interstitially sited
|
||||
:header-rows: 1
|
||||
:stub-columns: 1
|
||||
|
||||
* -
|
||||
- 0
|
||||
-
|
||||
- 1
|
||||
-
|
||||
- 2
|
||||
-
|
||||
- 3
|
||||
* - 0
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
* - 1
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
* - 2
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
* - 3
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
|
||||
.. flat-table:: 4:2:2 subsampling, co-sited
|
||||
:header-rows: 1
|
||||
:stub-columns: 1
|
||||
|
||||
* -
|
||||
- 0
|
||||
-
|
||||
- 1
|
||||
-
|
||||
- 2
|
||||
-
|
||||
- 3
|
||||
* - 0
|
||||
- Y/C
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y/C
|
||||
-
|
||||
- Y
|
||||
* - 1
|
||||
- Y/C
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y/C
|
||||
-
|
||||
- Y
|
||||
* - 2
|
||||
- Y/C
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y/C
|
||||
-
|
||||
- Y
|
||||
* - 3
|
||||
- Y/C
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y/C
|
||||
-
|
||||
- Y
|
||||
|
||||
.. flat-table:: 4:2:0 subsampling, horizontally interstitially sited, vertically co-sited
|
||||
:header-rows: 1
|
||||
:stub-columns: 1
|
||||
|
||||
* -
|
||||
- 0
|
||||
-
|
||||
- 1
|
||||
-
|
||||
- 2
|
||||
-
|
||||
- 3
|
||||
* - 0
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
* - 1
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
* - 2
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
- C
|
||||
- Y
|
||||
* - 3
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
|
||||
.. flat-table:: 4:1:0 subsampling, horizontally and vertically interstitially sited
|
||||
:header-rows: 1
|
||||
:stub-columns: 1
|
||||
|
||||
* -
|
||||
- 0
|
||||
-
|
||||
- 1
|
||||
-
|
||||
- 2
|
||||
-
|
||||
- 3
|
||||
* - 0
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
* -
|
||||
-
|
||||
-
|
||||
-
|
||||
-
|
||||
-
|
||||
-
|
||||
-
|
||||
* - 1
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
* -
|
||||
-
|
||||
-
|
||||
-
|
||||
- C
|
||||
-
|
||||
-
|
||||
-
|
||||
* - 2
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
* -
|
||||
-
|
||||
-
|
||||
-
|
||||
-
|
||||
-
|
||||
-
|
||||
-
|
||||
* - 3
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
-
|
||||
- Y
|
||||
|
||||
|
||||
.. toctree::
|
||||
|
Loading…
Reference in New Issue
Block a user