summaryrefslogtreecommitdiffstats
path: root/services/camera/libcameraservice/device3/Camera3Stream.h
diff options
context:
space:
mode:
authorIgor Murashkin <iam@google.com>2014-04-03 18:09:04 -0700
committerIgor Murashkin <iam@google.com>2014-04-09 11:35:01 -0700
commit13d315eb8c0848ea0584b9fb1d27bab55bc8158b (patch)
tree901bbfa0db6cb5771235b38d00cf84af03b5a4ab /services/camera/libcameraservice/device3/Camera3Stream.h
parent0d521d91154fe0199181c845b6dc70faf38ca8fb (diff)
downloadframeworks_av-13d315eb8c0848ea0584b9fb1d27bab55bc8158b.zip
frameworks_av-13d315eb8c0848ea0584b9fb1d27bab55bc8158b.tar.gz
frameworks_av-13d315eb8c0848ea0584b9fb1d27bab55bc8158b.tar.bz2
camera3: Remove register_stream_buffers for HAL 3.2+
Use 'setprop camera.dev.register_stream 1' to skip the fatal NULL check - This property will be removed before shipping L Bug: 13301331 Bug: 13435680 Change-Id: I16aacd7b22e0a10b34f6fb8501be0256170a8cd5
Diffstat (limited to 'services/camera/libcameraservice/device3/Camera3Stream.h')
-rw-r--r--services/camera/libcameraservice/device3/Camera3Stream.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/services/camera/libcameraservice/device3/Camera3Stream.h b/services/camera/libcameraservice/device3/Camera3Stream.h
index 6eeb721..766b772 100644
--- a/services/camera/libcameraservice/device3/Camera3Stream.h
+++ b/services/camera/libcameraservice/device3/Camera3Stream.h
@@ -82,6 +82,23 @@ namespace camera3 {
* STATE_CONFIGURED => STATE_CONSTRUCTED:
* When disconnect() is called after making sure stream is idle with
* waitUntilIdle().
+ *
+ * Status Tracking:
+ * Each stream is tracked by StatusTracker as a separate component,
+ * depending on the handed out buffer count. The state must be STATE_CONFIGURED
+ * in order for the component to be marked.
+ *
+ * It's marked in one of two ways:
+ *
+ * - ACTIVE: One or more buffers have been handed out (with #getBuffer).
+ * - IDLE: All buffers have been returned (with #returnBuffer), and their
+ * respective release_fence(s) have been signaled.
+ *
+ * A typical use case is output streams. When the HAL has any buffers
+ * dequeued, the stream is marked ACTIVE. When the HAL returns all buffers
+ * (e.g. if no capture requests are active), the stream is marked IDLE.
+ * In this use case, the app consumer does not affect the component status.
+ *
*/
class Camera3Stream :
protected camera3_stream,