libv4lconvert: add support for new pixelformats
PATCH 1/1 libv4lconvert: add support for new pixelformats
Support for alpha-channel aware pixelformats was added. Recognize those formats in libv4lconvert.
Signed-off-by Hans Verkuil <[email protected]>
lib/libv4lconvert/libv4lconvert.c +8 -0
@@ -86,6 +86,10 @@ static const struct v4lconvert_pixfmt supported_src_pixfmts[] = { { V4L2_PIX_FMT_RGB565, 16, 4, 6, 0 }, { V4L2_PIX_FMT_BGR32, 32, 4, 6, 0 }, { V4L2_PIX_FMT_RGB32, 32, 4, 6, 0 }, + { V4L2_PIX_FMT_XBGR32, 32, 4, 6, 0 }, + { V4L2_PIX_FMT_XRGB32, 32, 4, 6, 0 }, + { V4L2_PIX_FMT_ABGR32, 32, 4, 6, 0 }, + { V4L2_PIX_FMT_ARGB32, 32, 4, 6, 0 },/* yuv 4:2:2 formats */ { V4L2_PIX_FMT_YUYV, 16, 5, 4, 0 }, { V4L2_PIX_FMT_YVYU, 16, 5, 4, 0 },
@@ -1121,6 +1125,8 @@ static int v4lconvert_convert_pixfmt(struct v4lconvert_data *data,break ;case V4L2_PIX_FMT_RGB32 : +case V4L2_PIX_FMT_XRGB32 : +case V4L2_PIX_FMT_ARGB32 :if (src_size < (width * height *4 )) {V4LCONVERT_ERR ("short rgb32 data frame\n" ); errno =EPIPE ;
@@ -1143,6 +1149,8 @@ static int v4lconvert_convert_pixfmt(struct v4lconvert_data *data,break ;case V4L2_PIX_FMT_BGR32 : +case V4L2_PIX_FMT_XBGR32 : +case V4L2_PIX_FMT_ABGR32 :if (src_size < (width * height *4 )) {V4LCONVERT_ERR ("short bgr32 data frame\n" ); errno =EPIPE ;
Hi,
Quoted 4 lines · Hans Verkuil
Support for alpha-channel aware pixelformats was added. Recognize those formats in libv4lconvert.
Signed-off-by Hans Verkuil <[email protected]>
Looks good:
Acked-by Hans de Goede <[email protected]>
Feel free to push.
Regards,
Hans
Quoted 35 lines
lib/libv4lconvert/libv4lconvert.c +8
-0@@ -86,6 +86,10 @@ static const struct v4lconvert_pixfmt supported_src_pixfmts[] = { { V4L2_PIX_FMT_RGB565, 16, 4, 6, 0 }, { V4L2_PIX_FMT_BGR32, 32, 4, 6, 0 }, { V4L2_PIX_FMT_RGB32, 32, 4, 6, 0 }, + { V4L2_PIX_FMT_XBGR32, 32, 4, 6, 0 }, + { V4L2_PIX_FMT_XRGB32, 32, 4, 6, 0 }, + { V4L2_PIX_FMT_ABGR32, 32, 4, 6, 0 }, + { V4L2_PIX_FMT_ARGB32, 32, 4, 6, 0 },/* yuv 4:2:2 formats */ { V4L2_PIX_FMT_YUYV, 16, 5, 4, 0 }, { V4L2_PIX_FMT_YVYU, 16, 5, 4, 0 },@@ -1121,6 +1125,8 @@ static int v4lconvert_convert_pixfmt(struct v4lconvert_data *data,break ;case V4L2_PIX_FMT_RGB32 : +case V4L2_PIX_FMT_XRGB32 : +case V4L2_PIX_FMT_ARGB32 :if (src_size < (width * height *4 )) {V4LCONVERT_ERR ("short rgb32 data frame\n" ); errno =EPIPE ;@@ -1143,6 +1149,8 @@ static int v4lconvert_convert_pixfmt(struct v4lconvert_data *data,break ;case V4L2_PIX_FMT_BGR32 : +case V4L2_PIX_FMT_XBGR32 : +case V4L2_PIX_FMT_ABGR32 :if (src_size < (width * height *4 )) {V4LCONVERT_ERR ("short bgr32 data frame\n" ); errno =EPIPE ;