[libcamera-devel] [PATCH 00/10] libcamera: Use DRM_FORMAT_* fourcc codes
Jacopo Mondi
jacopo at jmondi.org
Mon Oct 28 00:43:02 CET 2019
Hello,
this series moves libcamera to use the DRM/KMS defined DRM_FORMAT_*
fourcc codes towards applications.
The series starts by updating the kernel headers to v5.2 and importing the
DRM/KMS required headers.
It then introduces a PixelFormat type that aliases an uint32_t, which is used in
all application facing types. The numerical fourcc codes used for PixelFormat
are the DRM/KMS defined DRM_FORMAT_* fourcc codes.
Helpers for conversion to/from PixelFormat and V4L2_PIX_FMT_* are provided in
the V4L2 video device and used in all pipeline handlers. Finally the test
application and QCam are ported to use te DRM/KMS defined pixel codes.
Thanks Laurent for having looked at the series and fixed the nasty DRM/V4L2 RBG
format conversion issues.
Thanks
j
Jacopo Mondi (9):
include: linux: Update headers to Linux v5.2
include: linux: Import DRM/KMS headers from Linux v5.2
include: drm_fourcc: Add Motion-JPEG fourcc code
libcamera: Define PixelFormat type
libcamera: stream: Use the newly defined PixelFormat
libcamera: v4l2_videodevice: Add PixelFormat conversion
libcamera: pipeline: Use PixelFormat for application formats
qcam: Convert to use DRM formats
test: camera: buffer_import: Use DRM/KMS format
Laurent Pinchart (1):
libcamera: formats: Write libcamera in lowercase
include/libcamera/meson.build | 1 +
include/libcamera/pixelformats.h | 18 +
include/libcamera/stream.h | 13 +-
include/linux/drm.h | 1042 ++++++++++++++++++++++
include/linux/drm_fourcc.h | 765 ++++++++++++++++
include/linux/drm_mode.h | 1032 +++++++++++++++++++++
include/linux/media-bus-format.h | 4 +-
include/linux/media.h | 27 +-
include/linux/v4l2-controls.h | 29 +
include/linux/videodev2.h | 31 +-
src/libcamera/formats.cpp | 2 +-
src/libcamera/include/formats.h | 2 +-
src/libcamera/include/v4l2_videodevice.h | 5 +
src/libcamera/meson.build | 1 +
src/libcamera/pipeline/ipu3/ipu3.cpp | 7 +-
src/libcamera/pipeline/rkisp1/rkisp1.cpp | 25 +-
src/libcamera/pipeline/uvcvideo.cpp | 4 +-
src/libcamera/pipeline/vimc.cpp | 15 +-
src/libcamera/pixelformats.cpp | 28 +
src/libcamera/stream.cpp | 17 +-
src/libcamera/v4l2_videodevice.cpp | 141 +++
src/qcam/format_converter.cpp | 30 +-
test/camera/buffer_import.cpp | 4 +-
23 files changed, 3170 insertions(+), 73 deletions(-)
create mode 100644 include/libcamera/pixelformats.h
create mode 100644 include/linux/drm.h
create mode 100644 include/linux/drm_fourcc.h
create mode 100644 include/linux/drm_mode.h
create mode 100644 src/libcamera/pixelformats.cpp
--
2.23.0
More information about the libcamera-devel
mailing list