在我正在开发的应用中,我想让用户选择视频录制的分辨率。由于规范,我不能使用AVCaptureSessionPreset
常数
获取格式列表的分辨率高于3000px,当然不能用于视频抓取,只能用于照片拍摄。
AVCaptureDeviceFormat:0x17020c830'vide'/'420f'3264x2448,{2- 30 fps},HRSI:3264x2448,fov:58.040,最大变焦:153.00(升级版@ 1.00),AF 系统:2,ISO:29.0-1856.0,SS:0.000013-0.500000
我无法找到一种方法来查看特定格式是否适合录制视频
问题是,如果我尝试抓取视频,使用这种解决方案应用程序会生成一个异常,表示没有活动或启用的连接。
- [AVCaptureMovieFileOutput startRecordingToOutputFileURL:recordingDelegate:] - 没有活动/启用 连接。
我也不想对每种设备进行硬编码限制
我也不能尝试将限额限制为AVCaptureSessionPresetHigh
,因为Apple note中所述的不是实际的最大格式。
有没有办法了解AVCaptureDeviceFormat是否适合抓取视频?
答案 0 :(得分:2)
使用所选的-activeFormat设置所有连接后,检查当前AVCaptureConnection
isActive
或使用KVO观察属性-active
。如果不是格式不可用于视频抓取,如果是,则可以使用它。