OGeek|极客世界-中国程序员成长平台

标题: iphone - 通过 AVFoundation 使用不同的分辨率预设 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-11 22:17
标题: iphone - 通过 AVFoundation 使用不同的分辨率预设

我正在尝试使用 AVFoundation 来实现三种录制模式:音频、视频和照片。音频和视频工作得很好,但问题是,如果我将 session 预设设置为 AVCaptureSessionPreset352x288,静态图片也会以该分辨率保存。如果我将 session 预设更改为 AVCaptureSessionPresetPhoto,那么照片看起来很棒,但视频停止工作,因为这不是视频支持的预设。我尝试过创建多个 session 、重新分配 session 预设等,但似乎没有任何效果。任何人都可以通过低分辨率的视频和全分辨率的静止图像来完成这项工作?



Best Answer-推荐答案


在拍照之前设置新 session 预设的属性

// captureSession is your capture session object
[captureSession beginConfiguration];
captureSession.sessionPreset = AVCaptureSessionPresetHigh;
[captureSession commitConfiguration];

然后调用您的捕获图像处理程序

captureStillImageAsynchronouslyFromConnection: completionHandler:

然后改回低分辨率(= prevPreset)

[captureSession beginConfiguration];
captureSession.sessionPreset = prevPreset;
[captureSession commitConfiguration];

关于iphone - 通过 AVFoundation 使用不同的分辨率预设,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9845490/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://ogeek.cn/) Powered by Discuz! X3.4