Android mediacodec:是否可以使用 mediacodec 和 muxer 同时对音频和视频进行编码?

Android mediacodec: Is it possible to encode audio and video at the same time using mediacodec and muxer?

在名为 big flake 的 this 网站上有一些很好的文档,介绍了如何使用媒体复用器和 mediacodec 将视频编码然后解码为 mp4,或者提取视频然后再次编码等等。

但是似乎没有办法同时对音频和视频进行编码,没有关于此的文档或代码。好像也不是不可能。

问题

你知道有什么稳定的方法可以在所有大于 android18 的设备上运行吗?

为什么没人实现,难实现吗?

你必须创建 2 个 Mediacodec 实例,一个用于视频,一个用于音频,然后在编码后使用 MediaMuxer 将视频与音频混合,你可以看看 ExtractDecodeEditEncodeMuxTest.java and at this project to capture camera/mic and save to mp4 file using Mediamuxer and Mediacodec