您好,我遇到了 AVAssetEXport 的问题。我正在尝试一个接一个地合并多个视频,比方说 20 - 30,将每个 Assets 添加为带有 insertTimeFrame 的 VideoMutableCompositon 轨道:
|视频1|视频2| ... |视频i| ... |视频N|
如果我导出超过 15 - 16 个视频,我会收到以下错误:
失败:错误域=AVFoundationErrorDomain 代码=-11839“无法解码”UserInfo={NSLocalizedDescription=无法解码,NSUnderlyingError=0x1c8044620 {错误域=NSOSStatusErrorDomain 代码=-12913“(空)”},NSLocalizedRecoverySuggestion=停止任何其他操作解码媒体并重试。, NSLocalizedFailureReason=该媒体所需的解码器正忙。
我确定这不是 RAM 问题,因为我使用的是 iphone8 plus,而且 xcode 显示 RAM 事件较低。 如果我将视频数量减少到 5 - 8 个,一切都会很好......
添加视频轨道有限制吗? 谁能帮助我实现这个目标?
最佳答案
终于找到原因了,是我的错! 问题是我在 AVMutableCompositionTrack 中循环。 所以每个视频都在不同的轨道上,这可能导致资源不足。 现在我只创建了 2 个音轨:1 个用于视频,1 个用于音频。 我所有的视频都按时间范围拼接。
谢谢大家!!!!
关于swift - AVAssetExport 失败 "cannot decode",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46800220/