libcamera: v4l2_subdevice: Add new metadata formats

Support the newly introduced V4L2 media bus formats for metadata. This
includes generic metadata formats, and two sensor-specific embedded data
formats.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
This commit is contained in:
Laurent Pinchart 2024-02-26 12:53:01 +02:00 committed by Jacopo Mondi
parent 57d13c2c63
commit accee0fe1e

View file

@ -742,6 +742,69 @@ const std::map<uint32_t, MediaBusFormatInfo> mediaBusFormatInfo{
.bitsPerPixel = 0, .bitsPerPixel = 0,
.colourEncoding = PixelFormatInfo::ColourEncodingRAW, .colourEncoding = PixelFormatInfo::ColourEncodingRAW,
} }, } },
{ MEDIA_BUS_FMT_META_8, {
.name = "META_8",
.code = MEDIA_BUS_FMT_META_8,
.type = MediaBusFormatInfo::Type::Metadata,
.bitsPerPixel = 8,
.colourEncoding = PixelFormatInfo::ColourEncodingRAW,
} },
{ MEDIA_BUS_FMT_META_10, {
.name = "META_10",
.code = MEDIA_BUS_FMT_META_10,
.type = MediaBusFormatInfo::Type::Metadata,
.bitsPerPixel = 10,
.colourEncoding = PixelFormatInfo::ColourEncodingRAW,
} },
{ MEDIA_BUS_FMT_META_12, {
.name = "META_12",
.code = MEDIA_BUS_FMT_META_12,
.type = MediaBusFormatInfo::Type::Metadata,
.bitsPerPixel = 12,
.colourEncoding = PixelFormatInfo::ColourEncodingRAW,
} },
{ MEDIA_BUS_FMT_META_14, {
.name = "META_14",
.code = MEDIA_BUS_FMT_META_14,
.type = MediaBusFormatInfo::Type::Metadata,
.bitsPerPixel = 14,
.colourEncoding = PixelFormatInfo::ColourEncodingRAW,
} },
{ MEDIA_BUS_FMT_META_16, {
.name = "META_16",
.code = MEDIA_BUS_FMT_META_16,
.type = MediaBusFormatInfo::Type::Metadata,
.bitsPerPixel = 16,
.colourEncoding = PixelFormatInfo::ColourEncodingRAW,
} },
{ MEDIA_BUS_FMT_META_20, {
.name = "META_20",
.code = MEDIA_BUS_FMT_META_20,
.type = MediaBusFormatInfo::Type::Metadata,
.bitsPerPixel = 20,
.colourEncoding = PixelFormatInfo::ColourEncodingRAW,
} },
{ MEDIA_BUS_FMT_META_24, {
.name = "META_24",
.code = MEDIA_BUS_FMT_META_24,
.type = MediaBusFormatInfo::Type::Metadata,
.bitsPerPixel = 24,
.colourEncoding = PixelFormatInfo::ColourEncodingRAW,
} },
{ MEDIA_BUS_FMT_CCS_EMBEDDED, {
.name = "CCS_EMBEDDED",
.code = MEDIA_BUS_FMT_CCS_EMBEDDED,
.type = MediaBusFormatInfo::Type::EmbeddedData,
.bitsPerPixel = 0,
.colourEncoding = PixelFormatInfo::ColourEncodingRAW,
} },
{ MEDIA_BUS_FMT_OV2740_EMBEDDED, {
.name = "OV2740_EMBEDDED",
.code = MEDIA_BUS_FMT_CCS_EMBEDDED,
.type = MediaBusFormatInfo::Type::EmbeddedData,
.bitsPerPixel = 0,
.colourEncoding = PixelFormatInfo::ColourEncodingRAW,
} },
}; };
} /* namespace */ } /* namespace */