[libcamera-devel] [PATCH 09/16] android: capabilities: Collect absolute max frame durations

Umang Jain umang.jain at ideasonboard.com
Wed Sep 1 10:17:55 CEST 2021


Hi Jacopo,

Thank you for the patch

On 8/27/21 5:37 PM, Jacopo Mondi wrote:
> While building the list of supported stream configurations also collet
> the absolute max frame durations to be used to populate the sensor
> maximum frame duration.
>
> Signed-off-by: Jacopo Mondi <jacopo at jmondi.org>


Reviewed-by: Umang Jain <umang.jain at ideasonboard.com>

> ---
>   src/android/camera_capabilities.cpp | 9 ++++++---
>   src/android/camera_capabilities.h   | 1 +
>   2 files changed, 7 insertions(+), 3 deletions(-)
>
> diff --git a/src/android/camera_capabilities.cpp b/src/android/camera_capabilities.cpp
> index 23a9a3fbec50..388552963c47 100644
> --- a/src/android/camera_capabilities.cpp
> +++ b/src/android/camera_capabilities.cpp
> @@ -385,6 +385,7 @@ int CameraCapabilities::initialize(std::shared_ptr<libcamera::Camera> camera,
>   	orientation_ = orientation;
>   	facing_ = facing;
>   	rawStreamAvailable_ = false;
> +	maxFrameDuration_ = 0;
>   
>   	/* Acquire the camera and initialize available stream configurations. */
>   	int ret = camera_->acquire();
> @@ -659,6 +660,9 @@ int CameraCapabilities::initializeStreamConfigurations()
>   				});
>   				maxJpegSize = std::max(maxJpegSize, res);
>   			}
> +
> +			maxFrameDuration_ = std::max(maxFrameDuration_,
> +						     maxFrameDuration);
>   		}
>   
>   		/*
> @@ -1132,9 +1136,8 @@ int CameraCapabilities::initializeStaticMetadata()
>   	staticMetadata_->addEntry(ANDROID_SENSOR_INFO_TIMESTAMP_SOURCE,
>   				  timestampSource);
>   
> -	if (maxFrameDurationNsec > 0)
> -		staticMetadata_->addEntry(ANDROID_SENSOR_INFO_MAX_FRAME_DURATION,
> -					  maxFrameDurationNsec);
> +	staticMetadata_->addEntry(ANDROID_SENSOR_INFO_MAX_FRAME_DURATION,
> +				  maxFrameDuration_);
>   
>   	/* Statistics static metadata. */
>   	uint8_t faceDetectMode = ANDROID_STATISTICS_FACE_DETECT_MODE_OFF;
> diff --git a/src/android/camera_capabilities.h b/src/android/camera_capabilities.h
> index 6e55ddab445e..2cf97ae80095 100644
> --- a/src/android/camera_capabilities.h
> +++ b/src/android/camera_capabilities.h
> @@ -71,6 +71,7 @@ private:
>   	int facing_;
>   	int orientation_;
>   	bool rawStreamAvailable_;
> +	int64_t maxFrameDuration_;
>   	camera_metadata_enum_android_info_supported_hardware_level hwLevel_;
>   	std::set<camera_metadata_enum_android_request_available_capabilities> capabilities_;
>   


More information about the libcamera-devel mailing list