【发布时间】:2011-09-28 07:44:53
【问题描述】:
我正在尝试找出在 GL 纹理上显示视频同时保留 Alpha 通道透明度的最佳方法。
关于视频作为 GL 纹理的信息在这里:Is it possible using video as texture for GL in iOS? 和 iOS4: how do I use video file as an OpenGL texture?。
使用 ffmpeg 来帮助提高 alpha 透明度,但不适合应用商店: iPhone: Display a semi-transparent video on top of a UIView?
视频源将在绿色屏幕前拍摄以进行色度键控。视频可以保持原样离开绿屏或在视频编辑套件中处理并导出到 Quicktime Animation 或 Apple Pro Res 4444 with Alpha。
我认为有多种方法可能可行,但我还没有找到完整的解决方案。
- 视频的实时阈值处理寻找绿色来移除
- 了解如何使用上述 Quicktime 编解码器来保留 Alpha 通道
- 将两个视频混合在一起:1) 使用 RGB 的主视频 2) 使用 alpha 蒙版的单独视频
我很想听听您对 iOS 和 OpenGL ES 2.0 最佳方法的看法
谢谢。
【问题讨论】:
-
对我来说完全不清楚你想做什么。如何将视频传送到应用程序?
-
很可能本地存储在主包中
-
你总是可以在着色器中进行颜色键控,这是一个非常简单的操作。
-
那么这将是每个视频帧的实时颜色键控?这会影响性能吗?
-
@ryatkins 您最终选择了上述任何选项吗?我刚刚开始对此进行一些研究,并且遇到了您的问题,这正是我在这个阶段问自己的问题。任何帮助将不胜感激。
标签: ios video opengl-es transparency alpha