4

我正在捕捉视频并使用AVCaptureVideoPreviewLayer. 在这两者之间,我希望能够捕捉到全质量的静止图像。因此,我大部分时间都遵循本教程

如果我将会话预设设置为AVCaptureSessionPresetPhoto,我只会得到 720x960 的输出图像,而不是完整的后置摄像头分辨率 1280x720。但是,如果我明确设置AVCaptureSessionPreset1280x720,我会得到完整的分辨率。在 iPhone 5 上,我总是获得AVCaptureSessionPresetPhoto(3264x2448) 的全分辨率。我真的必须这样做if iPad2 do this, else do that还是我在这里错过了一些选择?

AVCaptureStillImageOutput 格式设置为默认值(JPEG 压缩),但如果我使用未压缩的 BGRA(setOutputSettings包含字典kCVPixelBufferPixelFormatTypeKey => kCVPixelFormatType_32BGRA),也会发生同样的情况。

4

1 回答 1

0

您正在以正确的分辨率获取图像。
iPad2 有一个 960x720 的摄像头,如果您使用AVCaptureSessionPresetPhoto预设,您将获得该分辨率。

强制AVCaptureSessionPreset1280x720预设您告诉 iOS 使用视频录制预设,它实际上可以达到更高的分辨率(它是高清 720p 相机 - 1280x720)。

于 2013-03-21T16:00:43.043 回答