[英]iOS - How to caputre image : resolution 3840x2160, using GPUImageStillCamera? [duplicate]
这个问题已经在这里有了答案:
我需要使用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设备,我都需要最高质量,最大尺寸的图像 。 任何建议都会很棒。 多谢你们。
您可以使用AVCaptureSession
的sessionPreset
属性,如下所示,
cameraSession.sessionPreset = AVCaptureSessionPresetHigh;
您还应该在代码中尝试AVCaptureSessionPresetHigh
。
希望这会有所帮助:)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.