[libcamera-devel] [PATCH 0/4] libcamera: PixelFormat: Turn into a class

Niklas Söderlund niklas.soderlund at ragnatech.se
Mon Mar 16 03:40:32 CET 2020


Hello,

This series replaces the PixelFormat definition of a unisgned int with a 
class implementation that can hold both a fourcc and a set of modifiers.  
This is important to allow users of libcamera to look at modifiers.

This series do not make use of the modifiers, a follow up series that 
adds RAW capture to the IPU3 will make use of them to describe the IPU3 
Bayer format memory layout.

Patch 1/4 switch to PixelFormat instead of an unsigned int where a pixel 
format really should be used. Patch 2/4 and 3/4 removes the use of the 
rather ugly ImageFormats helper from the code paths dealing with 
PixelFormats. Finally 4/4 turns PixelFormat into a class.

Niklas Söderlund (4):
  libcamera: Use PixelFormat instead of unsigned int where appropriate
  libcamera: v4l2_videodevice: Remove usage of ImageFormats
  libcamera: pipeline: vimc: Remove internal usage of ImageFormats
  libcamera: PixelFormat: Turn into a class

 include/libcamera/pixelformats.h         |  24 +++++-
 src/cam/main.cpp                         |   8 +-
 src/gstreamer/gstlibcamera-utils.cpp     |  14 ++--
 src/libcamera/include/v4l2_videodevice.h |   2 +-
 src/libcamera/pipeline/ipu3/ipu3.cpp     |   2 +-
 src/libcamera/pipeline/rkisp1/rkisp1.cpp |   2 +-
 src/libcamera/pipeline/uvcvideo.cpp      |  12 +--
 src/libcamera/pipeline/vimc.cpp          |   8 +-
 src/libcamera/pixelformats.cpp           | 101 +++++++++++++++++++++--
 src/libcamera/stream.cpp                 |   2 +-
 src/libcamera/v4l2_videodevice.cpp       |  16 ++--
 src/qcam/format_converter.cpp            |   4 +-
 src/qcam/format_converter.h              |   6 +-
 src/qcam/viewfinder.cpp                  |   2 +-
 src/qcam/viewfinder.h                    |   6 +-
 src/v4l2/v4l2_camera_proxy.cpp           |   4 +-
 16 files changed, 162 insertions(+), 51 deletions(-)

-- 
2.25.1



More information about the libcamera-devel mailing list