Non-MIPI RAWxx 'packed':
Besides MIPI CSI-2 ordered RAW formats, it would also be useful to have 'packed' order. This is often the format used downstream of the CSI-2 receiver, for example for data being sent to an ISP. This is also what will be pulled from a camera image file.
YUVxx:
MIPI CSI-2 defines seven YUV formats:
- YUV420 8 bit 'legacy' (H.263/MPEG1 offset chroma spatial sampling)
- YUV420 8 bit (H.263/MPEG1 offset chroma spatial sampling)
- YUV420 8 bit (MPEG2/MPEG4 co-sited chroma spatial sampling)
- YUV420 10 bit (H.263/MPEG1 offset chroma spatial sampling)
- YUV420 10 bit (MPEG2/MPEG4 co-sited chroma spatial sampling)
- YUV422 8 bit (sampling as for CCIR656)
- YUV422 10 bit (sampling as for CCIR656)
Ssme notes.
YUV422 8 bit format is the same as fourcc UYVY.
YUV420 modes use an in-between semi-planar format: lines alternate between all Y and multiplexed UYVY (422-like).
CSI-2 YUV 10-bit formats pack bits in the same way as RAW10: most-significant bits sent in four bytes first, then remaining bits packed into one more byte (5 bytes total for 4 components.)
Example: YUV422 10 bit:
byte n+0: U0[9:2]
byte n+1: Y0[9:2]
byte n+2: V0[9:2]
byte n+3: Y1[9:2]
byte n+4: {Y1[1:0], V0[1:0], Y0[1:0], U0[1:0]}
Non-MIPI RAWxx 'packed':
Besides MIPI CSI-2 ordered RAW formats, it would also be useful to have 'packed' order. This is often the format used downstream of the CSI-2 receiver, for example for data being sent to an ISP. This is also what will be pulled from a camera image file.
YUVxx:
MIPI CSI-2 defines seven YUV formats:
Ssme notes.
YUV422 8 bit format is the same as fourcc UYVY.
YUV420 modes use an in-between semi-planar format: lines alternate between all Y and multiplexed UYVY (422-like).
CSI-2 YUV 10-bit formats pack bits in the same way as RAW10: most-significant bits sent in four bytes first, then remaining bits packed into one more byte (5 bytes total for 4 components.)
Example: YUV422 10 bit:
byte n+0: U0[9:2]
byte n+1: Y0[9:2]
byte n+2: V0[9:2]
byte n+3: Y1[9:2]
byte n+4: {Y1[1:0], V0[1:0], Y0[1:0], U0[1:0]}