Android使用mediacodec和Opengl es将图像转换为视频
我从:、EncodeAndMuxTest示例开始。这些帧是使用opengl生成的。我更改了generateSurfaceFrame()方法,如下所示:Android使用mediacodec和Opengl es将图像转换为视频,android,opengl-es,android-mediacodec,Android,Opengl Es,Android Mediacodec,我从:、EncodeAndMuxTest示例开始。这些帧是使用opengl生成的。我更改了generateSurfaceFrame()方法,如下所示: private void generateSurfaceFrame(int frameIndex) { final int[] textureHandle = new int[1]; GLES20.glGenTextures(1, textureHandle, 0); if (textureHandle[0] != 0)
private void generateSurfaceFrame(int frameIndex)
{
final int[] textureHandle = new int[1];
GLES20.glGenTextures(1, textureHandle, 0);
if (textureHandle[0] != 0)
{
// decode image to bitmap
final Bitmap bitmap = BitmapFactory.decodeFile("PathToMyImage.jpg");
GLES20.glEnable(GL10.GL_TEXTURE_2D);
// Bind to the texture in OpenGL
GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, textureHandle[0]);
// Set filtering
GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D,
GLES20.GL_TEXTURE_MIN_FILTER, GLES20.GL_NEAREST);
GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D,
GLES20.GL_TEXTURE_MAG_FILTER, GLES20.GL_NEAREST);
// Load the bitmap into the bound texture.
GLUtils.texImage2D(GLES20.GL_TEXTURE_2D, 0, bitmap, 0);
// Recycle the bitmap, since its data has been loaded into OpenGL.
bitmap.recycle();
}
}
问题是,我得到的只是一个黑色背景的视频,我不知道是否正确加载了图像,或者如何使用Opengl绘制图像。
我将感谢任何帮助
谢谢。您有没有找到解决方案?