Camera2: Add prepare for output streams
The prepare call asynchronously pre-allocates buffers for a given
output stream, and then fires the onPrepared callback.
Not implemented for Camera2Device or used in Camera2Client.
Change-Id: I1cccdfff846dd6985133c591dbdceed823929ade
diff --git a/include/camera/camera2/ICameraDeviceCallbacks.h b/include/camera/camera2/ICameraDeviceCallbacks.h
index 670480b..c57b39f 100644
--- a/include/camera/camera2/ICameraDeviceCallbacks.h
+++ b/include/camera/camera2/ICameraDeviceCallbacks.h
@@ -65,6 +65,9 @@
// One way
virtual void onResultReceived(const CameraMetadata& metadata,
const CaptureResultExtras& resultExtras) = 0;
+
+ // One way
+ virtual void onPrepared(int streamId) = 0;
};
// ----------------------------------------------------------------------------
diff --git a/include/camera/camera2/ICameraDeviceUser.h b/include/camera/camera2/ICameraDeviceUser.h
index c850924..619b161 100644
--- a/include/camera/camera2/ICameraDeviceUser.h
+++ b/include/camera/camera2/ICameraDeviceUser.h
@@ -133,6 +133,11 @@
*/
virtual status_t flush(/*out*/
int64_t* lastFrameNumber = NULL) = 0;
+
+ /**
+ * Preallocate buffers for a given output stream asynchronously.
+ */
+ virtual status_t prepare(int streamId) = 0;
};
// ----------------------------------------------------------------------------