libcamera: Add support for 16-bit Bayer formats

Add support for 16-bit Bayer formats.

Signed-off-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
This commit is contained in:
Niklas Söderlund 2020-07-24 10:37:42 +02:00
parent 90c793c698
commit 3437067e9b
3 changed files with 53 additions and 0 deletions

View file

@ -563,6 +563,46 @@ const std::map<PixelFormat, PixelFormatInfo> pixelFormatInfo{
.pixelsPerGroup = 2,
.planes = {{ { 3, 1 }, { 0, 0 }, { 0, 0 } }},
} },
{ formats::SBGGR16, {
.name = "SBGGR16",
.format = formats::SBGGR16,
.v4l2Format = V4L2PixelFormat(V4L2_PIX_FMT_SBGGR16),
.bitsPerPixel = 16,
.colourEncoding = PixelFormatInfo::ColourEncodingRAW,
.packed = false,
.pixelsPerGroup = 2,
.planes = {{ { 4, 1 }, { 0, 0 }, { 0, 0 } }},
} },
{ formats::SGBRG16, {
.name = "SGBRG16",
.format = formats::SGBRG16,
.v4l2Format = V4L2PixelFormat(V4L2_PIX_FMT_SGBRG16),
.bitsPerPixel = 16,
.colourEncoding = PixelFormatInfo::ColourEncodingRAW,
.packed = false,
.pixelsPerGroup = 2,
.planes = {{ { 4, 1 }, { 0, 0 }, { 0, 0 } }},
} },
{ formats::SGRBG16, {
.name = "SGRBG16",
.format = formats::SGRBG16,
.v4l2Format = V4L2PixelFormat(V4L2_PIX_FMT_SGRBG16),
.bitsPerPixel = 16,
.colourEncoding = PixelFormatInfo::ColourEncodingRAW,
.packed = false,
.pixelsPerGroup = 2,
.planes = {{ { 4, 1 }, { 0, 0 }, { 0, 0 } }},
} },
{ formats::SRGGB16, {
.name = "SRGGB16",
.format = formats::SRGGB16,
.v4l2Format = V4L2PixelFormat(V4L2_PIX_FMT_SRGGB16),
.bitsPerPixel = 16,
.colourEncoding = PixelFormatInfo::ColourEncodingRAW,
.packed = false,
.pixelsPerGroup = 2,
.planes = {{ { 4, 1 }, { 0, 0 }, { 0, 0 } }},
} },
{ formats::SBGGR10_IPU3, {
.name = "SBGGR10_IPU3",
.format = formats::SBGGR10_IPU3,