iOS设备上支持的AVCaptureSessionPreset

时间:2013-08-28 10:39:44

标签: ios objective-c avfoundation avcapturesession avcapture

有没有办法检查iOS设备是否支持具体的AVCaptureSessionPreset?我想设置AVCaptureSession的分辨率,但我不知道如何检查设备是否能够使用选定的分辨率捕获相机帧。

AVCaptureSession * _session;
NSString * _sessionPreset;
_sessionPreset = AVCaptureSessionPreset1920x1080;

// Here I would like to perform a check.

[_session setSessionPreset:_sessionPreset];

1 个答案:

答案 0 :(得分:9)

使用此:

if ([self.captureSession canSetSessionPreset:AVCaptureSessionPreset1920x1080])
    {
        self.captureSession.sessionPreset = AVCaptureSessionPreset1920x1080;
    } else if ([self.captureSession canSetSessionPreset:AVCaptureSessionPreset640x480])
        {
            NSLog(@"Set preview port to 640X480");
            self.captureSession.sessionPreset = AVCaptureSessionPreset640x480;
        }