【问题标题】:play video using opengles, android使用opengles,android播放视频
【发布时间】:2010-01-05 12:53:34
【问题描述】:

如何在android中使用opengl es播放视频?

【问题讨论】:

    标签: android opengl-es


    【解决方案1】:

    你的问题有点含糊。如果您只想在 GL 表面上播放视频,这是可能的。请参阅 Dave 在他的示例中提到的 Media Player sample code。您所要做的就是在 MediaPlayerDemo_Video.java 文件以及相应的布局文件 (mediaplayer_2.xml) 中将 SurfaceView 替换为 GLSurfaceView

    您还需要创建一个自定义渲染器类(实现GLSurfaceView.Renderer 接口的类)并将其设置为您的GLSurfaceView

    完成所有这些操作后,您的视频将在 GL 表面上播放,但仅此而已。

    另一方面,如果您想操作视频,即在 GL 纹理中绘制视频帧并为其添加效果或变换(例如缩放、旋转等),那么我可以怕这个做不到。原因是您无权访问应用程序中的原始视频帧。

    【讨论】:

    • 这是在 1 月 5 日回答的。“访问原始视频帧”是否已更改?您能否更具体地说明哪一行代码可以防止这种情况发生?
    • 你好 Stelian。视频帧的缩放和旋转可以使用带有 OpenGLES2.0 代码的 GLSurfaceView 来完成。请检查此github.com/satish13131/Android_Programs/tree/master/graphics/… 您可以在 mvp 矩阵上应用缩放和旋转操作,并在视频上获得理想的结果
    【解决方案2】:

    我不确定您为什么在这里提到 OpenGL,但播放视频的最简单方法可能是使用 VideoView class。你也想看看MediaPlayer class

    您可能会发现Audio and Video page in the Android Developer Documentation 很有帮助。

    Android SDK 提供的 API 演示中有 VideoView sample codeMediaPlayer sample code

    【讨论】:

      猜你喜欢
      • 2012-11-02
      • 2011-10-01
      • 1970-01-01
      • 2016-12-28
      • 2012-12-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多