summaryrefslogtreecommitdiff
path: root/src/android/camera_request.h
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2021-10-19 17:17:53 +0530
committerUmang Jain <umang.jain@ideasonboard.com>2021-10-19 19:15:24 +0530
commit1abdcf803d9cfc8df15361fbbd627654f1eb82c9 (patch)
tree49599df85dc46724dc657e4965014309abbc2086 /src/android/camera_request.h
parent030c8f1a7ea5e58e2a155b2fda19c6a72ccb310f (diff)
android: camera_device: Build capture_result dynamically
The camera3_capture_result_t is only needed to convey capture results to the camera service through the process_capture_result() callback. There's no need to store it in the Camera3RequestDescriptor. Build it dynamically in CameraDevice::sendCaptureResults() instead. This requires storing the result metadata created in CameraDevice::requestComplete() in the Camera3RequestDescriptor. A side effect of this change is that the request metadata lifetime will match the Camera3RequestDescriptor instead of being destroyed at the end of requestComplete(). This will be needed to support asynchronous post-processing, where the request completion will be signaled to the camera service asynchronously from requestComplete(). Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Umang Jain <umang.jain@ideasonboard.com> Reviewed-by: Hirokazu Honda <hiroh@chromium.org> Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
Diffstat (limited to 'src/android/camera_request.h')
-rw-r--r--src/android/camera_request.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/android/camera_request.h b/src/android/camera_request.h
index 79dfdb58..db13f624 100644
--- a/src/android/camera_request.h
+++ b/src/android/camera_request.h
@@ -40,8 +40,8 @@ public:
std::vector<std::unique_ptr<libcamera::FrameBuffer>> frameBuffers_;
CameraMetadata settings_;
std::unique_ptr<CaptureRequest> request_;
+ std::unique_ptr<CameraMetadata> resultMetadata_;
- camera3_capture_result_t captureResult_ = {};
Status status_ = Status::Pending;
private: