android – 使用MediaCodec录制曲面

前端之家收集整理的这篇文章主要介绍了android – 使用MediaCodec录制曲面前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
所以,在我的应用程序中,我可以使用 GPUImage库来显示来自Camera的视频的效果(如模糊滤镜,高斯).

基本上,我(库)将从Camera获取输入,获取原始字节数据,将其从YUV格式转换为RGBA格式,然后对该图像应用效果,并使用OpenGL显示在GLSurfaceView的Surface上.最后,给用户,它看起来像一个应用了效果的视频.

现在我想使用MediaCodec API将Surface的框架记录为视频.

但是这个discussion表示我们不能将预定义的Surface传递给MediaCodec.

我在bigflake看到一些样本,他正在使用MediaCodec.createInputSurface()创建Surface,但对于我来说,Surface来自GLSurfaceView.

那么,如何将一个Surface作为视频录制?

我将并行录制音频,使用FFMPEG合并该视频和音频,并将视频应用于视频.

解决方法

您可以在 Grafika中看到一个完整的例子.

特别地,“显示拍摄相机”活动将相机输出记录到.mp4.它也是demonstrates在GL着色器中应用一些简单的图像处理技术.它使用GLSurfaceView和复杂的舞蹈来保持记录的方向变化.

也可能感兴趣的是,“使用FBO记录GL应用程序”活动记录OpenGL ES呈现了几种不同的方式.它使用简单的SurfaceView,更直接.

猜你在找的Android相关文章