2

我和我的团队有一个问题,我们现在几周都无法解决。

当我们在两个视频之间向前搜索时AVComposition- 预览冻结(AVPlayer用于AVPlayerLayer播放)。它卡在第一个视频的最后一帧。如果它是简单的播放(不是搜索)或者搜索速度很快,它不会冻结。

这是正在发生的事情的屏幕录像: https ://www.dropbox.com/s/hxk33u3id7eug2i/AVCompositionFreezeScreenRecording.mov?dl=0

感觉就像我们尝试了一切,但没有任何帮助。添加第二个视频时,我们要求AVMutableComposition一个兼容的轨道,它返回给我们现有的轨道,因此我们得出结论两者assetTrack是兼容的。

多次检查所有范围和持续时间。

它在videoComposition设置时playerItem和未设置时都会失败。

我目前的理论是即使composition说存在compositionTrack与第二个视频兼容,我们也不能出于某种原因将第二个视频放入其中,也许转换不兼容或者我不知道。还有一点需要注意 - 如果我们videoAssetTrack采用持续时间短于的源范围videoAssetTrack.timeRange.duration- 那么一切正常。分段时间映射可能存在一些问题,但我们尝试使用它的任何方法都失败了。

我试图尽量减少演示问题所需的代码量,所以希望很容易理解我在说什么。只需从 video1 的末尾慢慢搜索到 video2 的开头,它就会卡住。 https://www.dropbox.com/s/c6guzplt5mq4zpi/AVCompositionFreezeDemo.zip?dl=0

非常感谢您,任何帮助将不胜感激!

4

0 回答 0