间隔拍摄多张照片?

时间:2017-01-03 15:21:11

标签: android android-camera2

我尝试使用camera2 API以约1秒的间隔拍摄10张。

我有以下createCaptureSession来成功创建10个捕获请求,但是我在哪里添加间隔?

cameraDevice.createCaptureSession(outputSurfaces, new CameraCaptureSession.StateCallback() {
    @Override
    public void onConfigured(CameraCaptureSession session) {
      try {
        for (int i =0; i < 10;i++) {
          session.capture(captureBuilder.build(), captureListener, null);
        }
       } catch (CameraAccessException e) {
         e.printStackTrace();
       }
     }

     @Override
     public void onConfigureFailed(CameraCaptureSession session) {
       System.out.println("ConfigurationFailed");
     }
   }, mBackgroundHandler);

1 个答案:

答案 0 :(得分:0)

我使用Camare2Basic示例完成了此操作。 您必须修改lockFocus()函数添加如下内容:

try { Thread.sleep(CAPTURE_WAITING_TIME_MILISECOND); } catch (InterruptedException e) { e.printStackTrace(); }

onImageAvailable如果图像数不是10,则需要致电takePicture()。或者最好在ImageSaver的回调中调用它。

间隔不能是准确的时间。它可能会根据处理时间而改变。

希望有所帮助