0001 .. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later
0002
0003 .. _V4L2-PIX-FMT-SRGGB12:
0004 .. _v4l2-pix-fmt-sbggr12:
0005 .. _v4l2-pix-fmt-sgbrg12:
0006 .. _v4l2-pix-fmt-sgrbg12:
0007
0008
0009 ***************************************************************************************************************************
0010 V4L2_PIX_FMT_SRGGB12 ('RG12'), V4L2_PIX_FMT_SGRBG12 ('BA12'), V4L2_PIX_FMT_SGBRG12 ('GB12'), V4L2_PIX_FMT_SBGGR12 ('BG12'),
0011 ***************************************************************************************************************************
0012
0013
0014 V4L2_PIX_FMT_SGRBG12
0015 V4L2_PIX_FMT_SGBRG12
0016 V4L2_PIX_FMT_SBGGR12
0017 12-bit Bayer formats expanded to 16 bits
0018
0019
0020 Description
0021 ===========
0022
0023 These four pixel formats are raw sRGB / Bayer formats with 12 bits per
0024 colour. Each colour component is stored in a 16-bit word, with 4 unused
0025 high bits filled with zeros. Each n-pixel row contains n/2 green samples
0026 and n/2 blue or red samples, with alternating red and blue rows. Bytes
0027 are stored in memory in little endian order. They are conventionally
0028 described as GRGR... BGBG..., RGRG... GBGB..., etc. Below is an example
0029 of a small V4L2_PIX_FMT_SBGGR12 image:
0030
0031 **Byte Order.**
0032 Each cell is one byte, the 4 most significant bits in the high bytes are
0033 0.
0034
0035
0036
0037
0038 .. flat-table::
0039 :header-rows: 0
0040 :stub-columns: 0
0041
0042 * - start + 0:
0043 - B\ :sub:`00low`
0044 - B\ :sub:`00high`
0045 - G\ :sub:`01low`
0046 - G\ :sub:`01high`
0047 - B\ :sub:`02low`
0048 - B\ :sub:`02high`
0049 - G\ :sub:`03low`
0050 - G\ :sub:`03high`
0051 * - start + 8:
0052 - G\ :sub:`10low`
0053 - G\ :sub:`10high`
0054 - R\ :sub:`11low`
0055 - R\ :sub:`11high`
0056 - G\ :sub:`12low`
0057 - G\ :sub:`12high`
0058 - R\ :sub:`13low`
0059 - R\ :sub:`13high`
0060 * - start + 16:
0061 - B\ :sub:`20low`
0062 - B\ :sub:`20high`
0063 - G\ :sub:`21low`
0064 - G\ :sub:`21high`
0065 - B\ :sub:`22low`
0066 - B\ :sub:`22high`
0067 - G\ :sub:`23low`
0068 - G\ :sub:`23high`
0069 * - start + 24:
0070 - G\ :sub:`30low`
0071 - G\ :sub:`30high`
0072 - R\ :sub:`31low`
0073 - R\ :sub:`31high`
0074 - G\ :sub:`32low`
0075 - G\ :sub:`32high`
0076 - R\ :sub:`33low`
0077 - R\ :sub:`33high`