小编izn*_*zne的帖子

使用AVVideoCompositionCoreAnimationTool在CALayer中将视频与静态图像混合

我试图混合视频,来自相机与静态图像(水印).

我在这里查看了一些问题/答案和一些例子,包括来自Apple的WWDC AVEditDemo,并以下面的代码结束.遗憾的是,导出的视频不包含带图像的图层.有任何想法吗?

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {

/// incoming video
NSURL *videoURL = [info valueForKey:UIImagePickerControllerMediaURL];

/// UIImage into CALayer
UIImage *myImage = [UIImage imageNamed:@"m1h.png"];
CALayer *aLayer = [CALayer layer];
aLayer.contents = (id)myImage.CGImage;

AVURLAsset* url = [AVURLAsset URLAssetWithURL:videoURL options:nil];
AVMutableComposition *videoComposition = [AVMutableComposition composition];
NSError *error;
NSFileManager *fileManager = [NSFileManager defaultManager];

AVMutableCompositionTrack *compositionVideoTrack = [videoComposition  addMutableTrackWithMediaType:AVMediaTypeVideo preferredTrackID:kCMPersistentTrackID_Invalid];
AVAssetTrack *clipVideoTrack = [[url tracksWithMediaType:AVMediaTypeVideo] objectAtIndex:0];
[compositionVideoTrack insertTimeRange:CMTimeRangeMake(kCMTimeZero, [url duration])  ofTrack:clipVideoTrack atTime:kCMTimeZero error:&error];

AVMutableVideoComposition* videoComp = [[AVMutableVideoComposition videoComposition] retain];
videoComp.renderSize = CGSizeMake(640, …
Run Code Online (Sandbox Code Playgroud)

objective-c avfoundation calayer ios4 ios

15
推荐指数
2
解决办法
1万
查看次数

标签 统计

avfoundation ×1

calayer ×1

ios ×1

ios4 ×1

objective-c ×1