访问 iOS 6 新 API 以获取相机曝光和快门速度

2024-04-07

在苹果的iOS 6.0 功能页面 https://developer.apple.com/technologies/ios6/,过去常说

利用内置摄像头的高级功能。新的 API 可让您控制焦点、曝光和感兴趣区域。您还可以使用人脸检测 API 访问和显示人脸,并利用硬件支持的视频稳定功能。

此文本已被删除,并且我在 API 中找不到用于控制曝光的新方法。在班上AVCaptureDevice在“曝光设置”下,iOS 6.0 没有新的属性/方法。你知道我可以在哪里找到 API 中公开的新功能吗?


确实有一个-exposureMode属性于AVCaptureDevice,但这仅用于设置模式(关闭/自动/连续),而不是实际的光圈值、SS 或 ISO。提供“曝光”控制的相机应用程序似乎都是通过后期处理来实现的。

然而,框架中似乎有未记录的 API 可以执行此操作。查看完整标题AVCaptureDevice.h https://github.com/nst/iOS-Runtime-Headers/blob/master/Frameworks/AVFoundation.framework/AVCaptureDevice.h (via a 类转储 http://www.codethecode.com/projects/class-dump/)并注意以下方法:

- (void)setManualExposureSupportEnabled:(BOOL)arg1;
- (BOOL)isManualExposureSupportEnabled;

- (void)setExposureGain:(float)arg1;
- (float)exposureGain;

- (void)setExposureDuration:(struct { long long x1; int x2; unsigned int x3; long long x4; })arg1;
- (struct { long long x1; int x2; unsigned int x3; long long x4; })exposureDuration;

- (void)setExposureMode:(int)arg1;
- (int)exposureMode;

- (BOOL)isExposureModeSupported:(int)arg1;

我的猜测是gain是等效光圈值(固定光圈),并且duration是快门速度。我想知道这些是否用于 iPhone 5弱光增强模式 http://blog.crushapps.com/2012/09/the-iphone-5s-low-light-boost-mode/.

您还可以使用otool https://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man1/otool.1.html四处探索并尝试将这些符号拼凑在一起。可能有一个新的常数exposureMode用于启用手动控制,以及exposureDuration似乎它也有标志。调用这些时,请确保使用新的-isExposureModeSupported:并且还打电话-respondsToSelector:以检查兼容性。

与往常一样,Apple 不赞成使用私有 API,并且会被 App Store 拒绝。可能有解决这个问题的方法,例如使用隐藏调用-performSelector: or obc_msgsend https://developer.apple.com/library/mac/documentation/Cocoa/Reference/ObjCRuntimeRef/Reference/reference.html#//apple_ref/c/func/objc_msgSend使用 rot13 字符串或其他东西,因为我很确定它们只对应用程序二进制文件进行静态分析。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

