使用 AVCaptureSession 我想通过 AVCaptureVideoDataOutput 捕获视频帧以进行分析,并根据结果决定立即通过 AVCaptureStillImageOutput 自动拍摄静止图像。所以基本上,两个捕获输出都被添加到 AVCaptureSession 实例中,使用预设的 AVCaptureSessionPresetPhoto 以获得最佳分辨率(记录的照片,用于视频 852x640 - 文档说它不受支持但仍然有效)。使用 AVCaptureSessionPresetPhoto 的第二个原因是因为“视野”比其他高质量预设更扩展,允许将对象保持在更靠近相机的位置以轻松稳定保持)。
在 iOS 5.1 发布之前,这一切都运行良好,这在拍摄静止图像时导致质量显着下降。静止图像的分辨率已降至 640x480。我尝试使用按钮手动拍摄静止图像,没有将视频数据输出添加到 AVCaptureSession,它再次提供了高质量的图像(如预期的那样)。
我非常感谢为这个问题提供解决方案提示!
谢谢
PS:捕获会话和输出的设置是根据 AVCam 等其他示例应用程序完成的。所以我不怀疑配置设置有问题。