【发布时间】:2016-02-17 00:20:24
【问题描述】:
我的 [AVAssetWriter startWriting] 在应用程序进入后台时被调用,但它失败并出现以下错误:
Error Domain=AVFoundationErrorDomain Code=-11800 "操作无法完成" UserInfo={NSUnderlyingError=0x13c6cac20 {Error Domain=NSOSStatusErrorDomain Code=-16980 "(null)"}, NSLocalizedFailureReason=发生未知错误 (-16980 ), NSLocalizedDescription=操作无法完成}
这甚至可能在 applicationDidEnterBackground 被调用之前发生。我只需要在应用程序进入后台时暂停视频录制,然后在应用程序进入前台时恢复录制。
我还尝试在我的 [AVAssetwriter startWriting] 周围购买 beginBackgroundTaskWithExpirationHandler,但它仍然失败。
当应用程序进入后台并稍后进入前台时,处理视频录制的正确方法是什么。
谢谢。
【问题讨论】:
-
您确定视频实际上是正确合成的吗?当 AVFoundation 的设置出现问题时(可能是重叠的时间范围?),此错误非常常见。我会先在前台对其进行测试,并 100% 确定视频正在正确构建,然后再查看后台问题。
-
是的。它始终在前台正确工作。请注意,在添加任何视频缓冲区之前,开始写入失败。
-
您能否包含更多代码,以便我们复制问题?
-
你解决了这个问题吗?在我的应用程序中,当应用程序处于前台时一切正常。一旦用户在后台放下应用程序并再次移动到前台,则 appendPixelBuffer 方法返回 false。请建议我如何解决它。
标签: ios avfoundation avassetwriter