访问 iOS 6 新 API 以获取相机曝光和快门速度 的相关文章

  • 在 Obj C 中使用 Brad Larson GPUImage 创建照片草图效果

    您好 我想尝试使用 Brad Larson 的照片上的素描效果GPUImage sdk in iOS 我正在尝试创建这样的草图效果 但我得到的素描效果是这样的 我正在使用 GPUImageSketchFilter 来创建此效果 以下是我为实
  • 当方法重新运行时,在方法中循环dispatch_after会导致许多同时调度

    我正在创建一个简单的游戏 我有以下代码 void doStuff double delayInSeconds NSNumber randomFloatBetweenLowerBound 0 8f upperBound 2 6f Own ca
  • iPhone文本框显示光标

    我正在为 iPhone 开发一个计算器 设计类似于这样 问题是我无法在文本字段中显示光标 因为输入是通过图像等按钮进行管理的 此外 textField comeFirstResponder 不起作用 因为它显示默认键盘 所以我尝试 text
  • 将 NSTextAttachment 图像置于单行 UILabel 旁边

    我想附加一个NSTextAttachment图像到我的属性字符串并使其垂直居中 我使用以下代码来创建我的字符串 NSMutableAttributedString str NSMutableAttributedString alloc in
  • Box2d 自定义多边形和精灵不匹配

    我正在使用物理编辑器在 Box2d 中创建多边形 它生成多边形并在非视网膜显示器中工作正常 但在视网膜显示器中不起作用 我已附上两个显示器的屏幕截图 现在 当谈到视网膜显示器时 未设置多边形在汽车上方 这是该图像 这是我在项目中使用的代码
  • Xcode 更改未修改的 Storyboard 和 XIB 文件

    从 git 工作流程的角度来看 当多人协作时 故事板是一种巨大的痛苦 例如 storyboard 文件中的 XML 有其起始位置
  • 当需要切换rootViewController时

    我一直在开发一个 Swift 项目 我有两个视图控制器 登录视图控制器和主页视图控制器 当用户启动应用程序时 如果用户未登录 我想显示登录视图控制器 另一方面 如果用户登录 我想显示主页视图控制器 所以流程会是这样的 当用户未登录时 显示
  • iPhone Mobile Safari,最大并行 http 连接数是多少?

    我想在 iPhone Mobile Safari OS4 中使用并行 AJAX HTTP 请求 最大并行连接数是多少 如果我没记错的话 Safari 最多使用 4 个到同一服务器的连接 但您可以使用以下命令自行测试这个小测试用例 http
  • 更改 UITextField 占位符颜色

    如何动态更改占位符颜色UITextField 这始终是相同的系统颜色 xib 编辑器中没有选项 来自文档 property 非原子 复制 NSAttributedString attributedPlaceholder 该属性默认为零 如果
  • 如何从字符串中删除或替换所有标点符号?

    我有一个由单词组成的字符串 其中一些包含标点符号 我想删除它们 但我一直不知道如何做到这一点 例如 如果我有类似的东西 var words Hello this is a string 我希望能够创建一个数组 Hello this is a
  • 如何删除WKWebView中的缓存?

    任何一个合作过的人WKWebView并尝试清除缓存 如果是 该怎么做 有什么例子吗 P S Normal NSURLCache不管用 更新的 Swift 5 版本 WKWebsiteDataStore default removeData
  • 一个游戏中心帐户可容纳两个 iOS 应用程序

    有人知道我需要做什么才能让我的免费版本和付费版本提供相同的游戏中心排行榜吗 恐怕这是不可能的 因为游戏中心使用应用程序的 捆绑包标识符 例如 com myCompany myCoolGame 来标识游戏 并且两个应用程序不能具有相同的标识符
  • UIScrollView 在 vi​​ewwillappear 中设置 contentoffset 不起作用

    我想知道是否可以在 viewwillappear 方法中为 uiscrollview 设置 contentoffset void viewWillAppear BOOL animated self scrollView setContent
  • 如何使用speakhere示例中的AQRecorder

    我已经从 talkHere 示例中复制了 AQRecorder 以及所有其他所需的文件 这样做之后 由于编译错误 我将链中使用它的所有类重命名为 mm 现在似乎已解决 但是我仍然不知道如何使用 AQRecorder 类 该示例中还有另一个名
  • 在 lldb 中的“NSMutableArray *”PO 命令类型的对象上找不到属性“count”

    我正在使用控制台po一些变量 在这种情况下我有一个NSMutableArray 我想看看它的计数 我收到一个奇妙的错误 有任何想法吗 我知道我可以看到变量列表中的计数 它说 1个对象 但我在使用时似乎对多个获取器和属性有这个错误po 更新
  • 为什么 Xcode 在构建到设备时会复制未更改的资源?

    我正在处理一个相当大的 资源较多的 iOS 项目 我不禁注意到 Xcode 复制了数百个资源 纹理 精灵表 声音文件等 这些资源自上次以来根本没有改变我构建该设备的时间 当每个构建需要 2 4 分钟才能在设备上弹出时 这使得编码变得非常非常
  • 在 WKWebView 中加载 Microsoft Office 文档

    我已经使用 UIWebView 在我的应用程序中显示 Microsoft Office 文档 Word PowerPoint Excel 一段时间了 但 Apple 最近已弃用 UIWebView 类 我正在尝试切换到 WKWebView
  • 在 swift for iOS 中以编程方式设置图像的拉伸参数

    因此 如果我们只想拉伸图像的一部分 无论是常规图像还是背景图像 我们在布局编辑器中使用以下设置 您如何以编程方式设置这些 我正在使用 Xcode 7 2 1 指定图像的上限插图 您可以通过使用来设置拉伸细节UIImage method re
  • 如何移动 UITextField 中的清除按钮?

    由于某种原因 当我添加 UITextfield 作为表格单元格内容视图的子视图时 清除按钮与字段中键入的文本不对齐 并且出现在其下方 有什么方法可以移动清除按钮的文本来阻止这种情况发生吗 谢谢你的帮助 正如 Luda 所说 正确的方法是子类
  • UITextView分页启用文本截断

    我正在使用 UITextView 并启用分页 在 IB 中并以编程方式打开和关闭它 有很多文本 当启用分页滚动时 有时当前可查看文本的第一行和 或最后一行会在视图中的一半处结束 而在框架的底部或顶部则有一半在视图之外 因此您只能看到顶部或顶

随机推荐