我已经在此处和其他论坛中以多种形式询问过此问题。其中一些问题得到解答,有些则没有。有几个答案者或作者声称已经取得成功。我已经实施了那些声称取得成功的例子,但还没有看到相同的结果。iOS:如何使用AVAssetWriter制作具有一系列图像的电影
当从AVCaptureSession获取样本缓冲区时,我能够成功使用AVAssetWriter(和AVAssetWriterInputPixelBufferAdaptor)同时写入图像数据和音频数据。但是,如果我有以其他方式生成的CGImageRef,并且“从头开始”构建CVPixelBufferRef,则AVAssetWriterInputPixelBufferAdaptor的appendPixelBuffer:withPresentationTime方法会成功几帧,然后对所有后续帧都会失败。生成的电影文件当然无效。
你可以看到我的示例代码:http://pastebin.com/FCJZJmMi
的图像是有效的,并在调试窗口中显示的验证(见第50-53行)。该应用程序已通过仪器测试,并且在应用程序的整个运行过程中内存利用率很低。它没有得到任何内存警告。
据我所知我已经遵循了可用的文档。为什么示例代码失败?需要做些什么来解决它?
如果有人已经成功地得到了AVAssetWriterInputPixelBufferAdaptor用自己的图像工作,请附和。
链接到日志消息从运行的应用程序:http://pastebin.com/n6hJXs57 – mdl 2011-01-28 18:55:52