作为预设,AVCaptureSessionPresetHigh
对我来说很有意义。硬件总是在变化,可以选择告诉 AVCapture “我想要给定当前硬件,你能给我的最高质量”是有意义的,但让我发疯的只是因为我想将 session 设置为抽象值,并不意味着我不需要知道它显示的分辨率。
确定当前分辨率的唯一方法是实际捕获帧并检查所述帧的大小。或者更糟糕的是,手动查找所有这些分辨率,创建一个查找字典,向设备询问它的型号,然后获取硬编码的分辨率。这是一个完整的 hack,但仍然比强制捕获帧然后向 UIImage 询问其帧大小要好。
我迫切需要这些信息,以便根据相机提供的纵横比动态做出决策。这么简单的查询为什么苹果没有接口(interface)呢?
有谁知道列出整个 Apple 硬件市场中两款相机的所有可能分辨率的资源?我可以用谷歌搜索一些,但我无法找到完整的列表。
最佳答案
给定 AVCaptureDevice
,您应该能够在 formats
处枚举或检查 activeFormat
,然后查看 highResolutionStillImageDimensions结果
。 AVCaptureDeviceFormat
的
关于ios - 后置和前置摄像头的 AVCaptureSessionPresetHigh 的所有分辨率是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27830002/