objective-c - AVFoundation 录制 - 奇怪的错误 : Index Out of Bounds

标签 objective-c ios avfoundation

我现在很可能在我的应用程序中完成视频录制时发生了最奇怪的错误。使用 AVFoundation,我在 View 中设置了所有内容以初始化相机。一切都工作得很好,除了设备水平面朝上或朝下放置时除外。我应该提到的是,这是在 iPad 2/3 上进行的。

根据调试器的说法,这是异常:

*** AVCaptureFileOutput: ignoring exception '*** -[__NSArrayM objectAtIndex:]: index 0
beyond bounds for empty array' that raised during delegate method

现在,只要我单击“录制”,并且仅当设备面朝上或面朝下水平放置时,就会发生此错误。如果我随后旋转设备,即使在这两个方向上,我也可以正常录制。这让我相信 View 首次出现时设备的当前/默认方向正在影响录制。我只是不确定为什么会发生这个错误,而且它不是我的代码 - 我尝试了 objectAtIndex: 的断点,它没有返回任何内容,并且我为异常抛出设置了断点,这只会导致我仔细研究汇编代码。

有什么想法吗?

最佳答案

我以前使用 UIWebView 时也遇到过类似的情况。从短语忽略异常(我也见过)推断出来,您的应用程序不会崩溃,不是吗?如果没有,那么这似乎是 Apple 代码中的内部错误,您只能做两件事:向 Apple 提交错误报告,然后执行系统执行的操作 - 忽略它。

关于objective-c - AVFoundation 录制 - 奇怪的错误 : Index Out of Bounds,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11850876/

相关文章:

c++ - 使用 Objective-C++ 从字节数组中读取特定字节并将它们转换为十六进制表示

objective-c - 解析继承委托(delegate)的不兼容属性类型的语法

ios - 以编程方式查看 Controller ?

ios - AVPlayer 第一次失败后,我再也收不到 KVO 回调了

ios - 使用AVFoundation框架进行视频录制

objective-c - UIAlert View Objective C - 打开应用商店链接

objective-c - 成员 'observe' 不能用于协议(protocol)类型的值;改为使用通用约束

ios - UIView 上面的 UIAlertView

ios - 如何检测我的设备是否是 Swift 4 中的 iPhone X?

ios - AVFoundation:导出时正确地将视频适合 CALayer