我从 640x480(对我来说足够)的 android 相机中获取相机预览帧,并对它们进行一些修改。但现在我需要将它们编码为新的 MP4
文件(带音频)。
这怎么可能?我不能使用 ffmpeg
,因为它的许可证不太好,但我发现 Stagefright
框架应该能够做到这一点。但是我没有找到任何官方文档或教程来做我需要做的事情。
请问有没有办法用这个框架来做?我不需要代码,如果能为我指明正确的方向,我会非常高兴。
最佳答案
有一个场景可以实现所描述的用例。考虑这样一种情况,其中 Camera
输出被馈送到 OpenGL
库,其中一些效果应用于需要记录的预览帧。
在这种情况下,您可以使用传统的 MediaRecorder
和 GrallocSource
而不是 CameraSource
。设置看起来像这样:
MediaRecorder
使用 GrallocSource
设置。用于记录的输入表面由实现 SurfaceTextureClient
的 Camera
+ OpenGL
组合操作提供。一个很好的例子可以在 SurfaceMediaSource_test
modules 中找到。 .
关于android - 如何在android上将相机帧编码为mp4,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23450387/