[libcamera-devel,RFC,0/6] Support stream mapping in Android HAL adaptation layer
mbox series

Message ID 20210204100541.657503-1-hiroh@chromium.org
Headers show
Series
  • Support stream mapping in Android HAL adaptation layer
Related show

Message

Hirokazu Honda Feb. 4, 2021, 10:05 a.m. UTC
This patch series implements a stream mapping in Android HAL
adaptaion layer. The stream mapping here means to map camera
streams that can be produced by a native camera to camera streams
requested by Android HAL client w/o post processing. This is
helpful for the libcamera Android HAL implementation to produce
camera streams that a camera device doesn't support and output
multiple streams.

Hirokazu Honda (6):
  libcamera: camera: Add tryValidate() to CameraConfiguration
  libcamera: ipu3: Implement tryValidate() in IPU3CameraConfiguration
  android: camera_stream: Pass post processor in configure()
  android: camera_device: Implement toString() in Camera3StreamConfig
  android: camera_device: Introduce PostProcessorType
  android: camera_device: Support stream mapping

 include/libcamera/camera.h           |   1 +
 src/android/camera_device.cpp        | 266 ++++++++++++++++++++++++++-
 src/android/camera_stream.cpp        |  31 +---
 src/android/camera_stream.h          |   2 +-
 src/libcamera/camera.cpp             |  22 +++
 src/libcamera/pipeline/ipu3/imgu.cpp |   2 +-
 src/libcamera/pipeline/ipu3/imgu.h   |   2 +-
 src/libcamera/pipeline/ipu3/ipu3.cpp | 160 ++++++++++++++++
 8 files changed, 453 insertions(+), 33 deletions(-)

--
2.30.0.365.g02bc693789-goog

Comments

Hirokazu Honda Feb. 19, 2021, 7:15 a.m. UTC | #1
+Jacopo Mondi +Laurent Pinchart

Hello Jacopo and Laurent (sorry for pointing fingers), as you have
joined with my previous proposal discussion, may I please ask you to
review this patch series?
I don't at all intend to submit the patch series at one time.
I would like to hear your opinion about this direction.
Some of them might be reasonable to submit shortly as they generalize
the post processing code.


Thanks so much in advance,
-Hiro



On Thu, Feb 4, 2021 at 7:05 PM Hirokazu Honda <hiroh@chromium.org> wrote:
>
> This patch series implements a stream mapping in Android HAL
> adaptaion layer. The stream mapping here means to map camera
> streams that can be produced by a native camera to camera streams
> requested by Android HAL client w/o post processing. This is
> helpful for the libcamera Android HAL implementation to produce
> camera streams that a camera device doesn't support and output
> multiple streams.
>
> Hirokazu Honda (6):
>   libcamera: camera: Add tryValidate() to CameraConfiguration
>   libcamera: ipu3: Implement tryValidate() in IPU3CameraConfiguration
>   android: camera_stream: Pass post processor in configure()
>   android: camera_device: Implement toString() in Camera3StreamConfig
>   android: camera_device: Introduce PostProcessorType
>   android: camera_device: Support stream mapping
>
>  include/libcamera/camera.h           |   1 +
>  src/android/camera_device.cpp        | 266 ++++++++++++++++++++++++++-
>  src/android/camera_stream.cpp        |  31 +---
>  src/android/camera_stream.h          |   2 +-
>  src/libcamera/camera.cpp             |  22 +++
>  src/libcamera/pipeline/ipu3/imgu.cpp |   2 +-
>  src/libcamera/pipeline/ipu3/imgu.h   |   2 +-
>  src/libcamera/pipeline/ipu3/ipu3.cpp | 160 ++++++++++++++++
>  8 files changed, 453 insertions(+), 33 deletions(-)
>
> --
> 2.30.0.365.g02bc693789-goog
Laurent Pinchart March 1, 2021, 2:08 a.m. UTC | #2
Hi Hiro,

On Fri, Feb 19, 2021 at 04:15:55PM +0900, Hirokazu Honda wrote:
> +Jacopo Mondi +Laurent Pinchart
> 
> Hello Jacopo and Laurent (sorry for pointing fingers), as you have
> joined with my previous proposal discussion, may I please ask you to
> review this patch series?
> I don't at all intend to submit the patch series at one time.
> I would like to hear your opinion about this direction.
> Some of them might be reasonable to submit shortly as they generalize
> the post processing code.

I've been working on this over the past few days. There's no big issue
on the camera HAL side, but the tryValidate() API still bothers me :-S

I'm finalizing patches for reprocessing support, which will change the
configuration API. I've tried to take into account the needs that your
tryValidate() operation expresses, hopefully it will be provide support
to implement post-processed streams in the HAL.

I'm afraid I need to ask you for just a bit more patience, I'll post
patches to the list in the next few days.

> On Thu, Feb 4, 2021 at 7:05 PM Hirokazu Honda <hiroh@chromium.org> wrote:
> >
> > This patch series implements a stream mapping in Android HAL
> > adaptaion layer. The stream mapping here means to map camera
> > streams that can be produced by a native camera to camera streams
> > requested by Android HAL client w/o post processing. This is
> > helpful for the libcamera Android HAL implementation to produce
> > camera streams that a camera device doesn't support and output
> > multiple streams.
> >
> > Hirokazu Honda (6):
> >   libcamera: camera: Add tryValidate() to CameraConfiguration
> >   libcamera: ipu3: Implement tryValidate() in IPU3CameraConfiguration
> >   android: camera_stream: Pass post processor in configure()
> >   android: camera_device: Implement toString() in Camera3StreamConfig
> >   android: camera_device: Introduce PostProcessorType
> >   android: camera_device: Support stream mapping
> >
> >  include/libcamera/camera.h           |   1 +
> >  src/android/camera_device.cpp        | 266 ++++++++++++++++++++++++++-
> >  src/android/camera_stream.cpp        |  31 +---
> >  src/android/camera_stream.h          |   2 +-
> >  src/libcamera/camera.cpp             |  22 +++
> >  src/libcamera/pipeline/ipu3/imgu.cpp |   2 +-
> >  src/libcamera/pipeline/ipu3/imgu.h   |   2 +-
> >  src/libcamera/pipeline/ipu3/ipu3.cpp | 160 ++++++++++++++++
> >  8 files changed, 453 insertions(+), 33 deletions(-)