【发布时间】:2011-10-10 10:04:47
【问题描述】:
我需要做的是解码视频帧并将帧渲染到梯形表面上。我使用 Android 2.2 作为我的开发平台
我没有使用媒体播放器服务,因为我需要访问解码的帧。
这是我目前所拥有的:
- 我正在使用 stagefright 框架来提取解码的视频帧。
- 每一帧然后从 YUV420 转换为 RGB 格式
- 然后将转换后的帧复制到纹理并渲染到 OpenGL 表面
- 请注意,我使用的是 Processing 而不是直接使用 OpenGL 调用。
所以现在我的问题是
- 我只能用stagefright解码mp4文件
- 渲染太慢,320x420 帧大约 100 毫秒
- 还没有音频,我只能渲染视频,但我仍然不知道如何同步音频帧的播放。
所以对于我的问题...
- 如何支持其他视频格式?我应该使用 stagefright 还是应该切换到 ffmpeg?
- 如何提高性能?我应该能够支持至少 720p 吗?
- 我应该直接使用 OpenGL 调用而不是处理吗?这会提高性能吗?
- 如何在播放过程中同步音频帧?
【问题讨论】:
-
Android 2.2...在什么上?个人电脑?药片?更新的年份 G1?
-
它实际上是在一个定制的嵌入式设备上,或多或少有点像平板电脑。它基于arm cortex a8处理器。希望这能回答你的问题
标签: android opengl-es processing android-video-player stagefright