On Tue, Mar 19, 2019 at 07:29:18PM -0400, Nicolas Dufresne wrote: > All RGB mapping should be surrounded by ifdef, because many (not all) > DRM formats represent the order of component when placed in a CPU > register, unlike V4L2 which uses memory order. I've pick this one > randomly, but this one on most system, little endian, will match > V4L2_PIX_FMT_XBGR32. This type of complex mapping can be found in > multiple places, notably in GStreamer: > > https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/blob/master/sys/kms/gstkmsutils.c#L45 > I do sort-of wonder if it's worth trying to switch to common fourccs between DRM and V4L2 (and whatever else there is). The V4L2 formats list is quite incomplete and a little quirky in places (V4L2_PIX_FORMAT_XBGR32 and V4L2_PIX_FORMAT_XRGB32 naming inconsistency being one. 'X' isn't even next to 'B' in XBGR32). At least for newly-added formats, not using a common definition doesn't make a lot of sense to me. Longer term, I also don't really see any downsides to unification. -Brian