如何在iOS上使用AVMutableComposition和CALayers将多个CALayer添加到视频文件中
问题描述:
我想按时间顺序依次添加多个CALayer
.I可以使用此链接Here添加一个图层到视频文件。现在我的问题是,我怎么能添加多个CALayer
视频文件。如何在iOS上使用AVMutableComposition和CALayers将多个CALayer添加到视频文件中
在此先感谢..
答
最直接的方法是将几个图层打包成单个图层。您将不得不添加说明,在某些时候添加它,并在不需要时删除。事情是这样的:
CABasicAnimation *fadeAnimation = [CABasicAnimation animationWithKeyPath:@"opacity"];
fadeAnimation.fromValue = [NSNumber numberWithFloat:(float)!fadeIsIn];
fadeAnimation.toValue = [NSNumber numberWithFloat:(float)fadeIsIn];
fadeAnimation.additive = NO;
fadeAnimation.removedOnCompletion = NO;
fadeAnimation.beginTime = atTime;
fadeAnimation.duration = duration;
fadeAnimation.fillMode = kCAFillModeBoth;
[layer addAnimation:fadeAnimation forKey:nil];
在这个例子中,你可以做淡入/输出(1.0启动和0.0基本上淡出)。 atTime是你希望这个图层开始显示/删除的时间,并且持续时间是淡出持续时间(所以如果某个小数字为0.0001(从未尝试0.0(为什么?)),它将不会淡入淡出,而只是简单的切换)。图层是您希望在某个点显示/删除的CALayer。你需要明确地调用这个方法两次,一次用于淡入,第二次用于淡出。让我知道如果你有更好的解决方案! :) ps只是注意到这是一个非常古老的问题!
有什么办法可以添加多个图层。我想要添加第一个图层5秒钟和5秒后我想添加另一个图层10秒并删除第一个图层... – 2012-07-17 09:54:01
我在这里得到同样的问题添加多个CALayers视频文件,你有什么想法吗? – 2012-07-25 06:32:50