【发布时间】:2016-09-13 01:18:35
【问题描述】:
我需要使用 GPUImageStillCamera 捕获最高分辨率的图像,我已经尝试过这些属性,例如:AVCaptureSessionPresetPhoto、AVCaptureSessionPreset1920x1080。它给了我一点好的结果。请注意,当我使用属性 AVCaptureSessionPresetPhoto 而不是 AVCaptureSessionPresetHigh 捕获图像时,它 (AVCaptureSessionPresetPhoto) 比 AVCaptureSessionPresetHigh 提供更好的结果。但是当我使用属性时 AVCaptureSessionPreset3840x2160 意味着:
videoCamera = [[GPUImageStillCamera alloc] initWithSessionPreset:AVCaptureSessionPreset3840x2160 cameraPosition:AVCaptureDevicePositionBack]; .
我的应用程序崩溃(即使在最新的 iPhone 版本中)并显示此消息(我使用的是 iPhone 5 S,版本:9.3.1,Xcode 版本:7.3)
由于未捕获的异常而终止应用程序 'NSInvalidArgumentException',原因:'AVCaptureSessionPreset3840x2160 不是受支持的预设。
有没有办法检查 iOS 设备是否支持具体的 AVCaptureSessionPreset?我想设置 AVCaptureSession 的分辨率,但我不知道如何检查设备是否能够使用选定的分辨率捕获相机帧。 简而言之,我需要为所有不同的 iPhone 设备提供最高质量、最大尺寸的图像。任何建议都会很棒。谢谢各位。
【问题讨论】:
标签: ios objective-c image camera gpuimagestillcamera