162306a36Sopenharmony_ci.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later 262306a36Sopenharmony_ci 362306a36Sopenharmony_ci.. _V4L2-PIX-FMT-SRGGB12: 462306a36Sopenharmony_ci.. _v4l2-pix-fmt-sbggr12: 562306a36Sopenharmony_ci.. _v4l2-pix-fmt-sgbrg12: 662306a36Sopenharmony_ci.. _v4l2-pix-fmt-sgrbg12: 762306a36Sopenharmony_ci 862306a36Sopenharmony_ci 962306a36Sopenharmony_ci*************************************************************************************************************************** 1062306a36Sopenharmony_ciV4L2_PIX_FMT_SRGGB12 ('RG12'), V4L2_PIX_FMT_SGRBG12 ('BA12'), V4L2_PIX_FMT_SGBRG12 ('GB12'), V4L2_PIX_FMT_SBGGR12 ('BG12'), 1162306a36Sopenharmony_ci*************************************************************************************************************************** 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ci 1462306a36Sopenharmony_ciV4L2_PIX_FMT_SGRBG12 1562306a36Sopenharmony_ciV4L2_PIX_FMT_SGBRG12 1662306a36Sopenharmony_ciV4L2_PIX_FMT_SBGGR12 1762306a36Sopenharmony_ci12-bit Bayer formats expanded to 16 bits 1862306a36Sopenharmony_ci 1962306a36Sopenharmony_ci 2062306a36Sopenharmony_ciDescription 2162306a36Sopenharmony_ci=========== 2262306a36Sopenharmony_ci 2362306a36Sopenharmony_ciThese four pixel formats are raw sRGB / Bayer formats with 12 bits per 2462306a36Sopenharmony_cicolour. Each colour component is stored in a 16-bit word, with 4 unused 2562306a36Sopenharmony_cihigh bits filled with zeros. Each n-pixel row contains n/2 green samples 2662306a36Sopenharmony_ciand n/2 blue or red samples, with alternating red and blue rows. Bytes 2762306a36Sopenharmony_ciare stored in memory in little endian order. They are conventionally 2862306a36Sopenharmony_cidescribed as GRGR... BGBG..., RGRG... GBGB..., etc. Below is an example 2962306a36Sopenharmony_ciof a small V4L2_PIX_FMT_SBGGR12 image: 3062306a36Sopenharmony_ci 3162306a36Sopenharmony_ci**Byte Order.** 3262306a36Sopenharmony_ciEach cell is one byte, the 4 most significant bits in the high bytes are 3362306a36Sopenharmony_ci0. 3462306a36Sopenharmony_ci 3562306a36Sopenharmony_ci 3662306a36Sopenharmony_ci 3762306a36Sopenharmony_ci 3862306a36Sopenharmony_ci.. flat-table:: 3962306a36Sopenharmony_ci :header-rows: 0 4062306a36Sopenharmony_ci :stub-columns: 0 4162306a36Sopenharmony_ci 4262306a36Sopenharmony_ci * - start + 0: 4362306a36Sopenharmony_ci - B\ :sub:`00low` 4462306a36Sopenharmony_ci - B\ :sub:`00high` 4562306a36Sopenharmony_ci - G\ :sub:`01low` 4662306a36Sopenharmony_ci - G\ :sub:`01high` 4762306a36Sopenharmony_ci - B\ :sub:`02low` 4862306a36Sopenharmony_ci - B\ :sub:`02high` 4962306a36Sopenharmony_ci - G\ :sub:`03low` 5062306a36Sopenharmony_ci - G\ :sub:`03high` 5162306a36Sopenharmony_ci * - start + 8: 5262306a36Sopenharmony_ci - G\ :sub:`10low` 5362306a36Sopenharmony_ci - G\ :sub:`10high` 5462306a36Sopenharmony_ci - R\ :sub:`11low` 5562306a36Sopenharmony_ci - R\ :sub:`11high` 5662306a36Sopenharmony_ci - G\ :sub:`12low` 5762306a36Sopenharmony_ci - G\ :sub:`12high` 5862306a36Sopenharmony_ci - R\ :sub:`13low` 5962306a36Sopenharmony_ci - R\ :sub:`13high` 6062306a36Sopenharmony_ci * - start + 16: 6162306a36Sopenharmony_ci - B\ :sub:`20low` 6262306a36Sopenharmony_ci - B\ :sub:`20high` 6362306a36Sopenharmony_ci - G\ :sub:`21low` 6462306a36Sopenharmony_ci - G\ :sub:`21high` 6562306a36Sopenharmony_ci - B\ :sub:`22low` 6662306a36Sopenharmony_ci - B\ :sub:`22high` 6762306a36Sopenharmony_ci - G\ :sub:`23low` 6862306a36Sopenharmony_ci - G\ :sub:`23high` 6962306a36Sopenharmony_ci * - start + 24: 7062306a36Sopenharmony_ci - G\ :sub:`30low` 7162306a36Sopenharmony_ci - G\ :sub:`30high` 7262306a36Sopenharmony_ci - R\ :sub:`31low` 7362306a36Sopenharmony_ci - R\ :sub:`31high` 7462306a36Sopenharmony_ci - G\ :sub:`32low` 7562306a36Sopenharmony_ci - G\ :sub:`32high` 7662306a36Sopenharmony_ci - R\ :sub:`33low` 7762306a36Sopenharmony_ci - R\ :sub:`33high` 78