summaryrefslogtreecommitdiffstats
path: root/services/camera/libcameraservice/device3/Camera3Device.cpp
diff options
context:
space:
mode:
authorRuben Brunk <rubenbrunk@google.com>2015-08-17 17:28:11 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2015-08-17 17:28:11 +0000
commit5d1103e5a229401a4c4e0cb7dd91b2742881ff92 (patch)
treeac815f1a2ee6af6deb53754a149d31a6b3eac34a /services/camera/libcameraservice/device3/Camera3Device.cpp
parent5f7d4b957a4b41eaee3bcfbe8cb5a2f8f3dc8dc0 (diff)
parentc78ac26e3a65328fc0118f16ee76a800d0687eb7 (diff)
downloadframeworks_av-5d1103e5a229401a4c4e0cb7dd91b2742881ff92.zip
frameworks_av-5d1103e5a229401a4c4e0cb7dd91b2742881ff92.tar.gz
frameworks_av-5d1103e5a229401a4c4e0cb7dd91b2742881ff92.tar.bz2
Merge "Add experimental camera session prepare API." into mnc-dr-dev
Diffstat (limited to 'services/camera/libcameraservice/device3/Camera3Device.cpp')
-rw-r--r--services/camera/libcameraservice/device3/Camera3Device.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/services/camera/libcameraservice/device3/Camera3Device.cpp b/services/camera/libcameraservice/device3/Camera3Device.cpp
index 0c941fb..e4d75cb 100644
--- a/services/camera/libcameraservice/device3/Camera3Device.cpp
+++ b/services/camera/libcameraservice/device3/Camera3Device.cpp
@@ -1408,6 +1408,10 @@ status_t Camera3Device::flush(int64_t *frameNumber) {
}
status_t Camera3Device::prepare(int streamId) {
+ return prepare(camera3::Camera3StreamInterface::ALLOCATE_PIPELINE_MAX, streamId);
+}
+
+status_t Camera3Device::prepare(int maxCount, int streamId) {
ATRACE_CALL();
ALOGV("%s: Camera %d: Preparing stream %d", __FUNCTION__, mId, streamId);
Mutex::Autolock il(mInterfaceLock);
@@ -1432,7 +1436,7 @@ status_t Camera3Device::prepare(int streamId) {
return BAD_VALUE;
}
- return mPreparerThread->prepare(stream);
+ return mPreparerThread->prepare(maxCount, stream);
}
status_t Camera3Device::tearDown(int streamId) {
@@ -3478,12 +3482,12 @@ Camera3Device::PreparerThread::~PreparerThread() {
clear();
}
-status_t Camera3Device::PreparerThread::prepare(sp<Camera3StreamInterface>& stream) {
+status_t Camera3Device::PreparerThread::prepare(int maxCount, sp<Camera3StreamInterface>& stream) {
status_t res;
Mutex::Autolock l(mLock);
- res = stream->startPrepare();
+ res = stream->startPrepare(maxCount);
if (res == OK) {
// No preparation needed, fire listener right off
ALOGV("%s: Stream %d already prepared", __FUNCTION__, stream->getId());