Merge "Camera: Return sequence id for advanced extension requests" into sc-dev am: 1ce567e28f
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15522464 Change-Id: I85693fe957dab445243185c0dacbea79f072ef5d
This commit is contained in:
@@ -24,9 +24,9 @@ import android.hardware.camera2.extension.Request;
|
|||||||
interface IRequestProcessorImpl
|
interface IRequestProcessorImpl
|
||||||
{
|
{
|
||||||
void setImageProcessor(in OutputConfigId outputConfigId, in IImageProcessorImpl imageProcessor);
|
void setImageProcessor(in OutputConfigId outputConfigId, in IImageProcessorImpl imageProcessor);
|
||||||
boolean submit(in Request request, in IRequestCallback callback);
|
int submit(in Request request, in IRequestCallback callback);
|
||||||
boolean submitBurst(in List<Request> requests, in IRequestCallback callback);
|
int submitBurst(in List<Request> requests, in IRequestCallback callback);
|
||||||
boolean setRepeating(in Request request, in IRequestCallback callback);
|
int setRepeating(in Request request, in IRequestCallback callback);
|
||||||
void abortCaptures();
|
void abortCaptures();
|
||||||
void stopRepeating();
|
void stopRepeating();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -864,14 +864,15 @@ public final class CameraAdvancedExtensionSessionImpl extends CameraExtensionSes
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean submit(Request request, IRequestCallback callback) {
|
public int submit(Request request, IRequestCallback callback) {
|
||||||
ArrayList<Request> captureList = new ArrayList<>();
|
ArrayList<Request> captureList = new ArrayList<>();
|
||||||
captureList.add(request);
|
captureList.add(request);
|
||||||
return submitBurst(captureList, callback);
|
return submitBurst(captureList, callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean submitBurst(List<Request> requests, IRequestCallback callback) {
|
public int submitBurst(List<Request> requests, IRequestCallback callback) {
|
||||||
|
int seqId = -1;
|
||||||
synchronized (mInterfaceLock) {
|
synchronized (mInterfaceLock) {
|
||||||
try {
|
try {
|
||||||
CaptureCallbackHandler captureCallback = new CaptureCallbackHandler(callback);
|
CaptureCallbackHandler captureCallback = new CaptureCallbackHandler(callback);
|
||||||
@@ -880,37 +881,36 @@ public final class CameraAdvancedExtensionSessionImpl extends CameraExtensionSes
|
|||||||
captureRequests.add(initializeCaptureRequest(mCameraDevice, request,
|
captureRequests.add(initializeCaptureRequest(mCameraDevice, request,
|
||||||
mCameraConfigMap));
|
mCameraConfigMap));
|
||||||
}
|
}
|
||||||
mCaptureSession.captureBurstRequests(captureRequests,
|
seqId = mCaptureSession.captureBurstRequests(captureRequests,
|
||||||
new CameraExtensionUtils.HandlerExecutor(mHandler), captureCallback);
|
new CameraExtensionUtils.HandlerExecutor(mHandler), captureCallback);
|
||||||
} catch (CameraAccessException e) {
|
} catch (CameraAccessException e) {
|
||||||
Log.e(TAG, "Failed to submit capture requests!");
|
Log.e(TAG, "Failed to submit capture requests!");
|
||||||
return false;
|
|
||||||
} catch (IllegalStateException e) {
|
} catch (IllegalStateException e) {
|
||||||
Log.e(TAG, "Capture session closed!");
|
Log.e(TAG, "Capture session closed!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return seqId;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean setRepeating(Request request, IRequestCallback callback) {
|
public int setRepeating(Request request, IRequestCallback callback) {
|
||||||
|
int seqId = -1;
|
||||||
synchronized (mInterfaceLock) {
|
synchronized (mInterfaceLock) {
|
||||||
try {
|
try {
|
||||||
CaptureRequest repeatingRequest = initializeCaptureRequest(mCameraDevice,
|
CaptureRequest repeatingRequest = initializeCaptureRequest(mCameraDevice,
|
||||||
request, mCameraConfigMap);
|
request, mCameraConfigMap);
|
||||||
CaptureCallbackHandler captureCallback = new CaptureCallbackHandler(callback);
|
CaptureCallbackHandler captureCallback = new CaptureCallbackHandler(callback);
|
||||||
mCaptureSession.setSingleRepeatingRequest(repeatingRequest,
|
seqId = mCaptureSession.setSingleRepeatingRequest(repeatingRequest,
|
||||||
new CameraExtensionUtils.HandlerExecutor(mHandler), captureCallback);
|
new CameraExtensionUtils.HandlerExecutor(mHandler), captureCallback);
|
||||||
} catch (CameraAccessException e) {
|
} catch (CameraAccessException e) {
|
||||||
Log.e(TAG, "Failed to enable repeating request!");
|
Log.e(TAG, "Failed to enable repeating request!");
|
||||||
return false;
|
|
||||||
} catch (IllegalStateException e) {
|
} catch (IllegalStateException e) {
|
||||||
Log.e(TAG, "Capture session closed!");
|
Log.e(TAG, "Capture session closed!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return seqId;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -970,14 +970,14 @@ public class CameraExtensionsProxyService extends Service {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean submit(Request request, Callback callback) {
|
public int submit(Request request, Callback callback) {
|
||||||
ArrayList<Request> requests = new ArrayList<>();
|
ArrayList<Request> requests = new ArrayList<>();
|
||||||
requests.add(request);
|
requests.add(request);
|
||||||
return submit(requests, callback);
|
return submit(requests, callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean submit(List<Request> requests, Callback callback) {
|
public int submit(List<Request> requests, Callback callback) {
|
||||||
ArrayList<android.hardware.camera2.extension.Request> captureRequests =
|
ArrayList<android.hardware.camera2.extension.Request> captureRequests =
|
||||||
new ArrayList<>();
|
new ArrayList<>();
|
||||||
int requestId = 0;
|
int requestId = 0;
|
||||||
@@ -992,11 +992,11 @@ public class CameraExtensionsProxyService extends Service {
|
|||||||
} catch (RemoteException e) {
|
} catch (RemoteException e) {
|
||||||
Log.e(TAG, "Failed to submit request due to remote exception!");
|
Log.e(TAG, "Failed to submit request due to remote exception!");
|
||||||
}
|
}
|
||||||
return false;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean setRepeating(Request request, Callback callback) {
|
public int setRepeating(Request request, Callback callback) {
|
||||||
try {
|
try {
|
||||||
ArrayList<Request> requests = new ArrayList<>();
|
ArrayList<Request> requests = new ArrayList<>();
|
||||||
requests.add(request);
|
requests.add(request);
|
||||||
@@ -1007,7 +1007,7 @@ public class CameraExtensionsProxyService extends Service {
|
|||||||
Log.e(TAG, "Failed to submit repeating request due to remote exception!");
|
Log.e(TAG, "Failed to submit repeating request due to remote exception!");
|
||||||
}
|
}
|
||||||
|
|
||||||
return false;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
Reference in New Issue
Block a user