[libcamera-devel] [RFC 4/7] android: camera_device: Use Android format

Kieran Bingham kieran.bingham at ideasonboard.com
Wed Sep 2 15:27:31 CEST 2020


Hi Jacopo,

On 02/09/2020 14:08, Jacopo Mondi wrote:
> We assumed HAL_PIXEL_FORMAT_BLOB is always mapped to libcamera::MJPEG
> and at the moment this is true. To protect against future changes in the
> mapping, inspect the Android format instead of the libcamera one.
> 

I think I recall choosing to compare against the libcamera pixel format
"libcamera::MJPEG" as I believed it was more readable/expressive than
'HAL_PIXEL_FORMAT_BLOB' which means JPEG without saying 'j p e g'.


Again, no actual fault in this patch, just it's directly different to
what I think was an active decision I had made previously.


> Signed-off-by: Jacopo Mondi <jacopo at jmondi.org>
> ---
>  src/android/camera_device.cpp | 5 ++---
>  1 file changed, 2 insertions(+), 3 deletions(-)
> 
> diff --git a/src/android/camera_device.cpp b/src/android/camera_device.cpp
> index 01f4b3a45566..a917404016e7 100644
> --- a/src/android/camera_device.cpp
> +++ b/src/android/camera_device.cpp
> @@ -1216,7 +1216,7 @@ int CameraDevice::configureStreams(camera3_stream_configuration_t *stream_list)
>  		stream->priv = static_cast<void *>(&streams_[i]);
>  
>  		/* Defer handling of MJPEG streams until all others are known. */
> -		if (format == formats::MJPEG)
> +		if (stream->format == HAL_PIXEL_FORMAT_BLOB)
>  			continue;
>  
>  		StreamConfiguration streamConfiguration;
> @@ -1230,10 +1230,9 @@ int CameraDevice::configureStreams(camera3_stream_configuration_t *stream_list)
>  	/* Now handle MJPEG streams, adding a new stream if required. */
>  	for (unsigned int i = 0; i < stream_list->num_streams; ++i) {
>  		camera3_stream_t *stream = stream_list->streams[i];
> -		PixelFormat format = toPixelFormat(stream->format);
>  		bool match = false;
>  
> -		if (format != formats::MJPEG)
> +		if (stream->format != HAL_PIXEL_FORMAT_BLOB)
>  			continue;
>  
>  		/* Search for a compatible stream */
> 

-- 
Regards
--
Kieran


More information about the libcamera-devel mailing list