MediaRecorder 录制视频不支持暂停续录的问题

之前写过一个Demo实现了MediaRecorder的暂停录制问题,后来很多人加了我的QQ,所以今天写了这篇博客和大家一起交流分享。

首先,我研究过android的MediaRecorder的API是不支持暂停续录的,所以,客官一定要用MediaRecorder的源生API去实现暂停续录,可以直接点击关闭该页面按钮。

我这里使用的方法是对视频的拼接,思路是当时看国外的stackoverflow ,一个网友提供的。


MediaRecorder的使用这里不在说明,API解释得很清楚了。不过说明下,客官可以使用setProfile去设置录制的视频质量,不过这时不能再设置setOutputFormat、setAudioEncoder、setVideoEncoder属性,否则可能导致一些不兼容问题,可以在setOnErrorListener中监听录制过程出现的问题。


现在着重讲如何拼接,以及在拼接过程如何尽量避免卡顿问题。

每次录制都独立生成一个视频文件,如果是第一次点暂停,此时生成文件A,不做处理;如果是第二次点暂停,此时有文件A和文件B,也不做处理;当再次录制时,录制过程合并A、B文件为C文件,同时删除A、B文件。这时用户再点击暂停时,生成这阶段的D文件,以及上次留下的C文件。也就是最多只能有两个文件,最后客官点击停止录制时,合并最后两个文件就好了。


拼接的话,使用的是isoviewer-1.0-RC-28.jar,核心代码为








最后,其实用这种拼接的方式,个人在体验上,觉得不错,目前没遇到过什么大问题,但自己觉得其实还是不大完善的,只是坑的MediaRecorder不支持暂停续录能力,苦命的程序员只能另寻出路。个人建议自定义的录制视频功能尽量不要使用MediaRecorder,如果用了,那目前我只能想到用这篇文章的方式去做暂停续录,如果客官们有什么好的解决方案,可以一起交流哈~

联系方式:QQ  1079286062

MediaRecorder

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值