我有一个严重的问题:我有NSArray几个UIImage对象。我现在想做的是从那些UIImages. 但我不知道该怎么做。
NSArray
UIImage
UIImages
我希望有人可以帮助我或向我发送一个代码片段,它可以做我想做的事情。
编辑: 供将来参考 - 应用解决方案后,如果视频看起来失真,请确保您正在捕获的图像/区域的宽度是 16 的倍数。经过数小时的努力后在这里找到: 为什么我的 UIImages 电影会得到扭曲?
这是完整的解决方案(只需确保宽度是 16 的倍数) http://codethink.no-ip.org/wordpress/archives/673
看看AVAssetWriter和AVFoundation 框架的其余部分。writer 有一个AVAssetWriterInput类型的输入,它又具有一个名为appendSampleBuffer:的方法,可让您将单个帧添加到视频流中。基本上你必须:
1)给作者接线:
NSError *error = nil; AVAssetWriter *videoWriter = [[AVAssetWriter alloc] initWithURL: [NSURL fileURLWithPath:somePath] fileType:AVFileTypeQuickTimeMovie error:&error]; NSParameterAssert(videoWriter); NSDictionary *videoSettings = [NSDictionary dictionaryWithObjectsAndKeys: AVVideoCodecH264, AVVideoCodecKey, [NSNumber numberWithInt:640], AVVideoWidthKey, [NSNumber numberWithInt:480], AVVideoHeightKey, nil]; AVAssetWriterInput* writerInput = [[AVAssetWriterInput assetWriterInputWithMediaType:AVMediaTypeVideo outputSettings:videoSettings] retain]; //retain should be removed if ARC NSParameterAssert(writerInput); NSParameterAssert([videoWriter canAddInput:writerInput]); [videoWriter addInput:writerInput];
2)开始一个会话:
[videoWriter startWriting];