Android OpenGL 播放视频学习

Posted 小样来玩玩

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android OpenGL 播放视频学习相关的知识,希望对你有一定的参考价值。

 1, 初步接触Open GL:
  http://www.cnblogs.com/TerryBlog/archive/2010/07/09/1774475.html
  使用GLSurfaceView和Render实现一个简单的三角形和正方形.其中,GLSurfaceView用于显示视图,Render用于3D渲染。这个博客的代码,运行时会报:
  java.lang.IllegalArgumentException: Must use a native order direct Buffer
  是因为顶点Buffer需要使用以下的方式初始化:
  

private static final int FLOAT_SIZE_BYTES = 4;
private FloatBuffer mTriangleVertices;
private final float[] mTriangleVerticesData = {
            // X, Y, Z, U, V
            -1.0f, -1.0f, 0, 0.f, 0.f,
            1.0f, -1.0f, 0, 1.f, 0.f,
            -1.0f,  1.0f, 0, 0.f, 1.f,
            1.0f,  1.0f, 0, 1.f, 1.f,
        };
public void init() {
    mTriangleVertices = ByteBuffer.allocateDirect(
                mTriangleVerticesData.length * FLOAT_SIZE_BYTES)
                    .order(ByteOrder.nativeOrder()).asFloatBuffer();
            mTriangleVertices.put(mTriangleVerticesData).position(0);
}


2,android OpenGL ES教程
  http://blog.csdn.net/column/details/apidemoopengl.html?&page=3
  -- 主要包括了OpenGL ES 1.0和2.0的一些简单用法。


  http://www.jayway.com/2009/12/03/opengl-es-tutorial-for-android-part-i/

  -- 一个外国友人的Android OpenGL ES教程.


3, Android关于SurfaceView, GLSurfaceView, SurfaceTexture, Texture几个View的使用和区别(显示视频的界面)。
  http://www.wfuyu.com/technology/22762.html


4, GLSL教程(Shading language)
  http://blog.csdn.net/racehorse/article/details/6593719


5, 使用TextureView, SurfaceTexture,OpenGL ES来播放视频的教程:
  http://www.jianshu.com/p/d3d3186eefcb
  http://www.jianshu.com/p/b2d949ab1a1a
  http://www.jianshu.com/p/291ff6ddc164

 

以上是关于Android OpenGL 播放视频学习的主要内容,如果未能解决你的问题,请参考以下文章

当替换片段视频仍在android中播放背景时

OpenGL入门学习

Android音视频(六) 使用OpenGL ES 3.0预览Camera

使用 NDK、OpenGL ES 和 FFmpeg 的 Android 视频播放器

Android主流视频播放及缓存实现原理调研

Android使用TextureView播放视频