微信小程序录音文件保存,播放

最近做微信小程序需要把录音文件保存起来然后在另一个地方再播放,录音用的是wx.startRecord接口返回的是录音文件的临时路径,开始以为是和选择图片保存图片没什么两样的操作,结果和后端同事一起折腾了好半天,他都给写好了base64转码的接口,最后还是播放不出来,到网上搜了一圈发现有同道中人发帖写过相同的情况,处理过程如下:

录音过程:
wx.startRecord({
      success: res => {
          const tempFilePath = res.tempFilePath;
          wx.uploadFile({
              url: 'xxxxxxxx',//开发者文件上传地址
              filePath: tempFilePath,
              name: 'file',
              success: res => {
                  const url = JSON.parse(res.data);//将这个url提交保存
              },
         });
    },
    fail: res => {
        showToast.fail('录音失败');
    },
});
 setTimeout(() => {
       wx.stopRecord();
}, 600000);                                                      
播放音频:
小程序播放的音频必须是音频文件,不是文件url
所以首先要将音频下载再进行播放。
wx.downloadFile({
      url: ‘xxxxxx’, //音频文件url                  
      success: res => {                
            if (res.statusCode === 200) {                
                  wx.playVoice({              
                       filePath: res.tempFilePath,             
                       duration: this.recordTime,           
                        complete: () => {           

                        }
                  });
             }
      }
});
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容