[libcamera-devel,v4,0/7] Colour spaces
mbox series

Message ID 20211029132343.1629-1-david.plowman@raspberrypi.com
Headers show
Series
  • Colour spaces
Related show

Message

David Plowman Oct. 29, 2021, 1:23 p.m. UTC
Hi everyone

A fairly small update to this set, to adopt a couple of things from
Naush and to fix a minor conflict. Mostly things are unchanged, so the
highlights are:

* ColorSpace class as before.

* Two ColorSpace fields in the StreamConfiguration, so that
  validate() can't cause a configuration to become unusable.

* I'm not currently signalling errors if the V4L2 classes get passed
  undefined ColorSpaces. Perhaps something to add once all pipeline
  handlers are upgraded?

* And I'm happy to add commits to fill in a basic level of colour
  space handling in other pipeline handlers (please let me know).

Thanks!

David

David Plowman (7):
  libcamera: Add ColorSpace class
  libcamera: Add ColorSpace fields to StreamConfiguration
  libcamera: Convert between ColorSpace class and V4L2 formats
  libcamera: Support passing ColorSpaces to V4L2 video devices
  libcamera: Support passing ColorSpaces to V4L2 subdevices
  libcamera: Add validateColorSpaces to CameraConfiguration class
  libcamera: pipeline: raspberrypi: Support color spaces

 include/libcamera/camera.h                    |   2 +
 include/libcamera/color_space.h               |  88 ++++++
 include/libcamera/internal/v4l2_device.h      |   7 +
 include/libcamera/internal/v4l2_subdevice.h   |   2 +
 include/libcamera/internal/v4l2_videodevice.h |   2 +
 include/libcamera/meson.build                 |   1 +
 include/libcamera/stream.h                    |   4 +
 src/libcamera/camera.cpp                      |  51 ++++
 src/libcamera/camera_sensor.cpp               |   1 +
 src/libcamera/color_space.cpp                 | 257 ++++++++++++++++++
 src/libcamera/meson.build                     |   1 +
 .../pipeline/raspberrypi/raspberrypi.cpp      |  42 +++
 src/libcamera/stream.cpp                      |  25 ++
 src/libcamera/v4l2_device.cpp                 | 171 ++++++++++++
 src/libcamera/v4l2_subdevice.cpp              |  37 ++-
 src/libcamera/v4l2_videodevice.cpp            |  67 ++++-
 16 files changed, 753 insertions(+), 5 deletions(-)
 create mode 100644 include/libcamera/color_space.h
 create mode 100644 src/libcamera/color_space.cpp