[libcamera-devel,RFC,0/3] Introduce PostProcessor Interface for CameraStream
mbox series

Message ID 20201008141038.83425-1-email@uajain.com
Headers show
Series
  • Introduce PostProcessor Interface for CameraStream
Related show

Message

Umang Jain Oct. 8, 2020, 2:10 p.m. UTC
This series introduces a post processing generic interface that ideally
abstracts away the processing details (like the exposed JPEG Encoder)
from the CameraStream. We only have one PostProcessor (JPEG) as of now
but the interface is implemented in such a way that there can be many
PostProcessor(s). Patch 2/2 port of JPEG Encoder to PostProcessorJPEG
shows how a PostProcessor shall look. Patch 3/3 adds a further processing
element (a scaler) to this PostProcessor.

Just keeping it RFC to show where this current work is headed. Feel free
to comment on the direction and/or specifics of the work. I would recommend
to leave out the Patch 3/3 for review, as it is still in-flux addressing
the past reviews.

The series is compile test only.

Umang Jain (3):
  android: post_processor: Introduce a PostProcessor interface
  android: jpeg: Port to PostProcessor interface
  android: jpeg: Add a basic NV12 image thumbnailer

 src/android/camera_device.h                   |   1 -
 src/android/camera_stream.cpp                 |  74 ++--------
 src/android/camera_stream.h                   |   9 +-
 src/android/jpeg/encoder.h                    |  25 ----
 ...er_libjpeg.cpp => post_processor_jpeg.cpp} | 103 ++++++++++++--
 ...ncoder_libjpeg.h => post_processor_jpeg.h} |  27 ++--
 src/android/jpeg/thumbnailer.cpp              | 134 ++++++++++++++++++
 src/android/jpeg/thumbnailer.h                |  34 +++++
 src/android/meson.build                       |   3 +-
 src/android/post_processor.h                  |  30 ++++
 10 files changed, 332 insertions(+), 108 deletions(-)
 delete mode 100644 src/android/jpeg/encoder.h
 rename src/android/jpeg/{encoder_libjpeg.cpp => post_processor_jpeg.cpp} (65%)
 rename src/android/jpeg/{encoder_libjpeg.h => post_processor_jpeg.h} (55%)
 create mode 100644 src/android/jpeg/thumbnailer.cpp
 create mode 100644 src/android/jpeg/thumbnailer.h
 create mode 100644 src/android/post_processor.h