2.6.1.6. V4L2_PIX_FMT_IPU3_SBGGR10 ('ip3b'), V4L2_PIX_FMT_IPU3_SGBRG10 ('ip3g'), V4L2_PIX_FMT_IPU3_SGRBG10 ('ip3G'), V4L2_PIX_FMT_IPU3_SRGGB10 ('ip3r')¶
2.6.1.6.1. 10-bit Bayer formats¶
2.6.1.6.1.1. Description¶
These four pixel formats are used by Intel IPU3 driver, they are raw sRGB / Bayer formats with 10 bits per sample with every 25 pixels packed to 32 bytes leaving 6 most significant bits padding in the last byte. The format is little endian.
In other respects this format is similar to V4L2_PIX_FMT_SRGGB10 ('RG10'), V4L2_PIX_FMT_SGRBG10 ('BA10'), V4L2_PIX_FMT_SGBRG10 ('GB10'), V4L2_PIX_FMT_SBGGR10 ('BG10'),. Below is an example of a small image in V4L2_PIX_FMT_IPU3_SBGGR10 format.
Byte Order. Each cell is one byte.
start + 0:  | 
B0000low  | 
G0001low(bits 7--2) B0000high(bits 1--0)  | 
B0002low(bits 7--4) G0001high(bits 3--0)  | 
G0003low(bits 7--6) B0002high(bits 5--0)  | 
start + 4:  | 
G0003high  | 
B0004low  | 
G0005low(bits 7--2) B0004high(bits 1--0)  | 
B0006low(bits 7--4) G0005high(bits 3--0)  | 
start + 8:  | 
G0007low(bits 7--6) B0006high(bits 5--0)  | 
G0007high  | 
B0008low  | 
G0009low(bits 7--2) B0008high(bits 1--0)  | 
start + 12:  | 
B0010low(bits 7--4) G0009high(bits 3--0)  | 
G0011low(bits 7--6) B0010high(bits 5--0)  | 
G0011high  | 
B0012low  | 
start + 16:  | 
G0013low(bits 7--2) B0012high(bits 1--0)  | 
B0014low(bits 7--4) G0013high(bits 3--0)  | 
G0015low(bits 7--6) B0014high(bits 5--0)  | 
G0015high  | 
start + 20  | 
B0016low  | 
G0017low(bits 7--2) B0016high(bits 1--0)  | 
B0018low(bits 7--4) G0017high(bits 3--0)  | 
G0019low(bits 7--6) B0018high(bits 5--0)  | 
start + 24:  | 
G0019high  | 
B0020low  | 
G0021low(bits 7--2) B0020high(bits 1--0)  | 
B0022low(bits 7--4) G0021high(bits 3--0)  | 
start + 28:  | 
G0023low(bits 7--6) B0022high(bits 5--0)  | 
G0023high  | 
B0024low  | 
B0024high(bits 1--0)  | 
start + 32:  | 
G0100low  | 
R0101low(bits 7--2) G0100high(bits 1--0)  | 
G0102low(bits 7--4) R0101high(bits 3--0)  | 
R0103low(bits 7--6) G0102high(bits 5--0)  | 
start + 36:  | 
R0103high  | 
G0104low  | 
R0105low(bits 7--2) G0104high(bits 1--0)  | 
G0106low(bits 7--4) R0105high(bits 3--0)  | 
start + 40:  | 
R0107low(bits 7--6) G0106high(bits 5--0)  | 
R0107high  | 
G0108low  | 
R0109low(bits 7--2) G0108high(bits 1--0)  | 
start + 44:  | 
G0110low(bits 7--4) R0109high(bits 3--0)  | 
R0111low(bits 7--6) G0110high(bits 5--0)  | 
R0111high  | 
G0112low  | 
start + 48:  | 
R0113low(bits 7--2) G0112high(bits 1--0)  | 
G0114low(bits 7--4) R0113high(bits 3--0)  | 
R0115low(bits 7--6) G0114high(bits 5--0)  | 
R0115high  | 
start + 52:  | 
G0116low  | 
R0117low(bits 7--2) G0116high(bits 1--0)  | 
G0118low(bits 7--4) R0117high(bits 3--0)  | 
R0119low(bits 7--6) G0118high(bits 5--0)  | 
start + 56:  | 
R0119high  | 
G0120low  | 
R0121low(bits 7--2) G0120high(bits 1--0)  | 
G0122low(bits 7--4) R0121high(bits 3--0)  | 
start + 60:  | 
R0123low(bits 7--6) G0122high(bits 5--0)  | 
R0123high  | 
G0124low  | 
G0124high(bits 1--0)  | 
start + 64:  | 
B0200low  | 
G0201low(bits 7--2) B0200high(bits 1--0)  | 
B0202low(bits 7--4) G0201high(bits 3--0)  | 
G0203low(bits 7--6) B0202high(bits 5--0)  | 
start + 68:  | 
G0203high  | 
B0204low  | 
G0205low(bits 7--2) B0204high(bits 1--0)  | 
B0206low(bits 7--4) G0205high(bits 3--0)  | 
start + 72:  | 
G0207low(bits 7--6) B0206high(bits 5--0)  | 
G0207high  | 
B0208low  | 
G0209low(bits 7--2) B0208high(bits 1--0)  | 
start + 76:  | 
B0210low(bits 7--4) G0209high(bits 3--0)  | 
G0211low(bits 7--6) B0210high(bits 5--0)  | 
G0211high  | 
B0212low  | 
start + 80:  | 
G0213low(bits 7--2) B0212high(bits 1--0)  | 
B0214low(bits 7--4) G0213high(bits 3--0)  | 
G0215low(bits 7--6) B0214high(bits 5--0)  | 
G0215high  | 
start + 84:  | 
B0216low  | 
G0217low(bits 7--2) B0216high(bits 1--0)  | 
B0218low(bits 7--4) G0217high(bits 3--0)  | 
G0219low(bits 7--6) B0218high(bits 5--0)  | 
start + 88:  | 
G0219high  | 
B0220low  | 
G0221low(bits 7--2) B0220high(bits 1--0)  | 
B0222low(bits 7--4) G0221high(bits 3--0)  | 
start + 92:  | 
G0223low(bits 7--6) B0222high(bits 5--0)  | 
G0223high  | 
B0224low  | 
B0224high(bits 1--0)  | 
start + 96:  | 
G0300low  | 
R0301low(bits 7--2) G0300high(bits 1--0)  | 
G0302low(bits 7--4) R0301high(bits 3--0)  | 
R0303low(bits 7--6) G0302high(bits 5--0)  | 
start + 100:  | 
R0303high  | 
G0304low  | 
R0305low(bits 7--2) G0304high(bits 1--0)  | 
G0306low(bits 7--4) R0305high(bits 3--0)  | 
start + 104:  | 
R0307low(bits 7--6) G0306high(bits 5--0)  | 
R0307high  | 
G0308low  | 
R0309low(bits 7--2) G0308high(bits 1--0)  | 
start + 108:  | 
G0310low(bits 7--4) R0309high(bits 3--0)  | 
R0311low(bits 7--6) G0310high(bits 5--0)  | 
R0311high  | 
G0312low  | 
start + 112:  | 
R0313low(bits 7--2) G0312high(bits 1--0)  | 
G0314low(bits 7--4) R0313high(bits 3--0)  | 
R0315low(bits 7--6) G0314high(bits 5--0)  | 
R0315high  | 
start + 116:  | 
G0316low  | 
R0317low(bits 7--2) G0316high(bits 1--0)  | 
G0318low(bits 7--4) R0317high(bits 3--0)  | 
R0319low(bits 7--6) G0318high(bits 5--0)  | 
start + 120:  | 
R0319high  | 
G0320low  | 
R0321low(bits 7--2) G0320high(bits 1--0)  | 
G0322low(bits 7--4) R0321high(bits 3--0)  | 
start + 124:  | 
R0323low(bits 7--6) G0322high(bits 5--0)  | 
R0323high  | 
G0324low  | 
G0324high(bits 1--0)  |