在使用camera 2 Android录制视频时,如何将摄像头重新聚焦在按钮上?

在使用camera 2 Android录制视频时,如何将摄像头重新聚焦在按钮上?,android,android-camera,android-camera2,Android,Android Camera,Android Camera2,我使用Android创建了一个摄像头应用程序。我需要的是,相机将重新聚焦在视频录制的开始,每次用户在录制视频时按下对焦按钮。在哪里可以找到如何实现它的示例 这是my and it's class您需要添加捕获回拨以将焦点控制添加到您的相机会话中 private boolean firstCaptureDone = false; private CameraCaptureSession.CaptureCallback captureCallback = null; captureCallback

我使用Android创建了一个摄像头应用程序。我需要的是,相机将重新聚焦在视频录制的开始,每次用户在录制视频时按下对焦按钮。在哪里可以找到如何实现它的示例


这是my and it's class

您需要添加捕获回拨以将焦点控制添加到您的相机会话中

private boolean firstCaptureDone = false;
private CameraCaptureSession.CaptureCallback captureCallback = null;

captureCallback = new CameraCaptureSession.CaptureCallback() {

            @Override
            public void onCaptureCompleted(CameraCaptureSession session, CaptureRequest request, TotalCaptureResult result) {
                super.onCaptureCompleted(session, request, result);

            boolean cameraFocussed = false;

            private void process(CaptureResult result) {
                int afState = result.get(CaptureResult.CONTROL_AF_STATE);
                if (CaptureResult.CONTROL_AF_TRIGGER_START == afState) {
                    if (cameraFocussed) {
                        if (firstCaptureDone) {
                            firstCaptureDone = true;
                            Log.d(TAG, "firstCapture Done with focus");
                        }
                    }
                }
                if (CaptureResult.CONTROL_AF_STATE_PASSIVE_FOCUSED == afState) {
                    cameraFocussed = true;
                } else {
                    cameraFocussed = false;
                }
            }

        };


mPreviewSession.setRepeatingRequest(mPreviewBuilder.build(), captureCallback, mBackgroundHandler);