小编Rus*_*ian的帖子

修改CMSampleBuffer内容的最有效方法

我想修改CMSampleBuffer的内容,然后将其写入具有AVAssetWriter/AVAssetWriterInput的文件.

我这样做的方法是创建一个Core Graphics位图上下文然后绘制它,但它太慢了.具体来说,我需要将图像绘制到缓冲区中.

那么可以提供某种关于如何更有效地做到这一点的提示或建议吗?

我想过使用OpenGL来实现它,即首先从CMSampleBuffer创建一个纹理A. 然后将从我想要绘制的图像创建的纹理B渲染到纹理A中,然后从OpenGL检索支持纹理A的数据,最后将该数据移交给AVAssetWriter/AVAssetWriterInput.但是文档说,将纹理数据从GPU传输回CPU有点贵.

那么,有关如何处理的任何建议?

提前致谢

avfoundation ios

6
推荐指数
1
解决办法
5206
查看次数

标签 统计

avfoundation ×1

ios ×1