iPhone:录制视频的效果?

4
我有一个程序,允许用户录制视频。我必须提供像黑白、水晶等选项,就像“Viddy”iPhone应用程序为录制的视频设置更多效果一样。我如何在编程中实现它?
请指导我。
谢谢!
1个回答

7
这是一种方法:
  1. 使用AVCaptureSession+AVCaptureVideoDataOutput开始捕获视频帧
  2. 将帧转换为OpenGL纹理以进行显示
  3. 为每个所需效果编写GLSL着色器,并应用于步骤2中的纹理
  4. 读取纹理+效果并写入电影文件
  5. 优化,直到性能足够
  6. 回到第5步
第5步可能是最重要的。您需要调整和微调算法、视频质量、纹理大小、帧速率、着色器等。
享受吧!

我的应用程序不是一个OpenGL应用程序。 - Getsy
1
我认为你在这里无法避免使用OpenGL。 - Rhythmic Fistman
在第四步中,您将如何读取纹理并保存到文件中?使用UIImage吗?还是其他什么? - Or Arbel
1
无论是glReadPixels > CGBitmapContext > CGImage > UIImage > UIImagePNGRepresentation,还是RenderToTexture在CVOpenGLESTextureCache管理的CVPixelBuffer上,然后再使用CGBitmapContext等等,都似乎太长了。我相信你可以找到更简单的解决方案,减少复制。另外,这可能应该是一个新问题。 - Rhythmic Fistman

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接