2

我在 AVCaptureVideoDataOutput 和 AVCaptureStillImageOutput 的情况下得到静止图像,但是当我用 captureStillImageAsynchronouslyFromConnection 得到静止图像时它花费了很多时间(2s),

当我只使用一个 AVCaptureStillImageOutput 时,得到一个时间为 0.5 秒的静止图像。

在 AVCaptureVideoDataOutput 和 AVCaptureStillImageOutput 的情况下如何减少时间。</p>

4

1 回答 1

3

您从AVCaptureVideoDataOutput获得的照片是低质量的照片,如果您想获得与使用AVCaptureStillImageOutput拍摄的照片相同的质量,不幸的是,您别无选择,只能等待所需的时间。

当图像质量不是问题时,请尝试使用可用选项更改会话预设,

 //----- SET THE IMAGE QUALITY / RESOLUTION -----
 //Options:
 // AVCaptureSessionPresetHigh - Highest recording quality (varies per device)
 // AVCaptureSessionPresetMedium - Suitable for WiFi sharing (actual values may change)
 // AVCaptureSessionPresetLow - Suitable for 3G sharing (actual values may change)
 // AVCaptureSessionPreset640x480 - 640x480 VGA (check its supported before setting it)
 // AVCaptureSessionPreset1280x720 - 1280x720 720p HD (check its supported before setting it)
 // AVCaptureSessionPresetPhoto - Full photo resolution (not supported for video output)

 NSLog(@"Setting image quality");
[CaptureSession setSessionPreset:AVCaptureSessionPresetMedium]; 

更改预设将导致不同的处理时间。

于 2013-05-14T03:39:22.550 回答