@@ -1009,6 +1009,59 @@ void video_closest_frmival(const struct device *dev, enum video_endpoint_id ep,
1009
1009
*/
1010
1010
#define VIDEO_PIX_FMT_SRGGB14P VIDEO_FOURCC('p', 'R', 'E', 'E')
1011
1011
1012
+ /**
1013
+ * @}
1014
+ */
1015
+
1016
+ /**
1017
+ * @name Grayscale formats
1018
+ * Luminance (Y) channel only, in various bit depth and packing.
1019
+ *
1020
+ * When the format includes more than 8-bit per pixel, a strategy becomes needed to pack
1021
+ * the bits over multiple bytes, as illustrated for each format.
1022
+ *
1023
+ * The number above the 'Y', 'y' are hints about which pixel number the following bits belong to.
1024
+ *
1025
+ * @{
1026
+ */
1027
+
1028
+ /**
1029
+ * Same as Y8 (8-bit luma-only) following the standard FOURCC naming,
1030
+ * or L8 in some graphics libraries.
1031
+ *
1032
+ * @code{.unparsed}
1033
+ * 0 1 2 3
1034
+ * | Yyyyyyyy | Yyyyyyyy | Yyyyyyyy | Yyyyyyyy | ...
1035
+ * @endcode
1036
+ */
1037
+ #define VIDEO_PIX_FMT_GREY VIDEO_FOURCC('G', 'R', 'E', 'Y')
1038
+
1039
+ /**
1040
+ * @code{.unparsed}
1041
+ * 0 1 2 3 3 2 1 0
1042
+ * | Yyyyyyyy | Yyyyyyyy | Yyyyyyyy | Yyyyyyyy | yyyyyyyy | ...
1043
+ * @endcode
1044
+ */
1045
+ #define VIDEO_PIX_FMT_Y10P VIDEO_FOURCC('Y', '1', '0', 'P')
1046
+
1047
+ /**
1048
+ * @code{.unparsed}
1049
+ * 0 1 1 0 2 3 3 2
1050
+ * | Yyyyyyyy | Yyyyyyyy | yyyyyyyy | Yyyyyyyy | Yyyyyyyy | yyyyyyyy | ...
1051
+ * | Yyyyyyyy | Yyyyyyyy | yyyyyyyy | Yyyyyyyy | Yyyyyyyy | yyyyyyyy | ...
1052
+ * @endcode
1053
+ */
1054
+ #define VIDEO_PIX_FMT_Y12P VIDEO_FOURCC('Y', '1', '2', 'P')
1055
+
1056
+ /**
1057
+ * @code{.unparsed}
1058
+ * 0 1 2 3 1 0 2 1 3 2
1059
+ * | Yyyyyyyy | Yyyyyyyy | Yyyyyyyy | Yyyyyyyy | yyyyyyyy yyyyyyyy yyyyyyyy | ...
1060
+ * | Yyyyyyyy | Yyyyyyyy | Yyyyyyyy | Yyyyyyyy | yyyyyyyy yyyyyyyy yyyyyyyy | ...
1061
+ * @endcode
1062
+ */
1063
+ #define VIDEO_PIX_FMT_Y14P VIDEO_FOURCC('Y', '1', '4', 'P')
1064
+
1012
1065
/**
1013
1066
* @}
1014
1067
*/
@@ -1112,6 +1165,7 @@ static inline unsigned int video_bits_per_pixel(uint32_t pixfmt)
1112
1165
case VIDEO_PIX_FMT_GBRG8 :
1113
1166
case VIDEO_PIX_FMT_GRBG8 :
1114
1167
case VIDEO_PIX_FMT_RGGB8 :
1168
+ case VIDEO_PIX_FMT_GREY :
1115
1169
return 8 ;
1116
1170
case VIDEO_PIX_FMT_SBGGR10P :
1117
1171
case VIDEO_PIX_FMT_SGBRG10P :
0 commit comments