Android MediaMuxer合成音视频,可暂停续录

项目中录制视频,要求拍摄中可暂停拍摄,这样之前使用的MediaRecord就不支持了,mediaRecord一旦调用stop状态就会重新初始化,想着或许可以将多个视频文件合并成一个,但是通过ffmpeg合并,因为项目中并没有对拍摄时间进行限制,可能每个视频都几百兆,这样合并起来效率是一个问题。后来看到一个博客利用MediaMuxer,暂停后通过变量控制跳过暂停后的帧数可以达到效果,就是说暂停后不再往视频文件中写入数据

mMediaMuxer.writeSampleData(trackIndex, byteBuf, bufferInfo) 

github:https://github.com/luXiuKun/luxkCamera

流程大致如图,盗的图

Android MediaMuxer合成音视频,可暂停续录_第1张图片

你可能感兴趣的:(android)