使用安卓MediaRecorder录制音频时,多个音频文件的合并操作

      使用MediaRecorder录制音频时,由于没有提供暂停的API,所以在暂停操作时,只能先进行保存操作,然后再继续录制下一段,最后再对多个音频文件的合并操作。

MediaRecorder提供的音频输出格式有RAW_AMR,AMR_NB,AMR_WB,3GP,MPG4这些格式。在使用ffmpeg做一些多媒体资源的转换操作的时候,多多音频的采样率有要求。其中RAW_AMR和AMR_NB的采样率为8KHZ,而AMR_WB为16KHZ。我在实际中与到的情况是:使用ffmpeg来生成MP4文件时,8KHZ的采样率的音频不能进行MP4的转码操作,但使用使用16KHZ的采样率成功转码

      由于使用MediaRecorder录制只能是分段录制,所以最关键的操作就在于,最后对多个音频文件的合并操作,这一步操作最重要的就是去掉出第一个文件之外的头文件信息,其中RAW_AMR,AMR_NB的头文件长度固定为6个字节,AMR_WB的头文件长度为9个字节。知道头文件长度之后,剩下的操作就简单多了。

    

示例代码:

<script src="https://code.csdn.net/snippets/758781.js"></script>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值