【问题标题】:OpenGL in Android for video displayAndroid中的OpenGL用于视频显示 【发布时间】:2014-01-13 12:55:53 【问题描述】: 是否可以使用 OpenGL 显示视频并能够在运行时调整视图大小? 【问题讨论】: 标签: android opengl-es 【解决方案1】: 是的,它通过 glTexSubImage2D 将每一帧作为纹理上传。我已经对基于 FFmpeg 的解码器的输出进行了测试,效果很好。 【讨论】: 这是软件还是硬件加速,因为软件太慢了。 “会不会”太慢?不试怎么知道?此外,OpenGL 不是视频播放的最佳选择,除非您追求视频输出的可移植性或 3D 转换。使用此方法在 GPU 上执行调整大小。然而,它在特定的 Snapdragon 硬件(如 Nexus One)上会“慢”。 嗨,很抱歉打扰,但是@ognian,你提到 OpenGL 不适合渲染视频帧。我刚刚问了一个question about this,你介意看看吗? 当然需要尝试一下,但我相信您最终会意识到在分辨率 > 480p 时需要硬件解码。特别是如果您解码 H264 流。使用 MPeg4 第 2 部分,您可能会更快一些,但它也会使用多 1/3 的带宽。