@@ -400,9 +400,6 @@ private void setDefaultCaptureRequest(final CaptureRequest.Builder request,
400400 }
401401 if (hasAutoExposure ()) {
402402 request .set (CaptureRequest .CONTROL_AE_MODE , mAutoExposureMode );
403- if (trigger ) {
404- request .set (CaptureRequest .CONTROL_AE_PRECAPTURE_TRIGGER , CameraMetadata .CONTROL_AE_PRECAPTURE_TRIGGER_START );
405- }
406403 }
407404 setWhiteBalance (request );
408405 // LightがONの場合は、CONTROL_AE_MODEをCONTROL_AE_MODE_ONにする。
@@ -459,18 +456,16 @@ public synchronized void stopPreview() throws CameraWrapperException {
459456 close ();
460457 }
461458 }
462-
463459 public synchronized void startRecording (final Surface recordingSurface ,
464460 final boolean isResume ) throws CameraWrapperException {
465461 if (mIsRecording && !isResume ) {
466462 throw new CameraWrapperException ("recording is started already." );
467463 }
468464 mIsRecording = true ;
469465 mRecordingSurface = recordingSurface ;
470- if (mCameraDevice != null ) {
471- close ();
472- }
466+
473467 try {
468+
474469 CameraDevice cameraDevice = openCamera ();
475470 CameraCaptureSession captureSession = createCaptureSession (cameraDevice );
476471 CaptureRequest .Builder request = cameraDevice .createCaptureRequest (CameraDevice .TEMPLATE_RECORD );
@@ -541,6 +536,7 @@ public synchronized void takeStillImage(final Surface stillImageSurface) throws
541536 CaptureRequest .Builder request = cameraDevice .createCaptureRequest (template );
542537 request .addTarget (stillImageSurface );
543538 setDefaultCaptureRequest (request );
539+ request .set (CaptureRequest .CONTROL_AF_TRIGGER , CameraMetadata .CONTROL_AF_TRIGGER_CANCEL );
544540 mCaptureSession .capture (request .build (), new CameraCaptureSession .CaptureCallback () {
545541 @ Override
546542 public void onCaptureStarted (@ NonNull CameraCaptureSession session , @ NonNull CaptureRequest request , long timestamp , long frameNumber ) {
@@ -684,10 +680,12 @@ private void onCaptureResult(final CaptureResult result, final boolean isComplet
684680 }
685681 if (!mIsAeReady ) {
686682 Integer aeState = result .get (CaptureResult .CONTROL_AE_STATE );
683+ if (DEBUG ) {
684+ Log .d (TAG , "prepareCapture: onCaptureCompleted: aeState=" + aeState );
685+ }
687686 mIsAeReady = aeState == null
688687 || aeState == CaptureResult .CONTROL_AE_STATE_CONVERGED
689- || aeState == CaptureRequest .CONTROL_AE_STATE_FLASH_REQUIRED
690- || aeState == CaptureRequest .CONTROL_AE_STATE_PRECAPTURE ;
688+ || aeState == CaptureRequest .CONTROL_AE_STATE_FLASH_REQUIRED ;
691689 }
692690 mIsCaptureReady |= isCompleted ;
693691 if (DEBUG ) {
0 commit comments