AVAssetExport 失败 "cannot decode"

AVAssetExport fails "cannot decode"

您好,我遇到了 AVAssetEXport 问题。我正在尝试 一个接一个地组合多个视频 ,比方说 20 - 30,将每个资产添加为带有 insertTimeFrame 的 VideoMutableCompositon 的轨道:

|视频1|视频2| ... |视频i| ... |videoN|

如果我导出超过 15 - 16 个视频,我会收到以下错误:

失败:错误域=AVFoundationErrorDomain 代码=-11839 "Cannot Decode" UserInfo={NSLocalizedDescription=无法解码,NSUnderlyingError=0x1c8044620 {错误域=NSOSStatusErrorDomain 代码=-12913“(空)”},NSLocalizedRecoverySuggestion=停止解码媒体的任何其他操作,然后重试。NSLocalizedFailureReason=此媒体所需的解码器正忙。}

我确定这不是 RAM 问题,因为我使用的是 iphone8 plus 并且 xcode 显示内存不足 activity。 如果我将视频数量减少到 5 - 8 个,一切都会很好...

添加视频轨道有限制吗? 谁能帮我实现这个目标?

终于找到原因了,是我的错! 问题是我在 AVMutableCompositionTrack 中循环。 所以每个视频都在不同的轨道上,这可能导致资源不足。 现在我只创建了 2 个音轨:1 个用于视频,1 个用于音频。 我所有的视频都是用时间范围拼接的。

谢谢大家!!!