我真的希望有人能给我指出一个代码,演示如何使用 MediaMuxer 记录表面 View 和音频并输出 mp4 文件视频。
基本上我想做的是记录我的表面 View 上发生的事情,并将其与听到的任何音频结合起来。 (麦克风)
我很难相信没有人有完整的示例代码来演示如何做到这一点。这个很接近: https://github.com/google/grafika
但它只支持视频。没有音频部分。非常感谢。
最佳答案
没关系。我找到了。完整代码在这里: https://github.com/saki4510t/AudioVideoRecordingSample
此示例记录表面和音频。您当然需要添加适当的权限来录制音频,并使用相机等...
该示例使用 CameraView 写入 MediaVideoRecorder inputsurface。因此,它写入了两次。首先到预览屏幕(用户看到的内容),然后到录制输入表面。当然如果你有自己的渲染,你可以禁用相机部分并在MediaVideoRecorder表面上编写自己的GL命令,然后在MediaVideoRecorder上调用frameAvailableSoon。
关于用于输入表面和音频的 Android MediaMuxer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49887487/