[vlc-commits] [Git][videolan/vlc][3.0.x] access/v4l2: add support for V4L2_PIX_FMT_ABGR32 and V4L2_PIX_FMT_XBGR32

Steve Lhomme (@robUx4) gitlab at videolan.org
Sat Dec 7 14:00:40 UTC 2024



Steve Lhomme pushed to branch 3.0.x at VideoLAN / VLC


Commits:
9c2fecde by Martin Tuma at 2024-12-07T13:36:15+00:00
access/v4l2: add support for V4L2_PIX_FMT_ABGR32 and V4L2_PIX_FMT_XBGR32

Fix broken v4l2 pixel format selection when the device supports/uses
the V4L2_PIX_FMT_ABGR32 or V4L2_PIX_FMT_XBGR32 pixel formats.

See the v4l2 documentation for the pixel formats details:
https://docs.kernel.org/userspace-api/media/v4l/pixfmt-rgb.html

- - - - -


1 changed file:

- modules/access/v4l2/demux.c


Changes:

=====================================
modules/access/v4l2/demux.c
=====================================
@@ -155,10 +155,13 @@ static const vlc_v4l2_fmt_t v4l2_fmts[] =
 //  { V4L2_PIX_FMT_NV12MT,    },
 //  { V4L2_PIX_FMT_M420,      },
 
+    { V4L2_PIX_FMT_ABGR32,  VLC_CODEC_BGRA, 4, 0, 0, 0 },
+
     /* Packed RGB */
 #ifdef WORDS_BIGENDIAN
     { V4L2_PIX_FMT_RGB32,   VLC_CODEC_RGB32, 4, 0xFF00, 0xFF0000, 0xFF000000 },
     { V4L2_PIX_FMT_BGR32,   VLC_CODEC_RGB32, 4, 0xFF000000, 0xFF0000, 0xFF00 },
+    { V4L2_PIX_FMT_XBGR32,  VLC_CODEC_RGB32, 4, 0xFF000000, 0xFF0000, 0xFF00 },
     { V4L2_PIX_FMT_RGB24,   VLC_CODEC_RGB24, 3, 0xFF0000, 0x00FF00, 0x0000FF },
     { V4L2_PIX_FMT_BGR24,   VLC_CODEC_RGB24, 3, 0x0000FF, 0x00FF00, 0xFF0000 },
 //  { V4L2_PIX_FMT_BGR666,    },
@@ -170,6 +173,7 @@ static const vlc_v4l2_fmt_t v4l2_fmts[] =
 #else
     { V4L2_PIX_FMT_RGB32,   VLC_CODEC_RGB32, 4, 0x0000FF, 0x00FF00, 0xFF0000 },
     { V4L2_PIX_FMT_BGR32,   VLC_CODEC_RGB32, 4, 0xFF0000, 0x00FF00, 0x0000FF },
+    { V4L2_PIX_FMT_XBGR32,  VLC_CODEC_RGB32, 4, 0xFF0000, 0x00FF00, 0x0000FF },
     { V4L2_PIX_FMT_RGB24,   VLC_CODEC_RGB24, 3, 0x0000FF, 0x00FF00, 0xFF0000 },
     { V4L2_PIX_FMT_BGR24,   VLC_CODEC_RGB24, 3, 0xFF0000, 0x00FF00, 0x0000FF },
 //  { V4L2_PIX_FMT_BGR666,    },



View it on GitLab: https://code.videolan.org/videolan/vlc/-/commit/9c2fecdeedfc73d2dd75af6277c3eea9e6545964

-- 
View it on GitLab: https://code.videolan.org/videolan/vlc/-/commit/9c2fecdeedfc73d2dd75af6277c3eea9e6545964
You're receiving this email because of your account on code.videolan.org.


VideoLAN code repository instance


More information about the vlc-commits mailing list