Example usage for android.hardware.camera2 CaptureRequest CONTROL_MODE

List of usage examples for android.hardware.camera2 CaptureRequest CONTROL_MODE

Introduction

In this page you can find the example usage for android.hardware.camera2 CaptureRequest CONTROL_MODE.

Prototype

Key CONTROL_MODE

To view the source code for android.hardware.camera2 CaptureRequest CONTROL_MODE.

Click Source Link

Document

Overall mode of 3A (auto-exposure, auto-white-balance, auto-focus) control routines.

This is a top-level 3A control switch.

Usage

From source file:com.android.camera.one.v2.OneCameraZslImpl.java

/**
 * Like {@link #sendRepeatingCaptureRequest()}, but with the focus held
 * constant./*from   w  w  w. ja v a 2s.  c o  m*/
 *
 * @return true if successful, false if there was an error submitting the
 *         capture request.
 */
private boolean sendAutoFocusHoldRequest() {
    Log.v(TAG, "sendAutoFocusHoldRequest()");
    try {
        CaptureRequest.Builder builder;
        if (ZSL_ENABLED) {
            builder = mDevice.createCaptureRequest(CameraDevice.TEMPLATE_ZERO_SHUTTER_LAG);
        } else {
            builder = mDevice.createCaptureRequest(CameraDevice.TEMPLATE_PREVIEW);
        }

        builder.addTarget(mPreviewSurface);

        if (ZSL_ENABLED) {
            builder.addTarget(mCaptureImageReader.getSurface());
        }

        builder.set(CaptureRequest.CONTROL_MODE, CameraMetadata.CONTROL_MODE_AUTO);

        builder.set(CaptureRequest.CONTROL_AF_MODE, CameraMetadata.CONTROL_AF_MODE_AUTO);
        builder.set(CaptureRequest.CONTROL_AF_TRIGGER, CaptureRequest.CONTROL_AF_TRIGGER_IDLE);

        addRegionsToCaptureRequestBuilder(builder);
        // TODO: This should fire the torch, if appropriate.

        mCaptureSession.setRepeatingRequest(builder.build(), mCaptureManager, mCameraHandler);

        return true;
    } catch (CameraAccessException e) {
        Log.v(TAG, "Could not execute auto focus hold request.", e);
        return false;
    }
}