AVCaptureSessionPresetHigh

AVCaptureSessionPresetHigh

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

  • AVCaptureSessionPresetLow
  • AVCaptureSessionPresetMedium
  • AVCaptureSessionPresetHigh

  • 不仅是图像的分辨率,还包括它们的纵横比,最重要的是整体图像质量。在我的特定情况下,使用AVCaptureSessionPresetLow/Medium获得的帧比使用AVCaptureSessionPresetHigh获得的帧要亮得多。为什么是这样?

    为了设置会话并显示图像,我使用了以下代码:http://www.benjaminloulier.com/posts/ios4-and-direct-access-to-the-camera

    设置预设:
    [self.captureSession setSessionPreset:AVCaptureSessionPresetHigh];
    

    这是MediumHigh质量的两个示例:


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

    最佳答案

    差异是由这些预设的目的引起的。尽管AVCaptureSessionPresetHigh主要用于制作视频,但AVCaptureSessionPresetLow/Medium也可以用于创建照片,因为它们的行为与AVCaptureSessionPresetPhoto预设相同。您可以尝试使用默认的相机应用。

    关于ios - 为什么AVCaptureSessionPresetHigh的图片如此暗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20934033/

    10-12 14:50