1*4882a593Smuzhiyun.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later 2*4882a593Smuzhiyun 3*4882a593Smuzhiyun.. _V4L2-PIX-FMT-SRGGB14P: 4*4882a593Smuzhiyun.. _v4l2-pix-fmt-sbggr14p: 5*4882a593Smuzhiyun.. _v4l2-pix-fmt-sgbrg14p: 6*4882a593Smuzhiyun.. _v4l2-pix-fmt-sgrbg14p: 7*4882a593Smuzhiyun 8*4882a593Smuzhiyun******************************************************************************************************************************* 9*4882a593SmuzhiyunV4L2_PIX_FMT_SRGGB14P ('pREE'), V4L2_PIX_FMT_SGRBG14P ('pgEE'), V4L2_PIX_FMT_SGBRG14P ('pGEE'), V4L2_PIX_FMT_SBGGR14P ('pBEE'), 10*4882a593Smuzhiyun******************************************************************************************************************************* 11*4882a593Smuzhiyun 12*4882a593Smuzhiyun*man V4L2_PIX_FMT_SRGGB14P(2)* 13*4882a593Smuzhiyun 14*4882a593SmuzhiyunV4L2_PIX_FMT_SGRBG14P 15*4882a593SmuzhiyunV4L2_PIX_FMT_SGBRG14P 16*4882a593SmuzhiyunV4L2_PIX_FMT_SBGGR14P 17*4882a593Smuzhiyun14-bit packed Bayer formats 18*4882a593Smuzhiyun 19*4882a593Smuzhiyun 20*4882a593SmuzhiyunDescription 21*4882a593Smuzhiyun=========== 22*4882a593Smuzhiyun 23*4882a593SmuzhiyunThese four pixel formats are packed raw sRGB / Bayer formats with 14 24*4882a593Smuzhiyunbits per colour. Every four consecutive samples are packed into seven 25*4882a593Smuzhiyunbytes. Each of the first four bytes contain the eight high order bits 26*4882a593Smuzhiyunof the pixels, and the three following bytes contains the six least 27*4882a593Smuzhiyunsignificants bits of each pixel, in the same order. 28*4882a593Smuzhiyun 29*4882a593SmuzhiyunEach n-pixel row contains n/2 green samples and n/2 blue or red samples, 30*4882a593Smuzhiyunwith alternating green-red and green-blue rows. They are conventionally 31*4882a593Smuzhiyundescribed as GRGR... BGBG..., RGRG... GBGB..., etc. Below is an example 32*4882a593Smuzhiyunof one of these formats: 33*4882a593Smuzhiyun 34*4882a593Smuzhiyun**Byte Order.** 35*4882a593SmuzhiyunEach cell is one byte. 36*4882a593Smuzhiyun 37*4882a593Smuzhiyun.. raw:: latex 38*4882a593Smuzhiyun 39*4882a593Smuzhiyun \footnotesize 40*4882a593Smuzhiyun 41*4882a593Smuzhiyun.. tabularcolumns:: |p{1.8cm}|p{1.0cm}|p{1.0cm}|p{1.0cm}|p{1.1cm}|p{3.3cm}|p{3.3cm}|p{3.3cm}| 42*4882a593Smuzhiyun 43*4882a593Smuzhiyun.. flat-table:: 44*4882a593Smuzhiyun :header-rows: 0 45*4882a593Smuzhiyun :stub-columns: 0 46*4882a593Smuzhiyun :widths: 2 1 1 1 1 3 3 3 47*4882a593Smuzhiyun 48*4882a593Smuzhiyun 49*4882a593Smuzhiyun - .. row 1 50*4882a593Smuzhiyun 51*4882a593Smuzhiyun - start + 0 52*4882a593Smuzhiyun 53*4882a593Smuzhiyun - B\ :sub:`00high` 54*4882a593Smuzhiyun 55*4882a593Smuzhiyun - G\ :sub:`01high` 56*4882a593Smuzhiyun 57*4882a593Smuzhiyun - B\ :sub:`02high` 58*4882a593Smuzhiyun 59*4882a593Smuzhiyun - G\ :sub:`03high` 60*4882a593Smuzhiyun 61*4882a593Smuzhiyun - G\ :sub:`01low bits 1--0`\ (bits 7--6) 62*4882a593Smuzhiyun 63*4882a593Smuzhiyun B\ :sub:`00low bits 5--0`\ (bits 5--0) 64*4882a593Smuzhiyun 65*4882a593Smuzhiyun - B\ :sub:`02low bits 3--0`\ (bits 7--4) 66*4882a593Smuzhiyun 67*4882a593Smuzhiyun G\ :sub:`01low bits 5--2`\ (bits 3--0) 68*4882a593Smuzhiyun 69*4882a593Smuzhiyun - G\ :sub:`03low bits 5--0`\ (bits 7--2) 70*4882a593Smuzhiyun 71*4882a593Smuzhiyun B\ :sub:`02low bits 5--4`\ (bits 1--0) 72*4882a593Smuzhiyun 73*4882a593Smuzhiyun - .. row 2 74*4882a593Smuzhiyun 75*4882a593Smuzhiyun - start + 7 76*4882a593Smuzhiyun 77*4882a593Smuzhiyun - G\ :sub:`10high` 78*4882a593Smuzhiyun 79*4882a593Smuzhiyun - R\ :sub:`11high` 80*4882a593Smuzhiyun 81*4882a593Smuzhiyun - G\ :sub:`12high` 82*4882a593Smuzhiyun 83*4882a593Smuzhiyun - R\ :sub:`13high` 84*4882a593Smuzhiyun 85*4882a593Smuzhiyun - R\ :sub:`11low bits 1--0`\ (bits 7--6) 86*4882a593Smuzhiyun 87*4882a593Smuzhiyun G\ :sub:`10low bits 5--0`\ (bits 5--0) 88*4882a593Smuzhiyun 89*4882a593Smuzhiyun - G\ :sub:`12low bits 3--0`\ (bits 7--4) 90*4882a593Smuzhiyun 91*4882a593Smuzhiyun R\ :sub:`11low bits 5--2`\ (bits 3--0) 92*4882a593Smuzhiyun 93*4882a593Smuzhiyun - R\ :sub:`13low bits 5--0`\ (bits 7--2) 94*4882a593Smuzhiyun 95*4882a593Smuzhiyun G\ :sub:`12low bits 5--4`\ (bits 1--0) 96*4882a593Smuzhiyun 97*4882a593Smuzhiyun - .. row 3 98*4882a593Smuzhiyun 99*4882a593Smuzhiyun - start + 14 100*4882a593Smuzhiyun 101*4882a593Smuzhiyun - B\ :sub:`20high` 102*4882a593Smuzhiyun 103*4882a593Smuzhiyun - G\ :sub:`21high` 104*4882a593Smuzhiyun 105*4882a593Smuzhiyun - B\ :sub:`22high` 106*4882a593Smuzhiyun 107*4882a593Smuzhiyun - G\ :sub:`23high` 108*4882a593Smuzhiyun 109*4882a593Smuzhiyun - G\ :sub:`21low bits 1--0`\ (bits 7--6) 110*4882a593Smuzhiyun 111*4882a593Smuzhiyun B\ :sub:`20low bits 5--0`\ (bits 5--0) 112*4882a593Smuzhiyun 113*4882a593Smuzhiyun - B\ :sub:`22low bits 3--0`\ (bits 7--4) 114*4882a593Smuzhiyun 115*4882a593Smuzhiyun G\ :sub:`21low bits 5--2`\ (bits 3--0) 116*4882a593Smuzhiyun 117*4882a593Smuzhiyun - G\ :sub:`23low bits 5--0`\ (bits 7--2) 118*4882a593Smuzhiyun 119*4882a593Smuzhiyun B\ :sub:`22low bits 5--4`\ (bits 1--0) 120*4882a593Smuzhiyun 121*4882a593Smuzhiyun - .. row 4 122*4882a593Smuzhiyun 123*4882a593Smuzhiyun - start + 21 124*4882a593Smuzhiyun 125*4882a593Smuzhiyun - G\ :sub:`30high` 126*4882a593Smuzhiyun 127*4882a593Smuzhiyun - R\ :sub:`31high` 128*4882a593Smuzhiyun 129*4882a593Smuzhiyun - G\ :sub:`32high` 130*4882a593Smuzhiyun 131*4882a593Smuzhiyun - R\ :sub:`33high` 132*4882a593Smuzhiyun 133*4882a593Smuzhiyun - R\ :sub:`31low bits 1--0`\ (bits 7--6) 134*4882a593Smuzhiyun G\ :sub:`30low bits 5--0`\ (bits 5--0) 135*4882a593Smuzhiyun 136*4882a593Smuzhiyun - G\ :sub:`32low bits 3--0`\ (bits 7--4) 137*4882a593Smuzhiyun R\ :sub:`31low bits 5--2`\ (bits 3--0) 138*4882a593Smuzhiyun 139*4882a593Smuzhiyun - R\ :sub:`33low bits 5--0`\ (bits 7--2) 140*4882a593Smuzhiyun G\ :sub:`32low bits 5--4`\ (bits 1--0) 141*4882a593Smuzhiyun 142*4882a593Smuzhiyun.. raw:: latex 143*4882a593Smuzhiyun 144*4882a593Smuzhiyun \normalsize 145*4882a593Smuzhiyun 146