评论

小程序录音(getRecorderManager)和播放录音(createInnerAudioContext)的踩坑记录

录音和播放相关api,bug和解决方案的记录

第一个坑


  • 记录日期: 2019-10-16
  • 手机型号: 小米 mix2
  • 微信版本: 7.0.7


问题描述


使用默认的format,即aac格式,在真机上返回的音频格式为m4a


代码


const recorderManager = wx.getRecorderManager();
recorderManager.start();
recorderManager.onStop(res => {
	console.log(res);
});


解决方案



  • 后台支持m4a格式

  • 使用 format: ‘mp3’




第二个坑 《不能播放》 (通过 wx.downloadFile 解决)


  • 记录日期: 2019-10-16
  • 手机型号: 小米 mix2
  • 微信版本: 7.0.7


问题描述


安卓手机 通过录音api生成的音频文件,上传至自己后台后,再使用createInnerAudioContext api播放时,报错 format error


代码


cosnt innerAudioContext = wx.createInnerAudioContext();
innerAudioContext.src = recordAudioSrc;
innerAudioContext.play();
innerAudioContext.onError(err => {
	console.log('播放错误... ', res);
});


解决方案


最后一次编辑于  07-14  
点赞 2
收藏
评论

5 个评论

  • 渎
    07-28

    马克,感谢楼主分享经验

    07-28
    赞同
    回复
  • 你头发掉了
    你头发掉了
    07-14

    我也进行 wx.downloadFile  进行 文件下载了 , 用的临时路径 , ios 显示 系统错误, 安卓显示 .unknown

    07-14
    赞同
    回复 1
  • 你头发掉了
    你头发掉了
    07-14

    楼主 请问一下 后台是不是也要配置 header 的

    07-14
    赞同
    回复
  • Charlie Li
    Charlie Li
    06-04

    请问,小程序可以实现一边录音一边播放录音吗,谢谢

    06-04
    赞同
    回复 5
    • 軍亜~
      軍亜~
      06-04
      肯定可以啊,  录音和播放是独立的api, 录音用的是麦克风, 播放用的扬声器, 不过为什么有这种需求? 不是会录到播放的音频么?
      06-04
      回复
    • Charlie Li
      Charlie Li
      06-05回复軍亜~
      您好,我们这边做语音训练,需要一边录音一边能听到刚刚说的内容(可以控制延时),这个小程序该怎么做呢?谢谢。
      06-05
      回复
    • Charlie Li
      Charlie Li
      06-05回复軍亜~
      还有一块是语音识别,但是将录音(mp3)上传到后端,然后后端接收并保存下来后,录音文件播放不了,这个还需要怎么做呢,谢谢。
      06-05
      回复
    • 軍亜~
      軍亜~
      06-09回复Charlie Li
      《一边录音一边能听到刚刚说的内容》 由于小程序的录音是在结束后才生成音频文件,所以边录边听应该不能实现,个人建议是录完后再播放录好的音频
      06-09
      回复
    • 軍亜~
      軍亜~
      06-09回复Charlie Li
      语音识别我没有做过,mp3文件播放不了,是提示什么错?是文件损坏的话,可以让后台检查下接受音频文件的代码
      06-09
      回复
  • Zzz
    Zzz
    03-15

    大哥,你的MP3文件下载下来之后是mpga格式的吗???然后播放的时候,是用的下载之后的临时文件地址吗??为什么我的没有声音呢

    03-15
    赞同
    回复 1
    • 軍亜~
      軍亜~
      03-16
      下载下来的格式我没注意,用的是download接口返回的临时地址,播放没有声音,可以看下相关api的fail回调
      03-16
      回复
登录 后发表内容