18c2ecf20Sopenharmony_ci.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later 28c2ecf20Sopenharmony_ci 38c2ecf20Sopenharmony_ci.. _V4L2-PIX-FMT-M420: 48c2ecf20Sopenharmony_ci 58c2ecf20Sopenharmony_ci************************** 68c2ecf20Sopenharmony_ciV4L2_PIX_FMT_M420 ('M420') 78c2ecf20Sopenharmony_ci************************** 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_ciFormat with ½ horizontal and vertical chroma resolution, also known as 108c2ecf20Sopenharmony_ciYUV 4:2:0. Hybrid plane line-interleaved layout. 118c2ecf20Sopenharmony_ci 128c2ecf20Sopenharmony_ci 138c2ecf20Sopenharmony_ciDescription 148c2ecf20Sopenharmony_ci=========== 158c2ecf20Sopenharmony_ci 168c2ecf20Sopenharmony_ciM420 is a YUV format with ½ horizontal and vertical chroma subsampling 178c2ecf20Sopenharmony_ci(YUV 4:2:0). Pixels are organized as interleaved luma and chroma planes. 188c2ecf20Sopenharmony_ciTwo lines of luma data are followed by one line of chroma data. 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_ciThe luma plane has one byte per pixel. The chroma plane contains 218c2ecf20Sopenharmony_ciinterleaved CbCr pixels subsampled by ½ in the horizontal and vertical 228c2ecf20Sopenharmony_cidirections. Each CbCr pair belongs to four pixels. For example, 238c2ecf20Sopenharmony_ciCb\ :sub:`0`/Cr\ :sub:`0` belongs to Y'\ :sub:`00`, Y'\ :sub:`01`, 248c2ecf20Sopenharmony_ciY'\ :sub:`10`, Y'\ :sub:`11`. 258c2ecf20Sopenharmony_ci 268c2ecf20Sopenharmony_ciAll line lengths are identical: if the Y lines include pad bytes so do 278c2ecf20Sopenharmony_cithe CbCr lines. 288c2ecf20Sopenharmony_ci 298c2ecf20Sopenharmony_ci**Byte Order.** 308c2ecf20Sopenharmony_ciEach cell is one byte. 318c2ecf20Sopenharmony_ci 328c2ecf20Sopenharmony_ci 338c2ecf20Sopenharmony_ci.. flat-table:: 348c2ecf20Sopenharmony_ci :header-rows: 0 358c2ecf20Sopenharmony_ci :stub-columns: 0 368c2ecf20Sopenharmony_ci 378c2ecf20Sopenharmony_ci * - start + 0: 388c2ecf20Sopenharmony_ci - Y'\ :sub:`00` 398c2ecf20Sopenharmony_ci - Y'\ :sub:`01` 408c2ecf20Sopenharmony_ci - Y'\ :sub:`02` 418c2ecf20Sopenharmony_ci - Y'\ :sub:`03` 428c2ecf20Sopenharmony_ci * - start + 4: 438c2ecf20Sopenharmony_ci - Y'\ :sub:`10` 448c2ecf20Sopenharmony_ci - Y'\ :sub:`11` 458c2ecf20Sopenharmony_ci - Y'\ :sub:`12` 468c2ecf20Sopenharmony_ci - Y'\ :sub:`13` 478c2ecf20Sopenharmony_ci * - start + 8: 488c2ecf20Sopenharmony_ci - Cb\ :sub:`00` 498c2ecf20Sopenharmony_ci - Cr\ :sub:`00` 508c2ecf20Sopenharmony_ci - Cb\ :sub:`01` 518c2ecf20Sopenharmony_ci - Cr\ :sub:`01` 528c2ecf20Sopenharmony_ci * - start + 16: 538c2ecf20Sopenharmony_ci - Y'\ :sub:`20` 548c2ecf20Sopenharmony_ci - Y'\ :sub:`21` 558c2ecf20Sopenharmony_ci - Y'\ :sub:`22` 568c2ecf20Sopenharmony_ci - Y'\ :sub:`23` 578c2ecf20Sopenharmony_ci * - start + 20: 588c2ecf20Sopenharmony_ci - Y'\ :sub:`30` 598c2ecf20Sopenharmony_ci - Y'\ :sub:`31` 608c2ecf20Sopenharmony_ci - Y'\ :sub:`32` 618c2ecf20Sopenharmony_ci - Y'\ :sub:`33` 628c2ecf20Sopenharmony_ci * - start + 24: 638c2ecf20Sopenharmony_ci - Cb\ :sub:`10` 648c2ecf20Sopenharmony_ci - Cr\ :sub:`10` 658c2ecf20Sopenharmony_ci - Cb\ :sub:`11` 668c2ecf20Sopenharmony_ci - Cr\ :sub:`11` 678c2ecf20Sopenharmony_ci 688c2ecf20Sopenharmony_ci 698c2ecf20Sopenharmony_ci**Color Sample Location:** 708c2ecf20Sopenharmony_ci 718c2ecf20Sopenharmony_ci 728c2ecf20Sopenharmony_ci 738c2ecf20Sopenharmony_ci.. flat-table:: 748c2ecf20Sopenharmony_ci :header-rows: 0 758c2ecf20Sopenharmony_ci :stub-columns: 0 768c2ecf20Sopenharmony_ci 778c2ecf20Sopenharmony_ci * - 788c2ecf20Sopenharmony_ci - 0 798c2ecf20Sopenharmony_ci - 808c2ecf20Sopenharmony_ci - 1 818c2ecf20Sopenharmony_ci - 2 828c2ecf20Sopenharmony_ci - 838c2ecf20Sopenharmony_ci - 3 848c2ecf20Sopenharmony_ci * - 0 858c2ecf20Sopenharmony_ci - Y 868c2ecf20Sopenharmony_ci - 878c2ecf20Sopenharmony_ci - Y 888c2ecf20Sopenharmony_ci - Y 898c2ecf20Sopenharmony_ci - 908c2ecf20Sopenharmony_ci - Y 918c2ecf20Sopenharmony_ci * - 928c2ecf20Sopenharmony_ci - 938c2ecf20Sopenharmony_ci - C 948c2ecf20Sopenharmony_ci - 958c2ecf20Sopenharmony_ci - 968c2ecf20Sopenharmony_ci - C 978c2ecf20Sopenharmony_ci - 988c2ecf20Sopenharmony_ci * - 1 998c2ecf20Sopenharmony_ci - Y 1008c2ecf20Sopenharmony_ci - 1018c2ecf20Sopenharmony_ci - Y 1028c2ecf20Sopenharmony_ci - Y 1038c2ecf20Sopenharmony_ci - 1048c2ecf20Sopenharmony_ci - Y 1058c2ecf20Sopenharmony_ci * - 1068c2ecf20Sopenharmony_ci * - 2 1078c2ecf20Sopenharmony_ci - Y 1088c2ecf20Sopenharmony_ci - 1098c2ecf20Sopenharmony_ci - Y 1108c2ecf20Sopenharmony_ci - Y 1118c2ecf20Sopenharmony_ci - 1128c2ecf20Sopenharmony_ci - Y 1138c2ecf20Sopenharmony_ci * - 1148c2ecf20Sopenharmony_ci - 1158c2ecf20Sopenharmony_ci - C 1168c2ecf20Sopenharmony_ci - 1178c2ecf20Sopenharmony_ci - 1188c2ecf20Sopenharmony_ci - C 1198c2ecf20Sopenharmony_ci - 1208c2ecf20Sopenharmony_ci * - 3 1218c2ecf20Sopenharmony_ci - Y 1228c2ecf20Sopenharmony_ci - 1238c2ecf20Sopenharmony_ci - Y 1248c2ecf20Sopenharmony_ci - Y 1258c2ecf20Sopenharmony_ci - 1268c2ecf20Sopenharmony_ci - Y 127