在间隔拍摄会话中拍摄多张照片?

Posted

技术标签:

【中文标题】在间隔拍摄会话中拍摄多张照片?【英文标题】:Take multiple pictures in capturesession with an interval? 【发布时间】:2017-05-17 17:38:20 【问题描述】:

我正在尝试使用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】:

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

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

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

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

希望对你有帮助

【讨论】:

以上是关于在间隔拍摄会话中拍摄多张照片?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Cordova 相机插件拍摄多张照片

使用 Ionic 使用相机拍摄多张照片

离子:每张照片/拍摄多张照片后,相机都会要求确认

使用 UIImagePickerController -takePicture 拍摄多张照片的推荐方法是啥

延时摄影最佳帧数 跟秒数是多少

如何在 iOS8.1 上使用 Swift 按顺序拍摄多张照片(每张延迟 1 秒)?