在 iPhone 上的 openGl 应用程序的背景中播放视频

Posted

技术标签:

【中文标题】在 iPhone 上的 openGl 应用程序的背景中播放视频【英文标题】:Playing video in background of openGl application on iPhone 【发布时间】:2010-08-09 11:45:25 【问题描述】:

我找到了一些关于在 iPhone 上播放全屏视频的教程,但我想知道是否可以在 openGl 动画应用程序的背景中播放嵌入的电影?

电影应该无缝循环播放,并且在播放时不应弹出播放/暂停/音量等任何控制按钮。如果可能,那么性能如何?

【问题讨论】:

【参考方案1】:
    解码下一个视频帧 将帧位图上传到纹理 禁用深度缓冲区读取/写入 使用框架纹理绘制屏幕大小的纹理四边形 重新启用深度缓冲区读取/写入 渲染您的常规场景 转到#1

【讨论】:

谢谢,但您在实践中尝试过吗?听起来非常慢,尤其是在旧 iPhone 上,根据我的经验,将任何内容写入纹理会使这些旧设备的帧速率几乎停止,即使在更新非常小的纹理区域时也是如此。有没有快速上传位图的代码?

以上是关于在 iPhone 上的 openGl 应用程序的背景中播放视频的主要内容,如果未能解决你的问题,请参考以下文章

iPhone 上的 OpenGL ES 2.0:无法超过小索引/顶点数

是否可以在顶点着色器内持续更改 iPhone OpenGL ES 2.0 上的 VBO 值?

Iphone 上的多个 OpenGL ES 视图是不是有高效且标准化的代码?

iPhone/iPad 设备上的 OpenGL 渲染 GL_POINTS 看起来很糟糕(但在模拟器中看起来完全没问题)

iPhone上的图形生成[关闭]

OpenGL ES/iPhone 的透明度/混合问题