为什么AVCaptureSessionPresetHigh图片如此暗?

时间:2014-01-05 13:21:29

标签: ios cocoa-touch video-capture avcapturesession image-quality

使用AVCapureSessions并尝试以不同方式显示输出CMSampleBufferRef(使用AVCaptureVideoPreviewLayer,显示CGImage并将其转换为{{ 1}}),我还查看了您可以为UIImage设置的所有不同质量预设。
然后我注意到了质量差异如何

  • AVCaptureSession
  • AVCaptureSessionPresetLow
  • AVCaptureSessionPresetMedium

不仅是图像的分辨率,还有它们的宽高比,最显着的是整体图像质量。在我的特定情况下,使用AVCaptureSessionPresetHigh获得的帧比使用AVCaptureSessionPresetLow/Medium的帧更亮。这是为什么?

要设置会话并显示我使用此代码的图像:http://www.benjaminloulier.com/posts/ios4-and-direct-access-to-the-camera

设置预设:

AVCaptureSessionPresetHigh

以下两个[self.captureSession setSessionPreset:AVCaptureSessionPresetHigh]; Medium质量的示例:

AVCaptureSessionPresetMedium AVCaptureSessionPresetHigh

我向您保证,这两个屏幕截图是将相机指向相同的位置,同一时间和相同的光线条件。

1 个答案:

答案 0 :(得分:1)

差异是由这些预设的目的引起的。虽然AVCaptureSessionPresetHigh基本上用于制作视频,但AVCaptureSessionPresetLow/Medium也可用于创建照片,因为它们与AVCaptureSessionPresetPhoto预设具有相同的行为。您可以尝试使用默认的相机应用程序。