CameraX如何使用Camera2的CaptureRequest.Builder.set()

163 阅读1分钟

Camera2:

mPreviewRequestBuilder.set(CaptureRequest.EXTENSION_STRENGTH,
        mStrength);

CameraX:

mCamera = mCameraProvider.bindToLifecycle(this, mCameraSelector);
Log.d(TAG, "resumePreviewByStrength: strength > " + strength);
Camera2CameraControl camera2Cameracontrol = Camera2CameraControl.from(mCamera.getCameraControl());
CaptureRequestOptions captureRequestOptions = new CaptureRequestOptions.Builder()
        .setCaptureRequestOption(CaptureRequest.EXTENSION_STRENGTH, strength)
        .build();
ListenableFuture<Void> listenableFuture = camera2Cameracontrol.addCaptureRequestOptions(captureRequestOptions);
Futures.addCallback(listenableFuture, new FutureCallback<Void>() {
    @Override
    public void onSuccess(@Nullable Void result) {
        Log.d(TAG, "resumePreviewByStrength onSuccess: " + result);
    }

    @Override
    public void onFailure(Throwable t) {
        Log.d(TAG, "resumePreviewByStrength failed, " + t);
    }
}, mControlExecutor);