如何将静态图像添加到AVComposition?

我有一个带有视频轨道的
AVMutableComposition
,我想在视频轨道中添加一个静止图像,以便在一段时间内显示。静止图像只是一个PNG。我可以将图像作为资产加载,但这就是它,因为结果资产没有任何轨道,因此无法使用
insertTimeRange…
方法简单地插入。 有没有办法将静止图像添加到合成中?看起来答案在Core Animation的某个地方,但整个事情似乎有点高于我的头脑,我会很感激代码示例或一些信息指针。     
已邀请:
好。有一个很棒的视频叫WWDC的AV Foundation编辑媒体,它解释了很多。您无法将图像直接插入
AVComposition
时间轴,至少我没有找到任何方法。但是在导出或播放资产时,您可以参考
AVVideoComposition
。这可能不是这个类的完美名称,因为它允许你在资产中的各种视频轨道之间混合,非常像
AVAudioMix
用于音频。
AVVideoComposition
具有
animationTool
属性,可让你将核心动画层(
CALayer
)投入混音。
CALayer
有一个
contents
属性,可以分配
CGImageRef
。在我的情况下没有帮助,可能会帮助别人。     
我的构图中还需要静止图像。我的思路有点不同。插入即时黑色电影代替图像应该出现(可能一个这样的视频就足够了)。为每个这样的插入添加字典引用,将组合时间范围链接到真正想要的图像。当正确的时间范围到达我的全时自定义合成器时,拉出所需的图像并将其绘制到输出像素缓冲区中,忽略合成中传入的黑色帧。我认为这是另一种做法。     

要回复问题请先登录注册