Camera: Cache and defer Surface binder IPC calls
Try to cache and defer Surface related IPC configuration
calls. Specifically:
1) Avoid retrieving the consumer name until dump
2) Cache and re-use the surface consumer usage value
3) Configure the producer max undequeued buffer count
instead of the total buffer count
Additionally, raise the stream configuration thread
prioirty during the binder IPC intensive stream/surface
setup.
Bug: 323292530
Test: Manual using camera application,
adb shell dumpsys media.camera
Change-Id: Ibf4149a2b1fb8e5a5e357fa6e2360c70a743413d
diff --git a/services/camera/libcameraservice/device3/Camera3OutputStreamInterface.h b/services/camera/libcameraservice/device3/Camera3OutputStreamInterface.h
index 1ab8162..77edfbe 100644
--- a/services/camera/libcameraservice/device3/Camera3OutputStreamInterface.h
+++ b/services/camera/libcameraservice/device3/Camera3OutputStreamInterface.h
@@ -39,7 +39,7 @@
/**
* Return if this output stream is for video encoding.
*/
- virtual bool isVideoStream() const = 0;
+ virtual bool isVideoStream() = 0;
/**
* Return if the consumer configuration of this stream is deferred.